---
title: "2409.00920"
title_zh: "ToolACE：面向 LLM 函数调用的高性能数据合成框架"
arxiv_id: "2409.00920"
paper_type: "method"
source_kind: "raw"
raw_path: "raw/papers/2024/09/2409.00920.md"
generated: "2026-05-11"
model: "LongCat-Flash-Chat"
quality: "ok"
---

# ToolACE：面向 LLM 函数调用的高性能数据合成框架

## 一句话定位

提出 ToolACE 自动化数据生成框架，通过自演化 API 合成、自引导复杂度控制和双层验证机制，生成高质量、多样且复杂的函数调用训练数据，显著提升 8B 参数模型在 BFCL 和 APIBank 上的性能，达到与 GPT-4 相当水平。

## 小学生也能听懂

这篇论文发明了一个叫ToolACE的工具，它能像搭积木一样自动造出很多不同的“函数调用”练习题，再用这些题训练小模型，让它学会怎么正确调用工具，最后小模型变得和大模型一样厉害。

## 为什么值得记录

- 首次系统性地将 API 多样性、数据复杂度与模型能力对齐，并引入双层验证确保数据准确性
- 在 BFCL 和 APIBank 基准测试中，仅用 8B 参数的 LLaMA3.1 微调模型即超越多数开源模型，接近 GPT-4 性能
- 提出自引导复杂度评估策略，利用待训练模型自身作为复杂度评判器，实现数据与模型能力的动态匹配
- 构建包含 26,507 个 API、覆盖 390 个领域的合成 API 池，支持嵌套参数、并行/依赖调用和多类型对话

## 核心方法

- Tool Self-Evolution Synthesis (TSS)：基于预训练语料构建 API 上下文树，通过 speciation-adaptation-evolution 三阶段生成多样化 API 定义，支持复杂嵌套结构
- Self-Guided Dialog Generation (SDG)：采用多智能体（用户、助手、工具）角色交互生成四类函数调用对话，结合自引导复杂度调节机制动态调整查询难度
- Dual-Layer Verification (DLV)：集成规则检查（语法、参数、一致性）与模型检查（幻觉检测、逻辑一致性、工具响应合理性）双重过滤机制
- 复杂度评估使用待训练模型对样本的 token 级负对数似然（loss）作为指标，并据此划分 easy/medium/hard 数据子集进行消融实验
- 训练采用 LoRA 参数高效微调策略，在 LLaMA3.1-8B-Instruct 上完成 SFT

## 关键结果

- ToolACE-8B 在 BFCL-v3 非实时 AST 任务上达到 89.27% 准确率，执行任务达 90.07%，综合排名第三，仅次于两个 GPT-4 变体
- 在 APIBank 上，ToolACE-8B 的 Call 准确率为 75.94%，Retrieval+Call 为 47.41%，显著优于所有开源模型，与 GPT-4 系列持平
- 幻觉控制表现优异：相关性得分 85.37%，无关性得分 83.81%，平衡性优于其他模型（如 xLAM-8x22b-r 无关性仅 75.23%）
- 消融实验显示：移除并行或多类型数据导致多轮和无关检测性能大幅下降；中等复杂度数据训练效果最佳；双层验证比单层或无验证提升显著

## 局限与风险

- 复杂度评估依赖待训练模型前向计算，大规模数据下计算开销大，难以扩展
- 非均匀采样可能导致模型陷入“舒适区”，难以持续学习困难样本，需迭代训练优化
- 尽管函数调用能力突出，但在通用能力上仍落后于 GPT-4，多任务协同增强仍是挑战

## 适合沉淀的概念

`tool-self-evolution-synthesis`, `self-guided-complexity-evaluation`, `dual-layer-verification`, `function-calling-data-synthesis`, `multi-agent-dialog-generation`, `zero-shot-tool-generalization`, `llm-capability-aligned-data`

## 阅读注意

- 重点关注 TSS 如何利用预训练文档构建 API 上下文树，以及 evolution 阶段的多样性增强策略
- SDG 中的多智能体交互流程与复杂度反馈闭环是核心创新，需理解其如何动态调节用户查询难度
- DLV 的规则与模型双层设计有效结合了确定性与语义验证，值得借鉴用于其他合成数据场景
- 实验部分应细读 ablation study，尤其是 complexity evaluator 使用不同模型时的性能差异
- 附录中的 prompting templates 和 finetuning vs in-context learning 对比揭示了微调在函数调用任务上的优势

## 质量说明

- 采用来源：`raw`，`raw/papers/2024/09/2409.00920.md`
- 生成模型：`LongCat-Flash-Chat`
- 源材料判断：论文提供了完整的方法描述、实验设置、消融分析和公开数据链接，关键结果有量化支撑，结构清晰，信息充分。
