Divide-Then-Aggregate: An Efficient Tool Learning Method via Parallel Tool Invocation
作者: Dongsheng Zhu, Weixian Shi, Zhengliang Shi, Zhaochun Ren, Shuaiqiang Wang, Lingyong Yan, Dawei Yin
分类: cs.LG, cs.AI, cs.CL
发布日期: 2025-01-21 (更新: 2025-05-25)
备注: Accepted to ACL 2025
💡 一句话要点
提出DTA-Llama,通过并行工具调用提升LLM在复杂任务中的性能与效率。
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 大型语言模型 工具学习 并行计算 有向无环图 任务分解 Llama2 函数调用
📋 核心要点
- 现有LLM工具学习方法(如CoT/ReAct)依赖串行工具调用,感知范围有限,任务规划能力不足。
- DTA-Llama将任务分解为并行子任务,通过有向无环图(DAG)指导工具调用,提升效率。
- 实验表明,DTA-Llama显著提升任务性能,降低token消耗和推理时间,性能媲美GPT-3.5。
📝 摘要(中文)
当前的大型语言模型(LLMs)虽然展现出令人印象深刻的能力,但在执行复杂的现实世界任务时仍然需要工具学习。主流方法,如CoT/ReAct,依赖于逐步的工具调用来与外部环境交互,但它们在感知范围上受到限制,并且缺乏足够的任务规划能力。为了解决这些限制,其他研究引入了首个基于搜索的决策树(DFSDT),但仍然存在计算成本高的问题。本文提出了一种新颖的并行工具调用范式,DTA-Llama(Divide-Then-Aggregate Llama)。首先,我们将传统的基于树的工具搜索路径转换为有向无环图(DAG)结构,生成高质量的并行工具调用数据集。然后,在数据集上训练DTA-Llama,使其学习迭代地将当前任务划分为若干并行工具调用子任务,并聚合调用结果以决定下一步行动。此外,在将DTA-Llama应用于实际任务时,我们引入了一个受进程/线程机制启发的有效推理框架。实验结果表明,我们的方法显著提高了任务性能,同时降低了token消耗和推理时间。使用我们方法的Llama2-7B,其性能可与GPT-3.5的官方并行函数调用方法相媲美。相关的代码、数据集和模型权重可在https://corn0205.github.io/ 获取。
🔬 方法详解
问题定义:现有的大型语言模型在执行复杂任务时,依赖串行的工具调用方式,导致感知范围受限,难以进行有效的任务规划。此外,基于搜索的决策树方法虽然尝试解决这个问题,但计算成本过高,限制了其应用。
核心思路:DTA-Llama的核心思路是将复杂的任务分解为多个可以并行执行的子任务,然后利用多个工具并行地处理这些子任务,最后将结果聚合起来,决定下一步的行动。这种并行化的方式可以显著提高效率,扩大感知范围,并提升任务规划能力。通过将工具搜索路径转换为DAG结构,可以更好地支持并行执行。
技术框架:DTA-Llama的整体框架包含以下几个主要阶段:1) 任务分解:将原始任务分解为多个可以并行执行的子任务。2) 并行工具调用:针对每个子任务,并行地调用相应的工具。3) 结果聚合:将各个工具的调用结果进行聚合,形成对当前任务状态的全面理解。4) 行动决策:基于聚合的结果,决定下一步的行动,并重复上述过程,直到任务完成。在推理阶段,采用类似于操作系统进程/线程的机制,高效地管理和调度并行工具的调用。
关键创新:DTA-Llama最重要的创新点在于其并行工具调用的范式。与传统的串行调用方式不同,DTA-Llama能够同时利用多个工具处理不同的子任务,从而显著提高了效率和感知范围。此外,将工具搜索路径转换为DAG结构,使得并行执行成为可能,并为后续的训练和推理提供了便利。
关键设计:DTA-Llama的关键设计包括:1) DAG结构的构建方式,需要保证子任务之间的依赖关系清晰,避免循环依赖。2) 任务分解的策略,需要根据任务的特点选择合适的分解粒度,避免子任务过于简单或过于复杂。3) 结果聚合的方法,需要有效地融合来自不同工具的信息,形成对任务状态的全面理解。4) 推理框架的设计,需要高效地管理和调度并行工具的调用,避免资源竞争和死锁。
🖼️ 关键图片
📊 实验亮点
实验结果表明,DTA-Llama在任务性能上取得了显著提升,同时降低了token消耗和推理时间。例如,使用DTA-Llama的Llama2-7B模型,其性能可与GPT-3.5的官方并行函数调用方法相媲美。这些结果验证了DTA-Llama并行工具调用范式的有效性,并展示了其在实际应用中的潜力。
🎯 应用场景
DTA-Llama具有广泛的应用前景,例如智能客服、自动化报告生成、复杂问题求解等。它可以应用于需要与外部环境交互、进行复杂推理和决策的各种场景。通过并行工具调用,DTA-Llama能够显著提高任务的完成效率和质量,为各行各业带来实际价值。未来,DTA-Llama有望成为构建更智能、更高效的AI系统的关键技术。
📄 摘要(原文)
Although current Large Language Models (LLMs) exhibit impressive capabilities, performing complex real-world tasks still requires tool learning. Mainstream methods, such as CoT/ReAct, rely on step-by-step tool invocation to interact with external environments, but they are limited in perceptual scope and lack adequate task-planning capability. To address these limitations, other studies introduce the first Search-based Decision Tree (DFSDT), which still suffers from the high computational cost. In this paper, we introduce a novel parallel tool invocation paradigm, DTA-Llama (Divide-Then-Aggregate Llama). First, we transform traditional tree-based tool search paths into Directed Acyclic Graph (DAG) structure, generating a high-quality parallel tool invocation dataset. The DTA-Llama is then trained on the dataset to learn to iteratively divide the current task into several parallel tool invocation sub-tasks and aggregate the invocation results to decide the next actions. Furthermore, we introduce an efficient inference framework inspired by the Process/Threads mechanism when applying the DTA-Llama to practical tasks. Experimental results show that our approach substantially enhances task performance while reducing token consumption and inference time. Llama2-7B, using our method, is comparable to the official parallel function calling method of GPT-3.5. The relevant code, dataset, and model weights are available at https://corn0205.github.io/