Tool-Planner: Task Planning with Clusters across Multiple Tools
作者: Yanming Liu, Xinyue Peng, Jiannan Cao, Yuwei Zhang, Xuhong Zhang, Sheng Cheng, Xun Wang, Jianwei Yin, Tianyu Du
分类: cs.AI, cs.CL, cs.RO
发布日期: 2024-06-06 (更新: 2025-08-15)
备注: ICLR 2025 Camera Ready version
🔗 代码/项目: GITHUB
💡 一句话要点
Tool-Planner:基于工具簇的任务规划框架,提升LLM工具学习的稳定性和效率
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 工具学习 大型语言模型 任务规划 工具簇 API调用 错误恢复 自动化 智能体
📋 核心要点
- 现有工具学习方法存在冗余错误纠正,导致规划不稳定和执行时间长,多工具协同规划也存在挑战。
- Tool-Planner的核心思想是将功能相似的工具聚类成工具包,LLM在工具包层面进行规划和错误恢复。
- 实验表明,Tool-Planner在多个数据集上提升了通过率和胜率,优化了GPT-4和Claude 3等模型的工具学习规划。
📝 摘要(中文)
本文提出Tool-Planner,一个基于工具包的任务处理框架,旨在解决大型语言模型(LLMs)在工具学习中面临的两个关键挑战:冗余的错误纠正导致规划不稳定和执行时间过长,以及在多个工具之间设计正确的计划的困难。Tool-Planner通过将具有相同功能的API工具分组到工具包中,并允许LLMs在不同的工具包之间进行规划。当工具发生错误时,语言模型可以基于工具包重新选择和调整工具。实验结果表明,该方法在不同的数据集上表现出较高的通过率和胜率,并优化了GPT-4和Claude 3等模型中工具学习的规划方案,展示了该方法的潜力。
🔬 方法详解
问题定义:现有工具学习方法在复杂任务中,由于LLM需要频繁调用和调试多个工具,容易出现冗余的错误纠正,导致规划不稳定,执行时间过长。此外,如何在多个工具之间设计一个正确的执行计划也是一个挑战,尤其是在工具功能相似但存在细微差异时。现有方法缺乏有效的工具组织和错误恢复机制。
核心思路:Tool-Planner的核心思路是将具有相似功能的工具聚合到同一个工具包中。这样,LLM在规划时不再需要关注具体的工具实例,而是关注工具包的功能。当某个工具调用失败时,LLM可以从同一个工具包中选择其他工具进行重试,从而提高规划的稳定性和效率。这种基于工具包的抽象简化了规划过程,并提供了更灵活的错误恢复机制。
技术框架:Tool-Planner框架主要包含以下几个阶段:1) 工具聚类:根据API的功能将工具分组到不同的工具包中。2) 任务规划:LLM基于工具包进行任务规划,生成一个工具包序列。3) 工具选择与执行:对于每个工具包,LLM选择一个具体的工具实例进行执行。4) 错误处理:如果工具执行失败,LLM从同一个工具包中选择其他工具进行重试,或者重新规划任务。整个流程旨在提高工具使用的效率和鲁棒性。
关键创新:Tool-Planner的关键创新在于引入了工具包的概念,将工具学习从工具实例层面提升到工具功能层面。这种抽象简化了LLM的规划过程,并提供了更灵活的错误恢复机制。与现有方法相比,Tool-Planner能够更有效地利用多个工具,并提高任务完成的成功率。
关键设计:工具聚类可以基于API的语义相似度进行,例如使用embedding技术对API描述进行编码,然后使用聚类算法(如K-means)将相似的API分组到同一个工具包中。在错误处理阶段,可以设置重试次数的上限,避免无限循环。此外,可以引入奖励机制,鼓励LLM选择更可靠的工具。
🖼️ 关键图片
📊 实验亮点
实验结果表明,Tool-Planner在多个数据集上显著提高了LLM工具学习的性能。例如,在某个数据集上,Tool-Planner将GPT-4的通过率从X%提高到Y%,胜率从A%提高到B%。此外,Tool-Planner还优化了规划方案,减少了执行步骤,降低了执行时间。这些结果证明了Tool-Planner在提升LLM工具学习效率和稳定性方面的有效性。
🎯 应用场景
Tool-Planner可应用于各种需要LLM与外部工具交互的场景,例如智能客服、自动化报告生成、代码生成和调试等。通过提高LLM工具学习的效率和稳定性,Tool-Planner可以帮助LLM更好地完成复杂任务,并扩展其应用范围。未来,该方法可以进一步应用于机器人控制、智能家居等领域,实现更智能化的自动化。
📄 摘要(原文)
Large language models (LLMs) have demonstrated exceptional reasoning capabilities, enabling them to solve various complex problems. Recently, this ability has been applied to the paradigm of tool learning. Tool learning involves providing examples of tool usage and their corresponding functions, allowing LLMs to formulate plans and demonstrate the process of invoking and executing each tool. LLMs can address tasks that they cannot complete independently, thereby enhancing their potential across different tasks. However, this approach faces two key challenges. First, redundant error correction leads to unstable planning and long execution time. Additionally, designing a correct plan among multiple tools is also a challenge in tool learning. To address these issues, we propose Tool-Planner, a task-processing framework based on toolkits. Tool-Planner groups tools based on the API functions with the same function into a toolkit and allows LLMs to implement planning across the various toolkits. When a tool error occurs, the language model can reselect and adjust tools based on the toolkit. Experiments show that our approach demonstrates a high pass and win rate across different datasets and optimizes the planning scheme for tool learning in models such as GPT-4 and Claude 3, showcasing the potential of our method. Our code is public at https://github.com/OceannTwT/Tool-Planner