OpenRouter 发布 Ori Eval:为你的应用找到最合适的模型
Ori Eval: Find the Best Model for What You're Building
OpenRouter 发布 Ori Eval,帮助开发者在超过 500 个可选模型中为自己的应用选出最合适的模型。它会扫描代码库中所有调用模型的位置,通过访谈确认用户关心的成本、速度、准确率等指标,选出 5 个候选模型并行运行评测,并生成 *.eval.ts 评测文件,用 bun test 运行,检查智能体调用的工具、避免的工具和开放式回答质量(由 LLM judge 评分)。
原文说明了 Ori Eval 如何在用户自己的代码和提示词上运行评测,并支持 CI 阻断回归和新模型自动对比。
随着越来越多的应用加入 AI 功能,为你的项目选择使用哪个模型依然同样困难,甚至更难,因为你可以从 500 多个模型中进行选择。
在实践中,这个选择往往没有系统性的方法:来自社交媒体的推荐、基准排行榜,或者一种某款模型目前最强的笼统感觉。
这些资源确实有用,但每一个都有同样的局限。基准测试衡量的是固定的任务集,而推荐反映的是别人的应用场景。两者都无法告诉你,模型在你的应用、你的测试框架、你的数据和你的提示词上表现如何。
与此同时,新模型每周都在发布,而手动重新评估它们的成本高得让许多团队推迟决策,或者继续使用一个已不再合适的模型。
在 OpenRouter,我们对模型颇有了解。
我们学到的是,没有绝对最好的模型——只有最适合你正在构建的东西的模型。
Ori Eval 帮你找到那唯一合适的模型,并向你证明它。
要开始使用,告诉你的 agent:
run curl -fsSL https://openrouter.ai/skills/spawn-ori-eval and follow the instructions in its output to get startedOri Eval 会像一位友好且经验丰富的工程朋友一样,带你了解如何为你的项目选择最佳模型——无需任何评估经验。
简而言之
- Ori Eval 在你自己的提示词上运行你的 agent,断言它调用了哪些工具,并用 LLM 评判员为开放式回答打分。
- Ori 在一次运行中固定测试框架和模型。环境保持不变,因此如果评估结果发生了变化,你就知道这一变化只能归因于模型的变化。
- Ori Eval 通过 OpenRouter 路由,因此模型比较覆盖所有模型和实验室。
- 你不需要知道如何编写评估。Ori Eval 会找到你代码中每一处调用模型的地方,询问你在意什么,并编写评估文件。
- 评估文件就是代码。在 CI 中运行它以阻止回归,并在新模型发布时重新运行它。
- 要开始,告诉你的编码 agent:
run curl -fsSL https://openrouter.ai/skills/spawn-ori-eval and follow the instructions in its output to get started。
提问,得到答案(附证明)
要使用 Ori Eval,你可以直接告诉你最喜欢的编码 agent:
运行 curl -fsSL https://openrouter.ai/skills/spawn-ori-eval 并按照其输出中的说明操作
你的 agent 将请求交给 Ori Eval。Ori Eval 会探索你的代码库,并带着问题回来。在运行任何评估之前,它会与你一起帮助你弄清楚什么对你重要——是成本、性能、延迟、速度、工具调用准确性,还是其他?然后它会选择 5 个符合你要求的最新模型,并与你确认。
一旦收集齐所有这些必要的要求,Ori Eval 会编写一个 review.eval.ts 文件,针对候选模型并行运行你的 agent,并返回一个表格:
| model | catch | p50 | $/PR | result |
|---|---|---|---|---|
| anthropic/claude-opus-5 | 94% | 38s | $0.041 | pass |
| openai/gpt-5.6-sol | 92% | 44s | $0.038 | pass |
| moonshotai/kimi-k3 | 90% | 31s | $0.019 | pass |
| z-ai/glm-5.2 | 86% | 26s | $0.008 | pass |
| google/gemini-3-pro | 84% | 52s | $0.062 | fail (cost) |
推荐会附带理由:比如说,在你的模型成本标准内最高的 bug 捕获率,以及如果 bug 审查量增长时的性价比之选。
如果你从未编写过评估,也不用担心
编写好的评估并不容易,这就是为什么我们为你处理烦人的部分。
Ori Eval 会扫描你的代码库,找出每一处运行模型的地方,并向你展示它发现的内容:用例场景、确切的文件,以及你当前在那里使用的模型。然后它会询问你希望评估覆盖哪里,以及你最在意什么:准确性、速度、成本,还是其他?
一旦 Ori Eval 完成了对你的询问,它就会根据你的回答编写评估文件,并运行它。
就这么简单。
每次运行都有一致的评分
因为 Ori Eval 是一个 agent,它可以在一次运行期间固定 harness、模型和 effort。它还经过预先调优:我们已经选好了最适合 eval 工作的 harness 和模型,所以你无需自己选择。
一次 eval 检查三件事
一个 eval 文件是一个用 bun test 运行的 *.eval.ts 文件。它检查 agent 调用了哪些工具、避免了哪些工具,以及答案的质量:
const run = await agent.run("dinner in Lisbon?");
run.tool("search").toBeCalled();
run.tool("delete_file").toNotBeCalled();
run.toComplete();对于开放式答案,由 LLM-as-a-judge 对输出进行评分。Ori Eval 帮助你设置评分标准和最低分数,因此即使是棘手的开放式问题也能被评估。
每个 bug 都变成你可以测试的东西
用平实的语言告诉 Ori Eval 一个 bug:比如说,一个支持 agent 在甚至没有先检查订单的情况下就发放退款——这是个相当严重的问题。
Ori Eval 会编写一个 eval,断言 lookup_order 被调用。该 eval 失败,证明 bug 存在。然后你修复 agent,eval 通过。该断言留在你的测试套件中,因此你始终能够捕获它。
阻止回归,并在领域变化时重新运行
将 ori eval 添加到 GitHub Actions 工作流中。它的退出方式与 bun test 类似,因此 eval 失败也会导致构建失败,回归永远不会到达生产环境。
由于 Ori Eval 编写的内容只是代码,你也可以轻松地安排它们定期运行。我们的一位早期 beta 测试者现在每月运行模型比较。当新模型发布,并且它在你的代码库中表现优于现有模型时,会打开一个 PR,你只需合并它,就能体验所有好处,甚至无需考虑。
开始使用
告诉你的编码 agent:
run curl -fsSL https://openrouter.ai/skills/spawn-ori-eval and follow the instructions in its output to get started就是这样。
该 skill 会安装 Ori(我们预先调优的编码 agent),要求你登录,对你进行访谈,并运行 eval。如果你使用 OpenRouter MCP server,请改为运行 /spawn-ori-eval,并跳过 URL。
手动安装 Ori:
curl -fsSL https://openrouter.ai/labs/ori/install.sh | bash然后运行 ori login。运行 eval 还需要 Bun。
在 Ori Eval 页面 或 Ori Eval 文档 中阅读更多内容。
来源:OpenRouter:Announcements(RSS) · openrouter.ai