Jev / System One API
Jev 是 TypeSafe 决策模型,使用专用的 System One 协议。它不是聊天模型,不能通过 /v1/chat/completions 的 messages 格式调用。
API Path
Section titled “API Path”POST https://ai.j1ao.vip/v1/systemone请求仍然使用普通 ReX API Key:
Authorization: Bearer sk-your-rex-keyContent-Type: application/json当前 TypeSafe 渠道使用的模型包括:
jev-1.13jev-1.13-free
模型权限和公开名称可能随账户配置变化,请先调用 GET /v1/models,并将返回的模型 ID 原样填入 model。oc-proxy_jev 是后台渠道名称,不应作为模型 ID,除非它确实出现在当前 Key 的模型列表中。
完整调用示例
Section titled “完整调用示例”下面的请求让 Jev 根据一段状态,同时完成分类、评分和二元判断:
curl -sS https://ai.j1ao.vip/v1/systemone \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "jev-1.13-free", "state": { "message": "客户反馈信用卡被重复扣款,并要求尽快处理。" }, "questions": { "route": { "type": "choice", "instructions": "选择负责处理该问题的团队。", "criteria": { "billing": "支付、账单、退款或重复扣款问题", "support": "产品使用或技术故障问题" } }, "urgency": { "type": "score", "instructions": "评估该问题的处理紧急程度。", "criteria": [ "低:可以排队处理", "中:应当尽快处理", "高:需要立即处理" ] }, "needs_human": { "type": "noul", "instructions": "是否需要人工客服立即介入?" } } }'| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
model |
string | 是 | 从 GET /v1/models 返回结果中选择 Jev 模型 ID。 |
state |
string、object 或 array | 是 | 需要模型分析的当前状态;不能是 null。 |
questions |
object | 是 | 非空问题对象;每个键是调用方自定义的问题 ID。 |
questions.<id>.type |
string | 是 | 支持 noul、choice 或 score。 |
questions.<id>.instructions |
任意非空 JSON 值 | 是 | 告诉模型需要判断什么,通常使用字符串。 |
questions.<id>.criteria |
object 或 array | 视类型而定 | choice 和 score 必填,noul 可省略。 |
type |
用途 | criteria 格式 |
|---|---|---|
noul |
二元判断 | 可省略。 |
choice |
从多个命名选项中选择 | 非空对象,键为选项 ID、值为选项说明;最多 255 个选项。 |
score |
按有序等级评分 | 包含 2 至 10 个等级说明的数组,顺序从低到高。 |
同一请求可以在 questions 中放入多个不同类型的问题。问题 ID(例如 route)由调用方定义,建议使用稳定且便于程序读取的英文标识。
JavaScript 调用
Section titled “JavaScript 调用”const response = await fetch('https://ai.j1ao.vip/v1/systemone', { method: 'POST', headers: { Authorization: `Bearer ${process.env.OPENAI_API_KEY}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ model: 'jev-1.13-free', state: { message: '客户反馈信用卡被重复扣款。' }, questions: { route: { type: 'choice', instructions: '选择负责处理该问题的团队。', criteria: { billing: '支付、账单和退款问题', support: '技术故障和产品使用问题', }, }, }, }),})
if (!response.ok) { throw new Error(`${response.status}: ${await response.text()}`)}
const result = await response.json()console.log(result)System One 的响应由 TypeSafe 上游以 JSON 返回,并由网关原样转发。它不是 OpenAI Chat Completions 响应,因此不要读取 choices[0].message.content。
调用方应按照请求中的问题 ID,从响应的对应问题结果中读取判断值;响应还可能包含 usage.input_tokens 和 usage.output_tokens。实际字段以当前接口响应为准,接入时建议先输出一次完整 JSON 再完成字段映射。
TypeSafe channels support only /v1/systemone
Section titled “TypeSafe channels support only /v1/systemone”请求被发送到了 /v1/chat/completions 等其他路径。把地址改为:
https://ai.j1ao.vip/v1/systemone并将 OpenAI messages 请求体改成本文的 state + questions 格式。
/v1/systemone requires a TypeSafe channel
Section titled “/v1/systemone requires a TypeSafe channel”当前 model 没有路由到 TypeSafe 渠道。重新查询 GET /v1/models,确认使用的是已授权的 Jev 模型 ID;如果模型存在但仍报错,请联系管理员检查模型映射和渠道状态。
不能直接使用 OpenAI SDK 的聊天方法
Section titled “不能直接使用 OpenAI SDK 的聊天方法”chat.completions.create() 固定调用 /v1/chat/completions,不适用于 Jev。请使用 fetch、curl 或其他能够向 /v1/systemone 发送自定义 JSON 的 HTTP 客户端。

