Buffer of Thoughts: Thought-Augmented Reasoning with Large Language Models

📄 arXiv: 2406.04271v2 📥 PDF

作者: Ling Yang, Zhaochen Yu, Tianjun Zhang, Shiyi Cao, Minkai Xu, Wentao Zhang, Joseph E. Gonzalez, Bin Cui

分类: cs.CL

发布日期: 2024-06-06 (更新: 2024-10-14)

备注: NeurIPS 2024 Spotlight. Project: https://github.com/YangLing0818/buffer-of-thought-llm

🔗 代码/项目: GITHUB


💡 一句话要点

提出Buffer of Thoughts (BoT),增强LLM推理的准确性、效率和鲁棒性。

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 大型语言模型 推理增强 思想缓冲区 知识复用 元学习

📋 核心要点

  1. 现有LLM在复杂推理任务中面临准确性、效率和鲁棒性挑战,需要更有效的推理方法。
  2. BoT通过构建和维护一个包含通用“思想模板”的元缓冲区,实现高效的知识复用和推理结构自适应。
  3. 实验表明,BoT在多个推理任务上显著优于现有方法,同时降低了计算成本,并提升了模型泛化能力。

📝 摘要(中文)

本文提出了一种新颖且通用的思想增强推理方法Buffer of Thoughts (BoT),旨在提高大型语言模型(LLM)的准确性、效率和鲁棒性。具体而言,我们提出了元缓冲区(meta-buffer)来存储一系列信息丰富的高级思想,即思想模板(thought-template),这些模板是从各种任务的解决过程中提炼出来的。然后,对于每个问题,我们检索相关的思想模板,并自适应地将其与特定的推理结构进行实例化,以进行高效的推理。为了保证可扩展性和稳定性,我们进一步提出了缓冲区管理器(buffer-manager)来动态更新元缓冲区,从而随着解决的任务数量的增加,增强元缓冲区的容量。我们在10个具有挑战性的推理密集型任务上进行了广泛的实验,与之前的SOTA方法相比,取得了显著的性能提升:在Game of 24上提升了11%,在Geometric Shapes上提升了20%,在Checkmate-in-One上提升了51%。进一步的分析表明,我们的BoT具有卓越的泛化能力和模型鲁棒性,同时平均只需要多查询提示方法(例如,思想树/图)12%的成本。值得注意的是,我们发现我们的Llama3-8B+BoT有潜力超越Llama3-70B模型。我们的项目可在https://github.com/YangLing0818/buffer-of-thought-llm上找到。

🔬 方法详解

问题定义:论文旨在解决大型语言模型(LLM)在复杂推理任务中存在的准确性、效率和鲁棒性问题。现有的方法,如思维链(Chain-of-Thought, CoT)和思维树(Tree-of-Thoughts, ToT),虽然能够提升推理能力,但往往需要大量的计算资源和提示工程,且泛化能力有限。

核心思路:BoT的核心思路是构建一个“思想缓冲区”,存储从不同任务中学习到的通用推理模式(思想模板)。当遇到新的推理任务时,BoT首先检索相关的思想模板,然后根据具体问题自适应地实例化这些模板,从而实现高效且鲁棒的推理。这种方法避免了每次都从头开始推理,提高了效率和泛化能力。

技术框架:BoT的整体框架包含三个主要模块:1) 元缓冲区(Meta-Buffer):存储从不同任务中提取的通用思想模板。2) 思想模板检索与实例化:根据输入问题,从元缓冲区中检索相关的思想模板,并将其自适应地实例化为具体的推理结构。3) 缓冲区管理器(Buffer-Manager):动态更新元缓冲区,添加新的思想模板或优化现有模板,以提高其覆盖范围和质量。

关键创新:BoT的关键创新在于引入了“思想模板”的概念,并将这些模板存储在一个可动态更新的元缓冲区中。与传统的CoT或ToT方法相比,BoT能够更好地复用知识,避免重复推理,从而提高效率和泛化能力。此外,缓冲区管理器的引入保证了BoT的可扩展性和稳定性。

关键设计:元缓冲区的设计包括思想模板的表示方式(例如,使用自然语言描述推理步骤或规则),以及模板之间的相似度度量方法(用于检索相关模板)。缓冲区管理器使用一定的策略(例如,基于任务难度或模板使用频率)来决定何时添加、删除或更新元缓冲区中的模板。具体的损失函数和网络结构取决于LLM的选择和任务的特点。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,BoT在10个具有挑战性的推理任务上取得了显著的性能提升。例如,在Game of 24上提升了11%,在Geometric Shapes上提升了20%,在Checkmate-in-One上提升了51%。更重要的是,Llama3-8B+BoT的性能甚至可以超越Llama3-70B模型,这表明BoT能够显著提升LLM的推理能力,并降低对模型规模的需求。

🎯 应用场景

BoT可应用于各种需要复杂推理能力的场景,如数学问题求解、逻辑推理、游戏策略制定、代码生成等。该方法能够提升LLM在这些领域的性能和效率,并降低计算成本。未来,BoT有望成为一种通用的推理增强技术,推动LLM在更广泛的实际应用中发挥作用。

📄 摘要(原文)

We introduce Buffer of Thoughts (BoT), a novel and versatile thought-augmented reasoning approach for enhancing accuracy, efficiency and robustness of large language models (LLMs). Specifically, we propose meta-buffer to store a series of informative high-level thoughts, namely thought-template, distilled from the problem-solving processes across various tasks. Then for each problem, we retrieve a relevant thought-template and adaptively instantiate it with specific reasoning structures to conduct efficient reasoning. To guarantee the scalability and stability, we further propose buffer-manager to dynamically update the meta-buffer, thus enhancing the capacity of meta-buffer as more tasks are solved. We conduct extensive experiments on 10 challenging reasoning-intensive tasks, and achieve significant performance improvements over previous SOTA methods: 11% on Game of 24, 20% on Geometric Shapes and 51% on Checkmate-in-One. Further analysis demonstrate the superior generalization ability and model robustness of our BoT, while requiring only 12% of the cost of multi-query prompting methods (e.g., tree/graph of thoughts) on average. Notably, we find that our Llama3-8B+BoT has the potential to surpass Llama3-70B model. Our project is available at: https://github.com/YangLing0818/buffer-of-thought-llm