ToolGrad:用文本「梯度」高效生成工具调用数据集

来自 Google Research · 期号 2026-09-11

摘要

训练 AI agent 学会调用工具,需要大量「用户提问 + 工具调用链」的数据。 传统做法是先编一个用户提问,再让 agent 去搜索能回答它的工具链——搜索过程很慢,而且经常搜不到正确答案。 Google 在 ACL 2026 发表的 ToolGrad 把顺序倒了过来:先构造一条正确的工具调用链,再反推用户提问。因为工具链比提问包含的信息更明确,反推只需要一次 LLM 调用,生成成本更低,成功率接近 100%。 ToolGrad 用「文本梯度」来迭代构造工具链:每一轮从 API 库里挑几个候选,执行后选出效果最好的一个,把执行报告当作反馈(即文本梯度),指导下一轮选哪个 API。重复这个流程,最终得到一条完整的工具链。 用 ToolGrad 生成的 500 条数据微调 Gemma-3-12B,在 Berkeley Function Calling Leaderboard 上拿到 83.1 分,追平了 Gemini 2.5 Pro(83.2)和 Claude 4.5 Opus(82.8),超过了 GPT-5(74.4)。 有趣的是,微调后的模型还超过了生成数据的「老师模型」Gemini 2.5 Flash Lite——学生模型可以比老师更好。 论文附了开源代码。

深读

导读 训练 AI agent 学会调用工具需要大量「用户提问 + 工具调用链」的数据,传统做法是先编提问再让 agent 搜索工具链,效率低且容易失败。Google 在 ACL 2026 发表的 ToolGrad 把顺序倒了过来:先构造正确的工具调用链,再反推用户提问,生成成本更低、成功率接近 100%。读完能理解一种更高效的数据生成范式,以及它如何让小模型在工具调用上追上顶级闭源模型。 关键信息 - ToolGrad 采用「答案优先」范式:先生成已验证的工具调用链,再反推对应的用户提问,只需一次 LLM 调用即可完成标注。 - 在包含 1.6 万+ 真实 API 的 ToolBench 数据库上,ToolGrad 的数据生成通过率达到 99.8%,远高于传统 query-first 方法的低通过率。 - 用 ToolGrad 生成的 500 条数据微调 Gemma-3-12B,在 Berkeley Function Calling Leaderboard 上得分 83.1,与 gemini-2.5-pro(83.2)和 claude-4.5 Opus(82.8)持平,超过 gpt-5(74.4)。 - 微调后的 ToolGrad-12B 在 BFCL 上超越了其数据生成所用的「教师模型」gemini-2.5-flash-lite,展现了自进化能力。 - ToolGrad 的迭代构造流程包含四个模块:API Proposer(筛选候选 API)、API Executors(并行执行并生成报告)、API Selector(基于执行报告选择最优 API)、LLM Updater(更新用户提问和 AI 回答)。 逐节讲解 传统方法的瓶颈 训练 LLM 正确调用工具需要大量「用户提问 + 工具调用链」的配对数据。此前的工作(如 ToolBench、ToolACE)采用 query-first 方法:先从一个 API 池中生成假设的用户指令,再用深度优先搜索(DFS)agent 去搜索能完成该指令的工具链。这个搜索过程本质上是把复杂的 agent 探索过程蒸馏成训练数据,效率低且经常搜不到正确答案。 ToolGrad 的核心思路:答案优先 ToolGrad 将顺序反转:先生成一条正确的工具调用链(ground-truth tool-use chain),再标注对应的用户提问。因为工具链包含的信息比提问更明确,从工具链反推提问只需要一次 LLM 调用,生成成本更低,成功率接近 100%。这种设计能生成更复杂(长链条)的工具使用数据。 文本梯度驱动的迭代构造 ToolGrad 借鉴了 TextGrad 中「文本梯度」的概念,用 LLM 批评者提供自然语言反馈来指导优化,而非传统的数值梯度。ToolGrad 将这一概念从 prompt 优化扩展到数据集生成:每一轮从 API…

读原文

本站只做摘要与索引,全部内容版权归原作者所有。