Motivated by this, we present our tool creation framework, CREATOR, which exploits LLMs’ ability to create tools and do rectifications based on current settings before answering the specific problem. As illustrated in Figure 1, we present the differences in pipelines between CREATOR and a general tool-using framework.
Related Work
1. Large Language Models (LLMs) have gained significant attention due to their performance in handling various NLP tasks. 2. LLMs can generate high-quality texts and codes. 3. Researchers focus on how to effectively prompt LLMs to generate reasoning to solve problems. 4. Some researchers use case examples to propose chain-of-thought prompting. 5. Other researchers extend prompting to zero-shot settings. 6. Some researchers focus on using instructions to guide LLMs’ output and align behaviors with human expectations. 7. These methods can be used to design instruction-following data from existing datasets. 8. Researchers use instruction-tuning method to boost LLMs’ performances. 9. Language models can be used in conjunction with external tools to help boost their ability. 10. These tools can include scratch pad, search engine, QA system, and calculator. 11. More recent studies integrate LLMs’ tool-using abilities into a pipeline to showcase their potential in task planning, tool calling, and result synthesis. 12. Reasoning with programs (or codes) is an emerging field in NLP for leveraging programs to do complicated computational reasoning. 13. The execution results from generated code can be used for LLM’s further use. 14. Code generation in reasoning can achieve state-of-the-art performance on various math datasets. 15. Researchers incorporate code interpreters (e.g. Python interpreter) as external tools. 16. In CREATOR, we use code as the medium for tool creation instead of an external tool for calling. 17. Our framework excels over PoT as we devise the tool creation stage, code rectification stage, and disentangle the logic in complex reasonings.
大规模语言模型(LLMs)已在外部API的使用上取得了显著的进步,这些API可以作为各种任务的工具。然而,它们利用工具的能力受到适合API的可用性和隐含推理的不稳定性的限制,尤其是在同时进行计划推理和实际计算时。为了克服这些局限性,我们提出了CREATOR,一个新颖的框架,使LLMs能够通过文档和代码实现来创建自己的工具。CREATOR将LLM的能力分解为两个不同的阶段:抽象工具创建和具体决策执行,从而提高了LLM的性能。我们在两个已建立的基准上评估CREATOR:MATH,包括具有挑战性的数学竞赛问题,以及TabMWP,包括用于解决问题的各种表格内容。值得注意的是,CREATOR在这两个基准上的表现大大优于现有的链式思维(CoT)、程序式思维(PoT)和工具使用基线。此外,我们提出了一个新的数据集Creation Challenge,包括2K个不同的问题,以突出LLMs工具创建能力在有效解决这些问题方面的必要性和好处。进一步的研究发现,将LLMs作为工具创造者可以促进知识的转移,LLMs在工具创建能力方面表现出不同的水平,使它们能够灵活地应对各种情况。我们的研究为充分利用LLMs的潜力,朝着真正智能和适应性的AI系统迈进开辟了新的途径。
Introduction
Motivated by this, we present our tool creation framework, CREATOR, which exploits LLMs’ ability to create tools and do rectifications based on current settings before answering the specific problem. As illustrated in Figure 1, we present the differences in pipelines between CREATOR and a general tool-using framework.
Related Work
2. LLMs can generate high-quality texts and codes.
3. Researchers focus on how to effectively prompt LLMs to generate reasoning to solve problems.
4. Some researchers use case examples to propose chain-of-thought prompting.
5. Other researchers extend prompting to zero-shot settings.
6. Some researchers focus on using instructions to guide LLMs’ output and align behaviors with human expectations.
7. These methods can be used to design instruction-following data from existing datasets.
8. Researchers use instruction-tuning method to boost LLMs’ performances.
9. Language models can be used in conjunction with external tools to help boost their ability.
10. These tools can include scratch pad, search engine, QA system, and calculator.
11. More recent studies integrate LLMs’ tool-using abilities into a pipeline to showcase their potential in task planning, tool calling, and result synthesis.
12. Reasoning with programs (or codes) is an emerging field in NLP for leveraging programs to do complicated computational reasoning.
13. The execution results from generated code can be used for LLM’s further use.
14. Code generation in reasoning can achieve state-of-the-art performance on various math datasets.
15. Researchers incorporate code interpreters (e.g. Python interpreter) as external tools.
16. In CREATOR, we use code as the medium for tool creation instead of an external tool for calling.
17. Our framework excels over PoT as we devise the tool creation stage, code rectification stage, and disentangle the logic in complex reasonings.
Design of CREATOR
* CREATOR 框架利用 LLM 的工具创建能力通过引入特殊模块。
* 该框架包括四个阶段:创建、决策、执行和纠正。
* 在创建阶段,我们提供明确的指令和演示实例,以指导 LLM 生成与解决问题相关的适当工具。
* 创建工具涉及两个关键方面:文档和实现。
* 文档提供关于工具的效用、输入和输出的信息,而实现涉及实现工具的编码。
* 在第二个阶段,即决策阶段,解释器根据文档和代码实现生成决策,并在需要时进行纠正。
* 可以通过抽象思维能力创建工具,以减轻后来阶段的推理负担。
* 这种方法可以显著减少后期阶段的推理负担,导致更可重用、可测试的工具,并可能提高性能。
Experiments
Base Model. 我们选择 ChatGPT(gpt-3.5-turbo)作为 CREATOR 的基础模型,因为其在代码生成、决策制定和逻辑推理方面具有卓越的能力。为了确保公平性,我们还将在所有其他设置中使用 ChatGPT 作为基础模型,包括链式思维(CoT)、程序思维(PoT)和工具使用基线。所有实验的最大生成长度都设置为 512,选择温度为 0.3,鼓励确定性生成同时保持一定程度的多样性,特别是在创建工具的过程中。
Dataset. 对于 MATH 和 TabMWP 数据集,我们都在测试集上对所有问题进行了数值答案(例如整数或分数)。这是因为其他答案形式(如表达式和分数)难以通过自动测试,程序的输出容易给出分数值,这进一步增加了自动评估的复杂性。然而,我们应用的测试集能够涵盖大约 80% 的问题,并且保持高多样性,因此我们认为我们的结果是代表性的。
TabMWP 数据集涵盖了从一年级到八年级的 wide range of table information and problems of varying difficulty levels,涵盖数学竞赛问题,包括代数、计数和概率、几何、intermediate algebra、number theory、prealgebra 和 pre-calculus。每个领域都单独测试,计算加权平均分作为最终指标。对于 Creation Challenge 数据集,我们评估了 CREATOR 在所有 2K 个数据实例上的性能,并探讨了工具创建提示对 LLM 性能的影响。
Baselines. 我们将 CREATOR 与三种基线进行比较,以证明其有效性:标准 LLM(w/o CoT 和 w/ CoT):在 CoT 设置中,LLM 采用顺序推理以逐步解决这些问题。我们还包括没有 CoT 的标准 LLM 基线,其中 LLM 直接生成答案而无需运用推理过程。PoT:该 LLM 利用程序通过问题逐步推理。PoT 可以与 CoT 结合以提供答案。为了确保重点关注工具创建阶段,我们还将校正模块纳入 PoT,使其成为更强的基线。
Tool Use: LLM 利用 WolframAlpha API 作为问题解决工具。WolframAlpha API 是一种专用数学计算工具。由于所有测试数据都需要某种程度的数值计算,使 LLM 能够利用 WolframAlpha 作为外部工具使用,对 LLM 的外部工具使用作为公平基线。
Further Discussions
* 本文介绍了语言模型(LLM)的工具创建能力,并通过使用案例研究展示了其灵活性和较低的推理负担。
* 工具创建的主要目的是可重用性,通过将知识概念的抽象表示,实现一个工具可以帮助解决具有相同核心概念的各种场景中的问题。
* 例如,一个用于情感分析的关键词提取工具可以用于文档分类和主题建模等场景。
* 我们构建了一个由 300 个问题组成的较小数据集,以测试知识转移能力,并将这 300 个问题分为 100 组,每组三个问题共享相同的核心知识概念。
* 我们手动编写种子数据,包括五个数据点的格式,以及从这些种子中创建的示例数据。
* 我们使用 ChatGPT 作为基础 LLM,并保持所有详细设置与之前相同。
* 我们首先在正常创造者框架下测试所有问题,然后测试在某个问题场景中创建的正确工具是否可以应用于其他两个场景,并再次测试 LLM 的性能。
* 我们只计算 \”Pass@1\” 精度。
* 结果分析显示,通过应用转移工具,准确率从 63.0% 提高到 78.3%。
* 统计结果见表 5。
* 我们将工具创建分为三个不同级别,以提供未来发展的指导和建议。
* 这些级别展示了 LLM 如何利用现有工具和 API 创建满足不同需求的工具。
Conclusions and Future Work