ToolHop: 多跳工具使用评估基准的全面解析
论文地址:https://arxiv.org/pdf/2501.02506
1. 研究背景与动机
随着大型语言模型(LLMs)的快速发展,如何有效评估其在多跳工具使用场景中的表现成为了一个关键挑战。多跳工具使用要求模型能够逐步分解复杂查询,调用适当的工具,并迭代处理工具反馈,直到得出最终答案。这一过程不仅考验模型的理解、推理和函数调用能力,还对评估方法的可靠性提出了更高要求。然而,现有的评估方法多依赖于工具驱动的数据构建方式,难以保证工具之间的相互依赖性及查询的真实多跳推理需求。
2. ToolHop 的提出
为了解决上述问题,研究人员提出了 ToolHop,一个专门用于评估 LLMs 多跳工具使用能力的数据集。ToolHop 包含 995 个用户查询和 3,912 个本地可执行工具,通过一种新颖的查询驱动数据构建方法构建而成。该方法包括三个关键步骤:工具创建、文档细化和代码生成。
图1:多跳工具使用过程示意图,展示了从复杂查询分解到最终答案生成的全过程。
3. ToolHop 的构建过程
3.1 工具创建
- 查询分解:将多跳用户查询分解为一系列原子子查询,每个子查询都依赖于前一个子查询的解决。
- 初步文档生成:为每个子查询生成初步的工具文档,这些文档不仅与查询相关,还具有相互依赖性,确保工具的模块化和一致性。
图2:查询驱动数据构建方案,包括工具创建、文档细化和代码生成三个关键步骤。
3.2 文档细化
- 功能扩展:在保持与原始功能兼容性的前提下,引入结果过滤和自定义格式等功能。
- 参数优化:增加参数数量并优化参数类型,例如将简单的字符串参数替换为更结构化的类型(如数组或对象),以处理更复杂的输入。
图3:文档细化前后工具参数数量分布图,显示细化后参数数量显著增加。
3.3 代码生成
- 功能映射:将工具文档中的信息映射到代码中,例如将工具名称转换为函数名,参数规格用于定义函数签名。
- 异常处理:实现健壮的异常处理机制,确保工具能够对无效输入提供有意义的错误消息,同时保持正常运行。
- 验证机制:通过编译器验证生成的代码,确保其按预期运行。
4. ToolHop 的质量分析
为了确保 ToolHop 能够有效评估 LLMs 的多跳工具使用能力,研究人员从五个关键维度进行了全面分析:
- 查询多样性:ToolHop 涵盖了 47 个独特领域,包括电影电视、学术科目和家庭关系等,确保了查询的多样性【图3】。
- 工具间的相互依赖性:每个查询所需的工具数量从三个到七个不等,强调了多跳推理的重要性【表1】。
- 本地可执行性:ToolHop 包含 3,912 个本地可部署且可直接执行的工具,支持零成本调用和与 LLMs 的无缝交互。
- 详细反馈:通过在代码生成过程中包含原子查询及其对应答案,并集成健壮的异常处理机制,确保工具能够提供详细的反馈。
- 可验证的答案:预定义了查询和答案,支持与模型输出的直接比较,简化了验证过程【图6】。
图4:ToolHop 数据集中用户查询在 47 个领域中的分布情况。
5. 实验结果与发现
研究人员使用 ToolHop 对来自五个家族的 14 个 LLMs 进行了评估,主要发现如下:
- 工具使用的有效性:工具的使用显著提高了模型的答案正确性,平均提高了 12.29%。其中,GPT 家族模型通过工具使用,其准确性平均提高了 23.59%【表4】。
- 不同家族的差异:不同 LLM 家族在多跳工具使用场景中表现出不同的特点。例如,Qwen2.5 家族倾向于使用并行调用,但容易产生幻觉;而 GPT 家族则利用工具反馈来提高工具使用性能。
- 模型规模的影响:模型规模越大,其工具使用能力越强,答案正确性越高,调用错误率越低【表4】。
- 反馈的重要性:GPT 家族模型在提供详细反馈的情况下,能够显著纠正其调用行为,但在仅提供简单错误提示时,其最终答案的正确性下降了 20.66%【表5】。
图5:Claude 3.5 家族在直接回答场景中优化了 CoT 推理,增强了分析和解决问题的能力。
6. 结论与建议
ToolHop 提供了一个强大的基准,用于评估 LLMs 在多跳工具使用场景中的表现,并揭示了当前模型在工具使用方面的局限性。基于这些发现,研究人员提出了以下建议:
- 开发健壮且适应性强的工具使用模型,以支持各种复杂的工具。
- 优化模型的并行性等能力,同时优先提高对用户意图的理解,以避免潜在的负面影响。
- 研究有效的策略,利用丰富的工具反馈来增强模型的错误纠正能力。
7. 未来展望
虽然 ToolHop 有效评估了 LLMs 在多跳工具使用方面的表现,但如何提升这些能力仍是一个挑战。未来的研究可以基于 ToolHop 构建训练数据集,通过有针对性的训练来提高 LLMs 在多跳工具使用任务中的表现。
总结
ToolHop 通过创新的查询驱动数据构建方法,为评估 LLMs 的多跳工具使用能力提供了一个全面且可靠的基准。它不仅揭示了当前模型在工具使用方面的不足,还为未来的研究和发展指明了方向。