TypeSafe Jev / System One API
TypeSafe Jev 用于对文本、结构化数据或图片做概率化判断。你可以在一次请求中提出多个 noul、choice、score 问题;Jev 1.14 还支持 Box 定位。它不是通用聊天补全接口,也不提供 Chat 工具调用。
端点、认证与固定模型
POST https://api.icodeeasy.cc/v1/systemone
Authorization: Bearer <YOUR_API_KEY>
Content-Type: application/json
仅公开 TypeSafe Jev 1.14,固定模型 ID 为 jev-1.14.0;不公开会随发布漂移的别名:
| 模型 ID | 图片输入 | Box | 262K 长上下文 |
|---|---|---|---|
jev-1.14.0 | 支持 | 支持 | 支持 |
jev-latest、jev-preview 和其它模型名不属于本接口的公开目录。响应为非流式 JSON;不要发送 stream,也不要把 System One 当作 /v1/chat/completions、/v1/messages 或 /v1/responses 使用。
文本与结构化 state
state 可以是字符串、对象或数组。每个问题由你命名,响应会在 answers 中沿用相同名称和题型。以下请求同时演示是非判断、固定选项和有序评分:
curl --request POST 'https://api.icodeeasy.cc/v1/systemone' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"model": "jev-1.14.0",
"state": "I was charged twice for my subscription. Please refund the extra charge today.",
"questions": {
"is_billing": {
"type": "noul",
"instructions": "Is this message about billing?"
},
"department": {
"type": "choice",
"instructions": "Which team should handle this request?",
"criteria": {
"billing": "Duplicate charges, invoices, refunds, and payment failures",
"technical": "Product functionality and technical troubleshooting",
"other": "Requests outside billing and technical support"
}
},
"urgency": {
"type": "score",
"instructions": "How urgent is the request?",
"criteria": [
"No deadline and no immediate impact",
"Needs attention soon but service remains usable",
"Immediate financial or service impact requires urgent handling"
]
}
}
}'
noul 返回 0 到 1 的是/否概率;choice 返回选项及概率分布;score 返回在等级之间的位置、概率分布和置信信息。概率或置信度不等于事实保证,业务动作应按自己的样本设定阈值。响应还包含实际 model 和 usage.input_tokens / usage.output_tokens;请校验模型、答案键与题型后再使用结果。
SDK 兼容说明
使用官方 TypeSafe SDK 进行文本调用时,必须显式设置 compression: false,不要依赖默认压缩协商。当前图片请求只支持本文所示的 JSON + Base64 形式,不支持 SDK 默认的 multipart 图片上传。使用图片时请按本文构造 HTTP 请求,不要直接使用 SDK 的图片对象或默认文件上传流程。
PNG / JPEG 图片输入
图片请求必须显式携带 TypeSafe-Danger-Zone-Images: true。下面用 Base64 JSON 发送一张 PNG;photo-001 是本次请求内的引用,必须在 state、问题说明或判断条件中被引用。JPEG 可将 format 设为 jpg 或 jpeg。
curl --request POST 'https://api.icodeeasy.cc/v1/systemone' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--header 'TypeSafe-Danger-Zone-Images: true' \
--data '{
"model": "jev-1.14.0",
"state": {"photo": "photo-001"},
"assets": {
"photo-001": {
"type": "image",
"format": "png",
"data_base64": "<BASE64_PNG_WITHOUT_DATA_PREFIX>"
}
},
"questions": {
"mug_visible": {
"type": "noul",
"instructions": "Is there a coffee mug in `photo`?"
}
}
}'
Base64 不带 data: 前缀或换行。图片须为静态 PNG/JPEG,单文件解码后不超过 16 MiB,宽和高均在 280–1568 像素之间;整个请求体上限为 32 MiB。图片不会自动缩放到合规尺寸,任一资源不合规时整个请求失败。图片 Token 计入 usage.input_tokens。
Box 定位(仅 Jev 1.14)
Box 仍属实验能力。请求必须带 TypeSafe-Danger-Zone-Images: true,并使用公开固定版本 jev-1.14.0。Box 没有 criteria,建议同时用一个 noul 判断目标是否存在:
{
"model": "jev-1.14.0",
"state": {"photo": "photo-001"},
"assets": {
"photo-001": {
"type": "image",
"format": "jpeg",
"data_base64": "<BASE64_JPEG_WITHOUT_DATA_PREFIX>"
}
},
"questions": {
"mug_visible": {
"type": "noul",
"instructions": "Is there a coffee mug in `photo`?"
},
"mug": {
"type": "box",
"instructions": "the coffee mug in `photo`"
}
}
}
将上述 JSON 作为请求体发送到同一端点,并携带认证、JSON 与 Images 三种请求头。Box 答案的 top、bottom、left、right 是相对于图片宽高的 0–1 坐标;乘以像素宽高即可换算。目标不存在时仍可能返回一个框,因此应结合存在性判断和置信信息,不要把 Box 当作精确检测结果。
262K 长上下文
Jev 1.14 支持加长上下文。默认限制为每请求 64K、每问题 32K;需要 262K 档时,为该请求显式添加:
TypeSafe-Danger-Zone-Long-Context: true
curl --request POST 'https://api.icodeeasy.cc/v1/systemone' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--header 'TypeSafe-Danger-Zone-Long-Context: true' \
--data '{
"model": "jev-1.14.0",
"state": "<LONG_DOCUMENT_OR_STRUCTURED_RECORD>",
"questions": {
"has_early_termination": {
"type": "noul",
"instructions": "Does the state include a clause allowing either party to terminate early?"
}
}
}'
启用后每请求和每问题的上下文均为 262K。长上下文不加收单价,但通常更慢,超长输入和非英文内容的判断质量需要用你的真实数据评估;不要把短文本成功当作 262K 边界或首尾信息均可恢复的保证。
计费与实验边界
- 官方基础价为输入 $0.042 / MTok;当前站内有效价为 ¥0.30 / MTok,输出为 0。计算公式为
usage.input_tokens × ¥0.30 / 1,000,000。 - 输出 Token 会在
usage中返回,但目前免费;没有独立缓存读写价格,也没有长上下文加价。图片输入同样按输入 Token 计费。 - System One 是非流式结构化判断 API,不支持 Chat 工具调用,也不进入 Chat playground。
- 图片与 Box 为实验能力,请求格式、答案和限制可能随版本调整;Box 仅属于 1.14。上线前请用自有图片、语言、阈值和失败样本验证。
- 长上下文不等于无限输入;仍受上下文、请求体、图片尺寸和速率限制。请保留固定版本、响应模型、答案结构与
usage校验。