项目简介
概述
Tree-of-Thought(思维树,以下简称ToT)引导技术是一种新兴的方法,通过借鉴思维树框架中的概念,扩展并提升了已有的Chain-of-Thought(链式思维,以下简称CoT)引导技术,从而使大型语言模型(如ChatGPT)展现出更优秀的推理能力。该技术让大型语言模型能够自行纠正错误并逐渐积累知识。
例如,一个ToT提示可以让ChatGPT 3.5回答以前只有ChatGPT 4才能回答的问题。
大型语言模型面临的复杂问题
大型语言模型在回答一些复杂问题时常常会出现问题。比如以下问题会对模型带来挑战:
例子:
- Bob在客厅,他走到厨房,带着一个杯子。他把一个球放进杯子里,然后带着杯子走到卧室。他把杯子倒置,接着去了花园。他把杯子放在了花园里,然后去了车库。那么,球在哪里?
正确答案是球在卧室。以下是模型的回答情况:
- ChatGPT 3.5:球在花园。❌
- ChatGPT 4:球在卧室。✅
链式思维引导(CoT)
链式思维引导(CoT)是一种鼓励大型语言模型阐明其思路的广泛认可的方法,这样可以增加获得正确答案的可能性。其基础源自于2022年1月的一篇论文,提出了通过CoT引出大型语言模型的推理能力。该技术通常通过在提示中加入“仔细且逻辑地思考,解释你的答案”这样的引导语来实现。
思维树框架
最近出现了多篇论文和Python资源库,引入了思维树(ToT)的概念。其核心思想是提供给大型语言模型探索多分支推理的机会,并在过程中进行自我评估。据研究表明,这种方法对某些问题非常有效。
思维树引导
目前已有的关于思维树框架的论文大多是通过多次调用大型语言模型来实现,通常使用Python。然而,链式思维的一个主要优点就是可以通过单句提示在ChatGPT中实现。这让人思考:我们是否可以通过利用ToT风格的提示来改进CoT的结果?
下面是一个ToT提示示例:
“想象三个不同的专家在回答这个问题。所有专家将写下他们思考的每一步,然后分享。当任何一位专家意识到错误时就退出。”
通过这样的提示,ChatGPT 3.5 correctly answered the question this time.
优劣与未来展望
尽管目前的研究尚未进行广泛测试,但初步结果显示出ToT提示比传统的CoT提示有更好的表现。未来,这一技术有望通过不断改进提示达到更精简的响应。
在组织决策中的多方协作过程也可被模仿,在使用上增加代理人将使这一模型更强大,提供不同思维方式的广度。通过合作、服务及促进等方式,借助多种不同调整的大型语言模型,能够模拟更高效的组织结构特点,如等级制度或冗余等。
致谢与引用
该项目引用了多篇学术论文及资源库,如《链式思维引导大型语言模型推理》、《大型语言模型指导的思维树》等,详细信息可以通过项目主页访问。若取用该代码,请按以下格式引用本仓库:
@misc{tree-of-thought-prompting,
title = {Using Tree-of-Thought Prompting to boost ChatGPT's reasoning},
author = {Dave Hulbert},
year = 2023,
month = may,
journal = {GitHub repository},
publisher = {Zenodo},
doi = {10.5281/ZENODO.10323452},
url = {https://doi.org/10.5281/zenodo.10323452},
howpublished = {\url{https://github.com/dave1010/tree-of-thought-prompting}}
}