大规模语言模型(LLMs)已在外部API的使用上取得了显著的进步,这些API可以作为各种任务的工具。然而,它们利用工具的能力受到适合API的可用性和隐含推理的不稳定性的限制,尤其是在同时进行计划推理和实际计算时。为了克服这些局限性,我们提出了CREATOR,一个新颖的框架,使LLMs能够通过文档和代码实现来创建自己的工具。CREATOR将LLM的能力分解为两个不同的阶段:抽象工具创建和具体决策执行,从而提高了LLM的性能。我们在两个已建立的基准上评估CREATOR:MATH,包括具有挑战性的数学竞赛问题,以及TabMWP,包括用于解决问题的各种表格内容。值得注意的是,CREATOR在这两个基准上的表现大大优于现有的链式思维(CoT)、程序式思维(PoT)和工具使用基线。此外,我们提出了一个新的数据集Creation Challenge,包括2K个不同的问题,以突出LLMs工具创建能力在有效解决这些问题方面的必要性和好处。进一步的研究发现,将LLMs作为工具创造者可以促进知识的转移,LLMs在工具创建能力方面表现出不同的水平,使它们能够灵活地应对各种情况。我们的研究为充分利用LLMs的潜力,朝着真正智能和适应性的AI系统迈进开辟了新的途径。
Introduction
- 近年来,大型语言模型(LLMs)的发展取得了显著的进步,其中包括 GPT-3(Brown 等,2020)、Codex(Chen 等,2021)、PaLM(Chowdhery 等,2022)、LLaMA(Touvron 等,2023)、Chat-GPT(OpenAI,2022)和最近的 GPT-4(OpenAI,2023)。这些模型在上下文学习、代码生成和各种 NLP 任务方面表现出色,将 LLM 的潜力推向了人工通用智能(Bubeck 等,2023)。尽管取得了这些巨大的成功,但现有的 LLM 仍然存在一些限制,包括无法识别或应对最新信息、经常无法提供清晰准确的数学结果,以及在不稳定地推理长链逻辑的情况下表现不稳定(Trivedi 等,2022;Komeili 等,2022;Patel 等,2021;Hendrycks 等,2021;Lu 等,2022b)。为解决这些问题,一些研究 line of research 已经为 LLM 配备了外部工具,以减轻它们的记忆负担并提高它们的专业知识(Qin 等,2023)。例如,将问答系统或网络搜索引擎等工具集成到 LLM 中,使它们能够在解决问题时学会何时何地访问外部资源(Nakano 等,2021;Schick 等,2023)。最近的研究还结合了额外的外部工具,例如 GitHub 资源、神经网络模型(如 Huggingface 库)、代码解释器(如 Python 解释器)等(Gupta 和 Kembhavi,2022;Surís 等,2023;Shen 等,2023;Liang 等,2023;Lu 等,2023)。这些工具需要 LLM 在利用工具解决复杂问题之前给出详细的计划。然而,工具增强的 LLM 仍然面临某些挑战(Chen 等,2022;Gupta 和 Kembhavi,2022;Schick 等,2023;Surís 等,2023),我们特别关注以下方面:(1)大多数现有工作倾向于关注有限数量的工具,而潜在的新任务范围几乎无限。因此,当面对新类型的问题时,很难找到一个适合其解决方案的现有工具。(2)语言模型用于确定最佳利用工具的当前推理过程固有地复杂。它涵盖了整个任务处理过程中的广泛规划,从而给模型造成了巨大的认知负担,并需要付出相当的学习成本。(3)关于工具使用的当前管道缺乏一个特定和自动的错误处理机制。这使得框架的准确性和鲁棒性有待改进。在本文中,我们试图从新颖的角度解决这个问题:而不是让 LLM 成为工具的使用者,我们使它们成为工具的创建者,以更准确、更灵活地解决特定问题。
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.
Design of CREATOR
- 重点:
* CREATOR 框架利用 LLM 的工具创建能力通过引入特殊模块。
* 该框架包括四个阶段:创建、决策、执行和纠正。
* 在创建阶段,我们提供明确的指令和演示实例,以指导 LLM 生成与解决问题相关的适当工具。
* 创建工具涉及两个关键方面:文档和实现。
* 文档提供关于工具的效用、输入和输出的信息,而实现涉及实现工具的编码。
* 在第二个阶段,即决策阶段,解释器根据文档和代码实现生成决策,并在需要时进行纠正。
* 可以通过抽象思维能力创建工具,以减轻后来阶段的推理负担。
* 这种方法可以显著减少后期阶段的推理负担,导致更可重用、可测试的工具,并可能提高性能。
Experiments
- 为了评估 CREATOR 的有效性,我们在两个 established 基准上进行了实验:MATH(Hendrycks 等人)和 TabMWP(Lu 等人,2022a)。虽然 CREATOR 适用于各种需要工具创建的任务,但我们特别考虑这两个数据集作为代表,以展示我们框架的优势。此外,我们还对 newly introduced 数据集,即 Creation Challenge 进行了实验,该数据集包含 2K 个 diverse 问题,无法使用现有工具或代码包来解决。这进一步证明了 LLM 的工具创建能力。
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
- 总之,我们提出了工具创建(tool creation)这一概念,并实验性地设计了一个工具创建框架 CREATOR,以成功利用大型语言模型的工具创建能力解决各种问题解决场景。通过区分 LLMs 的抽象和具体推理能力,CREATOR 使得逻辑更清晰,整体性能得到提高。在已确立的基准测试以及新开发的创建挑战测试集的全面评估下,我们证明了 CREATOR 相对于现有方法(如 CoT、PoT 和工具使用方法)的优越性和不可替代性。本研究是对工具创建领域的一次初步探索,为这一领域的潜力提供了初步了解。为了进一步发展这一领域,未来的研究可以深入探讨 LLMs 的工具创建能力,通过进行涵盖更广泛任务和复杂场景的实验来检验这一能力。虽然我们的研究重点在于揭示 LLMs 工具创建背后的推理分离,但还有其他必要方面需要进一步调查。此外,需要研究方法来提高工具创建过程的效率,同时使其更符合用户的意图。通过开展这些未来的研究方向,我们预计本研究将奠定坚实的基础,激发更复杂 AI 系统利用 LLMs 工具创建能力的发展。此外,本研究表明了 LLM 功能的重要进步,有助于推动其在工具创建能力方面的潜力。