OmniRoute CLI Evals 是 OmniRoute 命令行工具中的评估模块,用于对 LLM 输出进行自动化评分和模型对比。使用前需先安装 omniroute CLI,安装方式与全局参数见 CLI 入口技能文档(资料未提供具体安装命令)。\n\n用途\n\n评估是自动化的测试套件,将 LLM 输出与预期答案或评分标准(rubric)进行对比打分。OmniRoute 将套件与运行结果存储在本地数据库中。\n\n套件管理\n\n- omniroute eval suites list:列出所有评估套件,加 --json 输出 JSON\n- omniroute eval suites get <suiteId>:查看套件完整定义\n- omniroute eval suites create:创建套件,指定 --name、--rubric 和 --samples-file\n\n评分标准支持 exact-match、contains、llm-judge、regex 四种。样本文件为 JSONL 格式,每行一个 JSON 对象,包含 input 与 expected_output 字段,例如:\n{"input": "What is 2+2?", "expected_output": "4"}\n{"input": "Translate 'hello' to Spanish", "expected_output": "hola"}\n\n运行评估\n\n使用 omniroute eval suites run <suiteId> --model <模型ID> 对指定模型运行套件;加 --watch 可显示实时终端仪表盘进度。运行为异步执行,也可手动轮询:先用 --output json 与 jq 取出运行 ID,再用 omniroute eval get <runId> 查询状态。\n\n运行结果管理\n\n- omniroute eval list:列出所有评估运行\n- omniroute eval get <runId>:查看运行详情(状态、模型、得分)\n- omniroute eval results <runId>:查看每个样本的结果\n- omniroute eval scorecard <runId>:查看完整评分卡,含每个样本的通过/失败情况\n- omniroute eval cancel <runId>:取消正在运行的评估\n\n评分卡 JSON 中每个样本包含 id、score、passed、input、output、expected 字段。\n\n模型对比\n\n对同一套件依次用不同模型运行,并提取 model 与 score 进行比较,例如循环 claude-sonnet-4-6、gpt-4o、gemini-2.0-flash。\n\nCI 集成\n\n可将评估得分作为 CI 门禁:运行套件取得 score,若低于阈值(如 0.90)则使 CI 失败。\n\n适用场景\n\n模型选型与横向对比、提示词或模型变更后的回归验证、持续集成中的质量门禁。\n\n限制与常见错误\n\n- create 报评分标准无效:需使用 exact-match、contains、llm-judge、regex 之一\n- run 报模型未找到:用 omniroute models --search <name> 核实模型 ID\n- eval get 显示 failed:用 omniroute logs --search eval 查看错误详情\n- 评分卡结果为空:运行可能仍在进行,轮询 eval get 直到状态为 completed\n\n资料未提供收费、价格、支持的模型厂商范围或平台限制等信息。
omniroute-cli-eval
测试与质量
更新于 10-22 16:16