跳转到内容

场景:模型路由

问题:应用里挂着多个模型/处理器,让用户选不现实,全走最强模型又贵又慢。

Jev 的角色:请求进来先问一个 Choice——“这是哪类任务”,再用 confidence 决定走哪条路。官方叫 Intent routing + Confidence-gated routing(经官方 llms.txt 索引核验):答案告诉你走哪,置信度告诉你要不要自动走

第一步:一次请求完成分类
{
"model": "jev-latest",
"state": "<用户请求原文>",
"questions": {
"intent": {
"type": "choice",
"instructions": "这条请求属于哪类任务",
"criteria": {
"deterministic": "查订单、改密码等有固定流程的请求",
"cheap_ok": "简单问答、格式转换,小模型可胜任",
"needs_reasoning": "多步推理、代码生成等需要强模型",
"abuse": "辱骂、越权、明显滥用"
}
},
"block": {
"type": "noul",
"instructions": "请求内容违反使用政策"
}
}
}
第二步:代码按 confidence 分流
const { intent, block } = result.answers;
if (block.noul >= 0.8) return reject(); // 阈值参考官方 Noul 指南
if (intent.confidence < 0.7) return routeToHuman(); // 边缘请求转人工
switch (intent.choice) {
case 'deterministic': return runFlow();
case 'cheap_ok': return smallModel();
case 'needs_reasoning': return strongModel();
}

同一个分类任务:LLM 要生成一段文本再解析,Jev 直接返回枚举 + 概率。高频入口(每条消息都要过)场景下,延迟和单价差距会被放大;错误处理也更简单——没有“解析失败”这个分支。

  • 选项描述要写判据而不是名词解释(“简单问答,小模型可胜任”优于“简单任务”)
  • confidence 阈值先用 0.6–0.8 起步,再按线上转人工率调
  • 别忘了把“无法分类”本身建成一个选项或走人工兜底,避免低置信请求被强行二选一

下一步:内容分级,或回到场景总览