OpenRouter 发布 Advisor 工具,让任意模型在生成中调用更强模型
Advisor: Give Any Model a Lifeline to a Smarter One
OpenRouter 上线 openrouter:advisor 工具,执行模型在生成过程中遇到难题时可调用另一个模型作为顾问,顾问返回文本建议后由执行模型自行完成最终回答。
原文给出了跨厂商顾问工具的调用方式与计费逻辑,读者可据此判断如何用低成本模型搭配前沿模型控制推理成本。
将 openrouter:advisor 添加到你的 tools 数组中,你的模型就能在生成过程中向更强的模型求助。当执行器遇到艰难决策、卡住,或想在完成前做一次合理性检查时,它会带着一个 prompt 调用 advisor。advisor 进行思考,将指导作为工具结果返回,执行器则带着更好的信息继续推进。
两个角色都是开放的:OpenRouter 上的任何模型都可以作为执行器,任何提供商的任何模型都可以作为 advisor。让 Gemini 执行器咨询 Claude,或让 GPT 执行器咨询 DeepSeek。配对由你决定。
在 chatroom 中试用,或阅读文档获取完整 API 参考。
{
"model": "openai/gpt-4o-mini",
"messages": [{ "role": "user", "content": "Design a rate limiter for a distributed API gateway." }],
"tools": [
{
"type": "openrouter:advisor",
"parameters": { "model": "anthropic/claude-fable-5" }
}
]
}67 倍价差,选择性咨询
Claude Fable 5 每百万输入 token 收费 $10。GPT-4o Mini 每百万收费 $0.15。这是 67 倍的差距。
大多数请求不需要前沿级别的推理。中端模型就能毫无问题地处理大部分工作负载。但涉及架构决策、模糊边缘情况或多步推理链的那 10-20%,正是更便宜的模型会栽跟头的地方。
advisor 工具选择性地填补这一缺口。你的快速模型主导全局。当它遇到真正困难的事情时,就呼叫支援。你只为需要前沿思考的时刻支付前沿价格。
在一次包含 50 次工具调用的 agentic 编码会话中,也许有 2-3 次是 advisor 咨询。其余都以 mini 价格运行。你在保持质量上限的同时,削减了每次会话的成本。
服务端执行,一次工具调用
advisor 在生成期间于服务端运行。你的模型像调用任何其他工具一样调用它:传入一个 prompt 描述它需要什么帮助,拿回 advisor 的文本作为工具结果。然后模型自己写出最终答案,并以该建议为依据。advisor 是顾问,不是代笔。
有四件事值得了解:
-
任何提供商的任何模型都可以作为 advisor。在工具配置中用
parameters.model固定它(模型目录中的任何模型都可以),或让执行器在每次调用时选择。使用~anthropic/claude-fable-latest始终解析到最新的 Fable。 -
advisor 是单轮的。它从咨询中返回聚焦的指导,不运行嵌套的工具循环。如果你需要一个携带工具的子代理,请改用
openrouter:subagent。 -
递归被阻止。每个内部 advisor 调用都带有一个
x-openrouter-advisor-depth头,并且 advisor 工具会从子调用中剥离,以防止无界嵌套。咨询次数也按请求设上限,以约束成本。 -
advisor 有记忆。在后续请求中重放对话记录(包含 advisor 工具调用和结果),每个 advisor 都会重建其先前的咨询,因此后续问题会建立在 advisor 已经说过的内容之上。记忆是按 advisor 隔离的(你的安全审查员和你的架构师各自保留自己的线程),并且跨 Chat Completions、Responses 和 Anthropic Messages 生效。完整细节。
具名 advisor
对于复杂工作流,你可以配置一个专家名册。每个 advisor 添加一个 openrouter:advisor 条目,各自带有自己的名称、模型和指令:
{
"tools": [
{
"type": "openrouter:advisor",
"parameters": {
"name": "security-reviewer",
"model": "anthropic/claude-fable-5",
"instructions": "You are a security engineer. Find vulnerabilities."
}
},
{
"type": "openrouter:advisor",
"parameters": {
"name": "architect",
"model": "openai/gpt-5.5",
"instructions": "You are a systems architect. Prioritize simplicity and scalability."
}
}
]
}执行器会看到每个 advisor 对应的独立工具,并只需一个 prompt 就能调用适合任务的那一个。认证流程审查会路由到带有安全人设的 Claude Fable;架构问题则交给 GPT-5.5。名称可以使用字母、数字、空格、下划线和短横线(“Lead Architect” 可以),并且必须在各条目间唯一。一个条目可以省略 name 以充当默认 advisor。
建议也可以流式传输。在 advisor 条目上设置 "stream": true,你就能在 advisor 撰写建议时增量地获取它。在 Responses API 中,这意味着建议在传输过程中会产生 response.output_text.delta 事件;完成后的输出项仍然携带完整文本,因此忽略增量的消费者不会看到任何差异。(Chat Completions 会忽略该标志,Messages-API 流式传输是快速跟进项。)
与其他 advisor 工具的对比
一些提供商在自己的 API 中提供了类似的 advisor 概念,但它被限制在其模型家族内部:执行器和 advisor 都必须来自同一供应商,通常来自固定的配对矩阵,有时还处于 beta 门槛之后。OpenRouter 的 advisor 移除了这些限制,并在此基础上增加了一些功能:
- 任意模型、任意提供商,双方皆可。执行器和 advisor 都可以是 catalog 中数百个模型中的任意一个:一个廉价的开源权重执行器咨询一个前沿模型,一个 Gemini 执行器咨询 Claude,或者一个 Claude 执行器从自己模型家族之外的 GPT-5.5 获取第二意见。
- 一组具名 advisor。在单个请求中配置多个专家,各自拥有自己的模型和指令,并让执行器将每个问题路由到正确的专家。单供应商版本只给你一个未命名的 advisor。
- 单轮咨询。每个 advisor 直接向执行器返回聚焦的指导。对于携带工具的子代理,请使用
openrouter:subagent。 - 跨 API 格式可用,无 beta 门槛。同一工具可通过 Chat Completions、Responses 和 Anthropic Messages 使用(三者均支持跨请求记忆),并且已正式可用。无需 beta 标头,无需申请账户团队访问权限。
如果你已经通过我们的某个兼容 API 外壳使用供应商原生的 advisor,切换到 openrouter:advisor 即可解锁完整目录,而无需更改请求的其余部分。
计费
Advisor token 按advisor 模型的费率计费,与执行器分开。如果你的执行器是 GPT-4o Mini(每百万 token $0.15/$0.60),而 advisor 是 Claude Fable 5(每百万 token $10/$50),则每个模型的 token 按各自的价格计费。两者都会显示在你的活动页面上。
开始使用
在你的 tools 数组中添加一行:
{ "type": "openrouter:advisor", "parameters": { "model": "anthropic/claude-fable-5" } }模型会自行决定何时使用它。大多数请求不会触发咨询;触发咨询的请求会因此变得更好。阅读完整文档了解参数、具名 advisor、跨请求记忆等更多内容。对于携带工具的子代理,请使用 openrouter:subagent。
来源:OpenRouter Blog · openrouter.ai