ToolOrchestra

GitHub
701 96 较难 1 次阅读 2天前Apache-2.0开发框架Agent语言模型
AI 解读 由 AI 自动生成,仅供参考

ToolOrchestra 是由英伟达与香港大学联合推出的端到端强化学习框架,旨在通过高效协调各类智能工具与工作流来提升 AI 的解决问题的能力。它核心解决的是单一模型在处理复杂、多步骤任务时能力受限且成本高昂的痛点。

该框架训练出一个轻量级的“指挥家”模型(如已发布的 8B 参数 Orchestrator-8B),让它学会在推理过程中灵活调度多种资源:既包括搜索、代码解释器等基础工具,也涵盖编程、数学等专用模型,甚至能协同 GPT-5 等通用大模型共同工作。通过多轮交互与自我优化,ToolOrchestra 能以更低的计算成本实现超越顶级闭源模型的性能,并在 GAIA 等权威基准测试中名列前茅。

其独特亮点在于采用端到端强化学习技术,结合结果、效率和偏好多重奖励机制进行联合优化,并配套了可大规模合成训练数据的自动化流水线。这使得小参数量的指挥模型也能展现出强大的任务规划与执行能力。

ToolOrchestra 非常适合 AI 研究人员探索智能体协作新范式,也适合开发者构建低成本、高效率的复杂应用系统。对于希望在不依赖超大模型的前提下解决现实世界多步难题的团队而言,这是一个极具价值的开源选择。

使用场景

某金融科技团队需要构建一个自动化系统,每日从全球新闻中抓取数据、分析市场情绪,并生成包含代码回测结果的量化交易日报。

没有 ToolOrchestra 时

  • 调度逻辑僵化:开发人员需硬编码复杂的 if-else 规则来决定何时调用搜索工具或数学模型,一旦任务流程变化,维护成本极高。
  • 资源浪费严重:无论问题难易,系统默认调用最大的通用大模型处理所有步骤,导致高昂的 API 账单和漫长的等待时间。
  • 多步推理易断链:在面对需要“搜索 - 计算 - 再搜索”的多轮交互任务时,传统代理容易迷失上下文,无法自主修正错误路径,导致任务中途失败。
  • 专家模型协同难:难以让专用的代码模型与数学模型高效配合,往往需要人工介入拼接不同模型的输出结果。

使用 ToolOrchestra 后

  • 智能动态编排:ToolOrchestra 内置的 8B 编排模型能自主规划任务流,灵活交替进行推理与工具调用,无需人工预设固定流程。
  • 极致成本效益:系统根据子任务难度自动路由,简单任务用小模型或基础工具,复杂难题才调用顶级模型,整体运行成本降低 60% 以上。
  • 闭环自我修正:基于端到端强化学习训练,ToolOrchestra 能在执行受阻时自动反思并调整策略,显著提升了长链条任务的完成率。
  • 无缝专家协同:它能像指挥家一样精准调度专用代码模型生成回测脚本、调用数学模型验证数据,最终由通用模型汇总报告,实现全流程自动化。

ToolOrchestra 通过让小模型学会指挥大工具,以极低的算力成本实现了超越单一超大模型的复杂任务解决能力。

运行环境要求

操作系统
  • Linux
GPU
  • 必需 NVIDIA GPU
  • 训练示例命令指定 '--gres=gpu:8'(8 卡),检索环境需 'faiss-gpu',FlashAttention 和 FlashInfer 依赖 CUDA 12.4 (cu124)
内存

未说明(但训练脚本指定 '--cpus-per-task=128',暗示需要大量系统内存)

