快速了解
两种不同的结果契约
Schema 规定答案的形状;决策 API 还规定问题类型,以及每个问题返回的决策信号。
主要任务
分类、评分或做是非判断,供应用代码采取下一步动作。
让模型响应符合指定的 JSON Schema,可用于抽取、生成、分类等任务。
输出契约
Choice、Score、Noul 各有与问题类型对应的答案结构。
在 text.format 中定义受支持的 JSON Schema 和 strict 模式;成功完成的响应按该结构输出。
一次请求
发送一份状态和多个具名问题,结果按相同的问题 ID 返回。
定义一份响应 Schema,其中可包含多个字段或嵌套对象,以承载相关结果。
不确定性
Choice 和 Score 可返回选项概率及置信度;Noul 返回“是”的概率。
符合 Schema 本身不提供校准后的概率,也不证明判断正确;还要处理拒绝和未完成的响应。
适合场景
重复且边界清楚的决策,例如路由、紧急程度和人工复核判断。
需要自定义对象、解释、信息抽取或更广泛模型工作流的灵活结构化生成。
同一张工单,两种请求
分别向 API 发送什么
对于一张账单工单,Jev 将决策写成类型化问题;OpenAI 请求则用严格的 Schema 描述期望的响应对象。
Jev:状态 + 类型化问题
Choice 选择处理团队;Noul 判断是否需要人工复核。
{
"model": "jev-latest",
"state": "I was charged twice and need a refund.",
"questions": {
"team": {
"type": "choice",
"instructions": "Which team should handle this?",
"criteria": {
"billing": "Payments and refunds",
"technical": "Product issues",
"other": "None of the above"
}
},
"needs_review": {
"type": "noul",
"instructions": "Does this need human review?"
}
}
}OpenAI:输入 + JSON Schema
Schema 将返回的团队与复核标记限制在已知字段和类型中。
{
"model": "gpt-4o-mini",
"input": [
{ "role": "developer", "content": "Classify this support request." },
{ "role": "user", "content": "I was charged twice and need a refund." }
],
"text": {
"format": {
"type": "json_schema",
"name": "ticket_triage",
"strict": true,
"schema": {
"type": "object",
"properties": {
"team": {
"type": "string",
"enum": ["billing", "technical", "other"]
},
"needs_review": { "type": "boolean" }
},
"required": ["team", "needs_review"],
"additionalProperties": false
}
}
}
}以上是示意性的 JSON 请求体。实际调用时应在服务端使用凭据,并校验结果、执行自己的业务规则。
该怎么选?
明确决策选 Jev
当应用已确定可选答案或评分规则,并需要逐选项的决策信号时,可以使用 Jev。
自定义数据选 Structured Outputs
当你需要定制 JSON 对象、抽取字段,或在 OpenAI 工作流中生成结构化内容时使用。
也可以组合使用
应用可先通过结构化生成整理信息,再交给 Jev 回答一个窄范围问题,最后决定动作。
对于影响较大的动作,请用自己的真实案例评估两种方案,并保留确定性的策略检查、合适的阈值和必要的人工复核。
资料来源
以上产品及 API 行为参考 Jev AI 的 GitHub README 和 OpenAI 官方 Responses API Structured Outputs 文档。