ToolRegistry: A Protocol-Agnostic Tool Management Library for Function-Calling LLMs

📄 arXiv: 2507.10593v1 📥 PDF

作者: Peng Ding

分类: cs.SE, cs.AI, cs.CL, cs.LG

发布日期: 2025-07-11

🔗 代码/项目: GITHUB


💡 一句话要点

ToolRegistry:为函数调用LLM提供协议无关的工具管理库

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

关键词: 大型语言模型 工具集成 函数调用 协议无关 工具管理 LLM应用 开源库

📋 核心要点

  1. 现有LLM工具集成方法面临碎片化、协议限制和实现复杂性等挑战,导致开发成本高昂。
  2. ToolRegistry通过统一接口简化工具的注册、表示、执行和生命周期管理,实现协议无关的工具集成。
  3. 实验表明,ToolRegistry可减少60-80%的工具集成代码,提升高达3.1倍的性能,并完全兼容OpenAI函数调用标准。

📝 摘要(中文)

大型语言模型(LLM)应用越来越多地依赖外部工具来扩展其文本生成能力。然而,当前的工具集成方法存在碎片化、协议限制和实现复杂性等问题,导致大量的开发开销。本文提出了ToolRegistry,一个协议无关的工具管理库,它通过统一的接口简化了工具的注册、表示、执行和生命周期管理。评估表明,ToolRegistry实现了60-80%的工具集成代码减少,通过并发执行实现了高达3.1倍的性能提升,并且100%兼容OpenAI函数调用标准。真实世界的案例研究表明,在不同的集成场景中,开发效率和代码可维护性得到了显著提高。ToolRegistry是开源的,可在https://github.com/Oaklight/ToolRegistry 获取,并在https://toolregistry.readthedocs.io/ 提供全面的文档。

🔬 方法详解

问题定义:当前大型语言模型(LLM)应用依赖外部工具扩展能力,但工具集成面临碎片化,不同工具可能使用不同的协议和接口,导致集成复杂性高,开发成本大。现有方法缺乏统一的工具管理机制,难以维护和扩展。

核心思路:ToolRegistry的核心在于提供一个协议无关的工具管理库,通过统一的接口抽象底层不同的工具协议,简化工具的注册、表示、执行和生命周期管理。开发者无需关心底层协议细节,即可方便地集成和使用各种工具。

技术框架:ToolRegistry包含以下主要模块: 1. 工具注册模块:允许开发者注册工具,并定义工具的元数据,例如名称、描述、参数等。 2. 工具表示模块:将工具表示为统一的格式,例如JSON Schema,方便LLM理解和调用。 3. 工具执行模块:负责执行工具,并处理工具的输入和输出。 4. 生命周期管理模块:管理工具的生命周期,例如创建、更新和删除。

关键创新:ToolRegistry最重要的创新点在于其协议无关性。它通过抽象底层协议,提供统一的接口,使得开发者可以方便地集成和使用各种工具,而无需关心底层协议的细节。这与现有方法中针对特定协议进行定制化开发的方式有本质区别。

关键设计:ToolRegistry的关键设计包括: 1. 使用JSON Schema定义工具的元数据,方便LLM理解和调用。 2. 提供并发执行机制,提高工具的执行效率。 3. 支持OpenAI函数调用标准,方便与现有LLM框架集成。 4. 提供灵活的配置选项,允许开发者自定义工具的行为。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,ToolRegistry能够显著降低工具集成代码量,减少60-80%的代码。通过并发执行,性能提升高达3.1倍。同时,ToolRegistry 100%兼容OpenAI函数调用标准,方便与现有LLM框架集成。真实案例研究也验证了其在提升开发效率和代码可维护性方面的优势。

🎯 应用场景

ToolRegistry可广泛应用于需要LLM与外部工具集成的场景,例如智能助手、自动化工作流、数据分析等。它降低了工具集成的复杂性,提高了开发效率,并促进了LLM应用的普及。未来,ToolRegistry可以进一步扩展,支持更多的工具协议和LLM框架,并提供更高级的工具管理功能。

📄 摘要(原文)

Large Language Model (LLM) applications are increasingly relying on external tools to extend their capabilities beyond text generation. However, current tool integration approaches suffer from fragmentation, protocol limitations, and implementation complexity, leading to substantial development overhead. This paper presents Toolregistry, a protocol-agnostic tool management library that simplifies tool registration, representation, execution, and lifecycle management via a unified interface. Our evaluation demonstrates that \toolregistry achieves 60-80% reduction in tool integration code, up to 3.1x performance improvements through concurrent execution, and 100% compatibility with OpenAI function calling standards. Real-world case studies show significant improvements in development efficiency and code maintainability across diverse integration scenarios. \toolregistry is open-source and available at https://github.com/Oaklight/ToolRegistry, with comprehensive documentation at https://toolregistry.readthedocs.io/.