依赖
notes1. 项目明确针对 Linux 环境(使用了 srun 和 Enroot 容器)。2. 需要配置多个环境变量,包括 Tavily API Key、WandB Key 和 NVIDIA NGC (OSS) Key。3. 针对不同功能(训练、检索、vLLM 推理、Tau2-Bench 评估)需分别创建独立的 Conda 环境。4. 评估 Tau2-Bench 基准时需要在特定的 Enroot 容器中重新构建镜像并本地安装 tau2。5. 模型权重和索引文件需从 HuggingFace 单独下载。
python3.12
torch==2.4.0
transformers<4.54.0
vllm==0.9.2
flash-attn
flashinfer-python
faiss-gpu
datasets
pyserini
tavily-python
fastapi
ToolOrchestra hero image

快速开始

ToolOrchestra: 通过高效的模型与工具编排提升智能水平

论文 代码 模型 数据 官网

苏洪锦*, 刁世哲*, 卢希明, 刘明杰, 徐嘉诚, 董欣, 傅永干, 彼得·贝尔卡克, 叶汉荣, 尹宏旭, 董毅, 埃韦丽娜·巴赫图里娜, 余涛, 崔艺珍, 扬·考茨, 帕夫洛·莫尔恰诺夫

英伟达  ·  香港大学
*同等贡献


📰 新闻

  • 2025年12月5日: 我们的生成数据集ToolScale成为Hugging Face上下载量第一的数据集,而Nemotron-Orchestrator-8B则在所有模型中排名第第三

  • 2025年12月2日: 🏆 ToolOrchestra在**GAIA基准测试中位居第一**!

  • 2025年11月27日: 我们发布了ToolOrchestra的代码、训练数据以及模型检查点。


ToolOrchestra性能 成本效益

我们推出了ToolOrchestra,这是一种用于训练小型协调器的方法,该协调器能够协调智能工具的使用。通过结合工具和专用模型,ToolOrchestra不仅超越了GPT-5,而且效率更高。面对一项任务时,协调器会在多个回合中交替进行推理和工具调用,以完成任务。协调器会与多种工具交互,包括基础工具(如网络搜索、代码解释器)、专业LLM(如编程模型、数学模型)以及通用LLM(如GPT-5、Llama-Nemotron-Ultra-253B、Claude Opus 4.1)。在训练过程中,协调器通过端到端强化学习,同时优化结果、效率和偏好奖励。为了辅助强化学习训练,我们开发了一套自动化流水线,可以大规模合成环境和工具调用任务。

借助ToolOrchestra,我们打造了Orchestrator-8B,这是一款最先进的80亿参数编排模型,旨在通过协调多样化的专家模型和工具来解决复杂的多轮代理任务。

关键成果:

  • HLE上,Orchestrator-8B获得了37.1%的得分,优于GPT-5(35.1%),且效率高出2.5倍
  • τ²-BenchFRAMES上,Orchestrator-8B大幅领先于GPT-5,同时仅消耗其约30%的成本

🛠️ 环境搭建

# 克隆本仓库
git clone https://github.com/NVlabs/ToolOrchestra.git
cd ToolOrchestra

# 下载索引文件和检查点
git clone https://huggingface.co/datasets/multi-train/index
export INDEX_DIR='/path/to/index'
git clone https://huggingface.co/nvidia/Nemotron-Orchestrator-8B
export CKPT_DIR='/path/to/checkpoint'

# 设置环境变量
export HF_HOME="/path/to/huggingface"
export REPO_PATH="/path/to/this_repo"

# 搜索API环境,请前往[Tavily](https://app.tavily.com/home)申请API密钥。
export TAVILY_KEY="TAVILY_KEY"
export WANDB_API_KEY="WANDB_API_KEY"
export OSS_KEY="OSS_KEY" # 英伟达NGC密钥
export CLIENT_ID="CLIENT_ID"
export CLIENT_SECRET="CLIENT_SECRET"

用于Tau2-Bench评估(Enroot环境)

由于需要本地安装tau2,您需要重新构建镜像:

