介绍了一种名为“Buffer of Thoughts”(BoT)的新型思维增强方法,旨在提高大型语言模型(LLMs)在各种任务上的准确性、效率和鲁棒性。具体来说,BoT的设计思路如下:
-
思维模板(thought-template):开发了一种名为meta-buffer的结构,用于存储从解决各种任务的过程中提炼出的一系列信息丰富的高级思维模板。这相当于为语言模型提供了一个可根据需要调取的“思维库”。
-
实例化和应用:对于每个特定的问题,BoT能够检索到一个相关的思维模板,并根据该问题的具体需求灵活地实例化这个模板,进而以一种高效的方式进行推理解决。
-
动态更新(buffer-manager):为了保证这个系统的可扩展性和稳定性,提出了一个动态更新机制(称为buffer-manager),用于动态更新meta-buffer。这意味着随着解决更多任务,meta-buffer的容量也会得到提升。
通过在10个需要强推理能力的挑战性任务上的广泛实验,BoT方法取得了显著的性能提升,相比于之前的最先进技术(State Of The Art,简称SOTA)方法,在“24点游戏”上提高了11%,在“几何形状”任务上提高了20%,在“一步将死”(Checkmate-in-One)任务上提高了51%。
进一步的分析展示了BoT的卓越的泛化能力和模型鲁棒性,而且平均只需要多查询提示方法(例如,思维树/图)成本的12%。值得注意的是,结合BoT的Llama3-8B模型有潜力超越Llama3-70B模型。他们的项目代码和更多细节可以在GitHub上找到。
在各种推理任务中展示了令人印象深刻的性能。除了通过扩大模型规模来提高推理性能外,还有更多有效的提示方法可以进一步增强LLMs的功能和性能。
- 单查询推理:通常专注于提示工程,其推理过程可以在单一次查询内完成,例如CoT,它在输入查询后附加“让我们一步一步思考”以生成理由,从而提高推理准确性,以及Few-shot Prompting ,它提供与任务相关的示例来帮助生成答案。
- 多查询推理:这些方法侧重于利用多次LLM查询来引出不同的可能推理路径,从而将复杂问题分解成一系列更简单的子问题,例如Least-to-Most ,ToT 和GoT。
然而,这两类方法都面临一些限制:(1) 单查询推理通常需要事先假设或相关的推理过程示例,这使得手工为每个任务设计它们变得不切实际,因而缺乏通用性和泛化能力;(2) 由于推理路径的递归扩展,多查询推理在为每个特定任务寻找唯一的内在结构时,通常计算量很大;(3) 单查询和多查询推理过程都受限于其设计的示例和推理结构,并且它们忽略了从先前完成的任务中提取出的一般性和高层次指导原则或思维,这些思维对于解决类似问题时提高效率和准确性是有用的。
为了解决这些限制,提出了"思维缓冲区"(Buffer of Thoughts,BoT),这是一个新颖且多功能的思维增强推理框架,旨在提高LLMs在各种任务中的推理准确性、效率和鲁棒性。具体来说,设计了一个轻量级的高层次思维库meta-buffer,这个库存储了一系列通用的思维模板(thought-template),这些思维是从不同的问题解决过程中提炼出来的,并且可以在任务之间共享。然后,对于每个问题,检索相关的思维模板,并通过特定的推理结构实例化它,以进行高效的思维增强推理。为了保证BoT的可扩展性和稳定性,进一步提出了buffer-manager,用来动态更新meta-buffer,这有效地增强了meta-buffer的容量,随着解决更多任务而不断提高。
方法有三个关键优势:
- 提高准确性:通过共享的思维模板,可以自适应地实例化高级思维来解决不同的任务,从而提高推理准确性,消除了从头构建推理结构的需要;
- 推理效率:思维增强推理可以直接利用信息丰富的历史推理结构进行推理,而不需要复杂的多查询过程,从而提高了推理效率;
- 模型鲁棒性:从思维检索到思维实例化的过程就像人类的思维过程,使得LLMs能够一致地解决类似的问题,从而显著增强了方法的模型鲁棒性。实验证明,思维缓冲区在多种任务上显著提高了精度、效率和鲁棒性。贡献总结如下:
- 提出了一种新颖的思维增强推理框架Buffer of Thoughts(BoT),用于提高基于LLM的推理的准确性、效率和鲁棒性。
- 提出了meta-buffer,用于存储从不同问题中提炼出来的信息丰富的高层次思维,并自适应地实例化每个思维模板以解决每个特定任务。
- 设计了buffer-manager,用于从各种解决方案中提炼思维模板,并在解决更多任务时不断提高meta-buffer的容量。
- 在10个具有挑战性的推理密集型任务上进行了广泛的实验。BoT在前SOTA方法上取得了显著的性能提升:在“24点游戏”上提升了11%,在“几何形状”任务上提升了20%,在“一步将死”任务上提升了51%,而平均只需多查询提示方法成本的12%。
增强检索的大型语言模型:增强检索的(大型)语言模型被介绍为一种减轻幻觉现象和提高语言模型输出质量的解决方案。当面对一个输入问题时,增强检索的LLM首先查询一个拥有十亿级别令牌的外部数据库,以检索一部分文本语料帮助生成最终回答。值得注意的是,相比于传统的LLM,增强检索的LLM在使用更少的参数的情况下实现了优越的问答性能,并且已在多种下游任务中得到了应用,包括多模态生成和生物医学应用。在本文中,我们建立了一种新的检索数据库分类,称为"meta-buffer",它包含了一系列的高级思考而不是特定实例,旨在普遍解决基于LLM的推理任务。
基于提示的大型语言模型推理:提示技术显著提高了LLM的算术和常识推理能力。链式思考(CoT)提示及其变体,如Least-to-Most、Decomposed Prompting和Auto-CoT——提示LLM将复杂问题分解成更简单的子任务并系统地解决它们,然后总结出最终答案。许多研究已经证明了这些提示方法在广泛的任务和基准测试中的有效性。像思维树(Tree-of-Thought)和思维图(Graph-of-Thought)这样的创新进一步推进了这个领域,通过探索动态的、非线性的推理路径来扩展LLM的启发式能力。然而,它们遭受了资源需求增加和时间复杂度提高的问题,依赖于手工提示制作,并且通常是为特定任务类型量身定制的。最近的元提示方法利用同一种对各种任务不可知的提示形式,并递归地指导单个LLM适应性地回答不同的输入查询。然而,如此长的元提示可能需要相当大的上下文窗口,并且这些方法未能利用历史上的信息性指导原则或思考来处理潜在的类似任务。
类比推理:类比推理是自然语言推理的一种有用技巧。近期的研究表明,LLM可以像人类一样进行类比推理。例如,Analogical Prompting和Thought Propagation提示LLM自我生成一组类似的问题,然后利用这些类似问题的结果来生成输入问题的解决方案。然而,自行探索问题的具体解决方案可能引入额外的噪声,并导致错误累积。最近的Thought-Retriever使用解决过去用户问题时生成的中间思维来处理类似的查询,但它只专注于文本理解/生成而不是一般的推理问题。因此,仍然缺乏一种更高层次和一般性的类比方法来解决LLM的复杂推理问题。