Don't Fine-Tune, Decode: Syntax Error-Free Tool Use via Constrained Decoding

📄 arXiv: 2310.07075v3 📥 PDF

作者: Kexun Zhang, Hongqiao Chen, Lei Li, William Wang

分类: cs.CL, cs.AI

发布日期: 2023-10-10 (更新: 2024-06-04)


💡 一句话要点

提出TOOLDEC以解决大型语言模型工具使用中的语法错误问题

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 大型语言模型 工具使用 语法约束 约束解码 有限状态机 性能提升 智能助手

📋 核心要点

  1. 现有方法在使用外部工具时常因复杂的语法约束而导致频繁的语法错误,影响模型性能。
  2. 本文提出TOOLDEC,通过有限状态机实现约束解码,强制大型语言模型遵循工具语法,从而解决语法错误问题。
  3. 实验结果显示,TOOLDEC消除了所有语法错误,并在通用模型上将工具使用准确率提升至52%,显著优于传统微调方法。

📝 摘要(中文)

大型语言模型(LLMs)在许多任务中表现优异,但在使用外部工具时常因复杂的语法约束而失败。虽然广泛的微调和提示可以缓解这一问题,但这些方法成本高且难以推广。此外,由于语法约束在微调过程中仅被隐式学习,模型仍然频繁出现语法错误。基于这些约束可以通过约束解码显式满足的事实,本文提出了TOOLDEC,一种利用有限状态机强制LLMs遵循工具语法的解码算法。实验表明,TOOLDEC消除了所有语法错误,在各种基础模型和基准测试中显著提升了性能。更令人惊讶的是,当应用于通用的开箱即用LLMs(如Mistral-Instruct)时,TOOLDEC将其工具使用的准确率从初始的0%提升至52%,与专门微调的模型(如ToolLLM)的性能相匹配。

🔬 方法详解

问题定义:本文旨在解决大型语言模型在使用外部工具时因复杂语法约束导致的频繁语法错误问题。现有的微调和提示方法虽然有所帮助,但成本高且难以推广,且仍然存在隐式学习带来的语法错误。

核心思路:TOOLDEC的核心思路是通过约束解码显式满足语法约束,利用有限状态机来强制模型遵循工具的语法规则,从而避免语法错误的发生。

技术框架:TOOLDEC的整体架构包括输入处理、有限状态机构建、约束解码和输出生成四个主要模块。输入处理模块负责解析用户指令,有限状态机模块定义工具的语法规则,约束解码模块根据这些规则生成合法的输出,最后输出生成模块将结果返回给用户。

关键创新:TOOLDEC的主要创新在于使用有限状态机进行约束解码,这一方法与传统的微调方法本质上不同,后者依赖于隐式学习语法规则,而TOOLDEC则通过显式约束确保语法的正确性。

关键设计:在TOOLDEC中,有限状态机的设计是关键,确保能够准确捕捉工具的语法结构。此外,解码过程中采用了特定的损失函数,以优化生成的输出符合语法要求。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果显示,TOOLDEC成功消除了所有语法错误,并在Mistral-Instruct等通用模型上将工具使用的准确率从0%提升至52%。这一提升与专门微调的模型ToolLLM的性能相当,展示了TOOLDEC在工具使用中的显著优势。

🎯 应用场景

该研究的潜在应用领域包括智能助手、自动化工具和编程辅助等场景,能够显著提升大型语言模型在实际工具使用中的准确性和可靠性。未来,TOOLDEC可能推动更多基于语言模型的应用,尤其是在需要精确语法的任务中。

📄 摘要(原文)

Instruction-tuned large language models (LLMs) excel at many tasks but often fail to use external tools due to complicated and unfamiliar syntax constraints. While extensive fine-tuning and prompting can mitigate the issue, these approaches are expensive and hard to generalize. Furthermore, because syntax constraints are only learned implicitly during fine-tuning, models still make frequent syntax errors. Motivated by the fact that these constraints can be better satisfied explicitly with constrained decoding, we propose TOOLDEC, a decoding algorithm using finite state machines to force LLMs to follow tool syntax. Our experiments show that TOOLDEC eliminates all syntax errors, achieving significantly better performance on various base models and benchmarks. More surprisingly, when applied to generalist out-of-the-box LLMs such as Mistral-Instruct, TOOLDEC improves its accuracy in tool use from the initial 0% to an impressive 52%, matching the performance of specialized fine-tuned models such as ToolLLM.