unhardcoded
参考 · 格式

policy_ir

单次模型调用的路由语言:六元素 sigma-pol/v2 项(term)。

单次模型调用的路由语言。策略(policy)是一个六元素 JSON 数组:标签加上五个操作槽位:filter、rank、select、mutate、fallback。你编写 filter、rank 和 select;mutate 和 fallback 有稳定的默认值。

policy.support.json
[
  "policy",
  ["and", ["meets_req"],                                 // filter
         ["not", ["is", "disabled"]],
         ["has_cap", "supports_tools"],
         ["cmp", "bench_intelligence", "ge", 0.5]],
  ["neg", ["normalize", ["field", "price_out"]]],     // rank: cheapest first
  ["argmax"],                                            // select: top survivor
  ["id"],                                                // mutate: pass through
  ["always", { "action": "next_candidate" }]            // fallback: next survivor
]

五个槽位

filter/rank/select 没有外层包裹关键字。标签加五个槽位,完全由数组位置决定。(sigma-pol/v2 移除了旧版的 evidence 槽位;该槽位从未影响过任何决策。)

1 · "policy"
标签。标记语法版本 sigma-pol/v2
2 · filter Pred
入口门控:决定哪些候选模型有资格参与。由纯谓词(predicate)构成。未通过的模型直接排除,不会被悄悄降级。策略只能收窄托管方的底线,不能放宽。
3 · rank Scorer
对通过过滤的候选模型打分排序。纯打分器对通过底线的模型进行排序:用 ["neg", ["normalize", ["field", "price_out"]]] 实现价格优先(最低价在前),也可按 intelligence、延迟或任意加权组合排序。
4 · select Selector
从排序列表中取出得分领先的候选模型。argmax 选取得分最高的存活者;只有当打分器按价格排序时,选中的才是成本更低的模型。
5 · mutate Xform
id 是恒等变换:提示词和参数原样传递;路由只替换模型,不修改你的调用内容。
6 · fallback FailPlan
基于封闭动作词汇表的声明式表格,而非用户代码。任何失败时移至下一候选模型;每次跳转都写入追踪记录。
← 返回文档