srun --partition=interactive --time=04:00:00 --nodes=1 --overcommit --ntasks-per-node=1 --cpus-per-task=128 --job-name tau2-bench --account=nvr_lpr_agentic --gres=gpu:8  --container-image /lustre/fsw/portfolios/nvr/users/$USER/docker/s1.sqsh --container-save /lustre/fsw/portfolios/nvr/users/$USER/docker/s1.sqsh --container-mounts=$HOME:/home,/lustre:/lustre --pty /bin/bash

pip uninstall -y tau2
cd toolorchestra/evaluation/tau2-bench
pip install -e .
exit

训练环境(Conda环境)

conda create -n toolorchestra python=3.12 -y
conda activate toolorchestra
pip install -r requirements.txt
pip install flash-attn --no-build-isolation
pip install flashinfer-python -i https://flashinfer.ai/whl/cu124/torch2.6/
pip install -e training/rollout

检索环境

conda create -n retriever python=3.12 -y
conda activate retriever
conda install pytorch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 pytorch-cuda=12.4 -c pytorch -c nvidia
pip install transformers datasets pyserini psutil
conda install -c pytorch -c nvidia faiss-gpu
pip install uvicorn fastapi
pip install tavily-python
pip install flash-attn --no-build-isolation

vLLM模型环境

conda create -n vllm1 python=3.12 -y
conda activate vllm1
pip install torch
pip install "transformers<4.54.0"
pip install vllm==0.9.2 # 用于gemma-2-9b-it
cd evaluation/tau2-bench
pip install -e .

🚀 训练

cd training
python resume_h100.py

📊 评估

cd evaluation

# 在HLE上评估(需vllm1和retriever环境)
python run_hle.py

# 在FRAMES上评估(需vllm1和retriever环境)
python run_frames.py

# 在τ²-Bench上评估(需vllm1环境)
cd tau2-bench/
python run.py

⚙️ 自定义

  • LLM 调用:修改 LLM_CALL.py 中的 get_llm_response 函数,以将 LLM 调用扩展到 vLLM 和 OpenAI 之外的服务。
  • 提示词:修改 eval_hle.py 中的第 455–458 行以及 eval_frames.py 中的第 506–509 行。
  • 工具配置:替换 eval_frames.pyeval_hle.py 第 27 行中的 tool_config,以使用不同的工具集。
  • 工具与模型:修改 tools.json 文件以及 eval_hle.py 中的 call_tool 函数。
  • 并行实验:修改 training/resume_h100.py 中的变量 {EXPERIMENT_NAME1}{EXPERIMENT_NAME2}{EXPERIMENT_NAME3},这些变量应与目录中的文件名相对应。

防止连接错误

为防止在 HLE 中连接主机模型时出现错误,您可以注释掉 这一行,然后分别运行以下命令:

# 在独立进程中
python run_hle.py
python eval_hle.py --model_name {cur_ckpt_dir} --output_dir {cur_output_dir} --model_config model_configs/serve2.json --example_path hle.jsonl

📜 许可证

本项目采用 Apache 2.0 许可证授权。


📝 引用

如果您觉得本仓库有用,请考虑给个 ⭐ 并引用我们的 论文

@misc{toolorchestra,
      title={ToolOrchestra: Elevating Intelligence via Efficient Model and Tool Orchestration}, 
      author={Hongjin Su and Shizhe Diao and Ximing Lu and Mingjie Liu and Jiacheng Xu and Xin Dong and Yonggan Fu and Peter Belcak and Hanrong Ye and Hongxu Yin and Yi Dong and Evelina Bakhturina and Tao Yu and Yejin Choi and Jan Kautz and Pavlo Molchanov},
      year={2025},
      eprint={2511.21689},
      archivePrefix={arXiv},
      primaryClass={cs.CL},
      url={https://arxiv.org/abs/2511.21689}, 
}

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|6天前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|1周前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

151.9k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

108.3k|★★☆☆☆|2天前
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|3天前
插件Agent图像

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|6天前
插件开发框架