Jev API 指南:Choice、Noul 与 Score 决策 | AutoJev
Jev API 把调用方提供的 State 转换成结构化决策。应用不必先让生成式模型输出一段文字再解析,而是可以预先定义边界明确的问题,并获得类型化答案、概率和用量信息。
AutoJev 在 POST https://autojev.ai/api/v1/decisions 提供 Jev Decisions 协议。当现有路由和防护预设无法覆盖你的自定义决策时,可以使用这个接口。
Jev 和 System One 模型系列由 TypeSafe AI 开发。AutoJev 是独立的集成层,与 TypeSafe AI 不存在隶属或官方背书关系。
Jev API 是否需要登录或 API Key?
生产 REST 调用需要 AutoJev Access Key。登录后在 API Key 设置创建用户级密钥,并将它保存在服务端环境变量中。不要把密钥嵌入浏览器代码,也不要提交到代码仓库。
公开的 Ask Jev 不同:访客无需登录或提供 API Key,就可以体验一个边界明确的问题。Ask Jev 用于探索;需要集成到应用和 Agent 时,应使用经过鉴权的 API。
export AUTOJEV_API_KEY="your-autojev-access-key"Jev API 接口
使用 Bearer 鉴权发送 JSON 请求:
curl https://autojev.ai/api/v1/decisions \
-H "Authorization: Bearer ${AUTOJEV_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"model": "~typesafe/jev-latest",
"state": {
"action": "为确认存在重复扣款的订单退款 680 美元",
"policy": "超过 500 美元的退款必须由人工审批"
},
"questions": {
"next_step": {
"type": "choice",
"instructions": "选择当前最安全且被允许的下一步。",
"criteria": {
"allow": "立即发起退款。",
"review": "先由人工审批,再发起退款。",
"deny": "拒绝退款请求。"
}
},
"needs_review": {
"type": "noul",
"instructions": "按照给定策略,这笔退款是否需要人工审核?"
},
"risk": {
"type": "score",
"instructions": "评估资金和策略风险。",
"criteria": ["低", "中", "高", "严重"]
}
}
}'model 字段可以省略,默认值为 ~typesafe/jev-latest。AutoJev 只接受 Jev 模型标识。每次请求必须包含 1 到 32 个命名问题。
Jev API 请求字段
State
state 是需要评估的证据,可以是字符串、对象或数组。只发送与当前决策有关的信息;精简、明确的 State 更容易测试,也能减少隐私数据暴露。
Questions
questions 中的每个 Key 都代表一个基于相同 State 的独立判断:
- Choice 从调用方定义的结果中选择一个答案,并可返回置信度和概率分布。
- Noul 针对 yes-or-unknown 判断返回 0 到 1 之间的数值。
- Score 按照调用方定义的有序量表评估 State。
Choice 问题支持 2 到 20 个 Criteria,Score 问题支持 1 到 10 个量表条目。清晰具体的判断标准,比含糊的标签更容易形成有效的决策边界。
可选上下文
session_id、user 和 trace 可以携带标识符以及不含 Secret 的可观测性信息。不要在这些字段中放入凭证、密码或与决策无关的个人数据。
Jev API 响应
AutoJev 使用标准 { code, message, data } Envelope 包装成功结果。data 包含实际模型、每个命名问题的答案以及 Token 用量,也可能包含 Provider 和请求标识。
{
"code": 0,
"message": "ok",
"data": {
"model": "typesafe/jev-1.13-20260917",
"answers": {
"next_step": {
"type": "choice",
"choice": "review",
"confidence": 0.94,
"probabilities": {
"allow": 0.02,
"review": 0.94,
"deny": 0.04
}
},
"needs_review": {
"type": "noul",
"noul": 0.97
},
"risk": {
"type": "score",
"score": 2
}
},
"usage": {
"input_tokens": 183,
"output_tokens": 74
}
}
}以上数值仅用于说明响应结构;真实答案会随着 State、Criteria 和当前模型版本变化。概率是决策信号,不是执行动作的授权。
Jev API 与预设接口的区别
需要自定义 Choice、Noul 或 Score 问题时,使用通用 /api/v1/decisions 接口。针对常见 Agent 工作流,AutoJev 还提供稳定的预设接口:
- 模型路由和任务路由。
- 工具调用防护。
- 调研验证。
- 完成状态审查。
预设会把工作流字段转换成 Jev 协议,并附加确定性的处理建议。请求示例请查看完整接入指南。
应该选择 Jev API、MCP 还是 Skills?
- 在后端代码和固定应用流程中使用 Jev API。
- 当支持 MCP 的 Agent 需要发现决策工具和 Schema 时,使用 Jev MCP。
- 需要教会兼容 Agent 何时以及如何调用工具时,使用 Jev Skills。
- 在投入生产前,可以使用 AutoJev Playground检查请求。
这四种方式都连接到同一类有边界的决策层。它们都不能替代应用授权、人工审批或基于代表性数据的评估。
生产环境检查清单
- 把 Access Key 保存在可信服务端或 Agent 凭证存储中。
- 调用 Jev API 前先定义清晰的 Criteria。
- 记录模型版本、概率和请求 ID,方便调试。
- 使用自己工作流中的真实样本校准阈值。
- 对高影响或不可逆操作保留人工确认。
- 当 State 或策略发生实质变化时重新评估。
要理解底层概念,请阅读 Jev 是什么?和 Jev 模型指南。一手资料可查看 TypeSafe System One 文档和 OpenRouter Decisions API 参考。