DEVELOPER GUIDE

接入你的第一个决策

本站使用指南:运行、检查、接入、计量。

Jev 由 TypeSafe AI 提供,本站是独立工作台与 API 服务。限定答案仍可能判断错误,请用自己的数据验证。

快速开始

登录后免费运行配方,调整问题并保存配置,再打开 Code 标签。创建本站 API 密钥并充值积分后,在你的服务器上运行代码。

export JEV_API_KEY="YOUR_API_KEY"

curl --fail-with-body 'https://jevaimodel.net/v1/systemone' \
  -H "Authorization: Bearer $JEV_API_KEY" \
  -H "Content-Type: application/json" \
  --data-raw '{
  "model": "typesafe/jev-1.13",
  "state": "I was charged twice for order A-4471. Please refund the duplicate payment.",
  "questions": {
    "route": {
      "type": "choice",
      "instructions": "Which team should handle this ticket? Use other when no option fits.",
      "criteria": {
        "billing": "Payments, charges and refunds",
        "technical": "Bugs and product errors",
        "account": "Login and account access",
        "other": "None of these teams"
      }
    }
  }
}'

API key 应保存在服务端,不应嵌入浏览器代码或提交到代码仓库。

API 参考

POST https://jevaimodel.net/v1/systemone

发送含 model、state、questions 的 JSON,使用本站密钥作为 Authorization: Bearer。成功响应 code 为 0,答案位于 data.result.answers。官方服务方 SDK 的响应格式不同。

字段类型与含义
model使用 typesafe/jev-1.13;jev-latest 别名也解析为该模型。
state非空文本、JSON 对象或数组;所有问题共享此上下文。
questions1–8 个具名问题。ID 以字母开头,后接字母、数字、_ 或 -,最多 64 字符。

choice

在 criteria 中定义 2–255 个具名选项。响应包含 choice、probabilities 和 confidence。为不符合任何类别的情况设置兜底选项。

score

在 criteria 中定义 2–10 个有序等级。score 的范围从 0 到最后一个下标,可包含小数;probabilities 描述各等级的概率。

noul

是非问题返回 noul,即 0–1 范围内的 P(yes)。可选的 yes、no 文本用于明确判断标准;此类型没有独立 confidence 字段。

概率是模型对候选答案的输出分布,confidence 是另一种信号,两者都不等于实测准确率。Noul 的阈值使用 max(P(yes), 1 − P(yes)),0.01 也可能代表明确的“否”。请在规则对比中使用带标签样例验证阈值。

响应示例,非实时测量

{
  "code": 0,
  "message": "ok",
  "data": {
    "requestId": "example-request-id",
    "creditsUsed": 1,
    "historySaved": true,
    "result": {
      "model": "typesafe/jev-1.13",
      "answers": {
        "route": {
          "type": "choice",
          "choice": "billing",
          "probabilities": {
            "billing": 0.94,
            "technical": 0.02,
            "account": 0.02,
            "other": 0.02
          },
          "confidence": 0.9
        }
      },
      "usage": {
        "input_tokens": 1000,
        "output_tokens": 0
      },
      "elapsedMs": 250
    }
  }
}

延迟记录本站服务端处理时间,包含请求上游服务的耗时,不含浏览器到本站的网络往返,不代表性能保证。

计费与限制

本站接受文本或 JSON,最多 8 个问题,完整请求上限 32 KiB。网页运行每 3 秒最多尝试一次。API 积分 = max(1, ceil(输入 tokens × 420 / 1,000,000)),输出免费。API 请求需要正余额,最终用量也需在剩余余额内。

400 输入无效 · 401 需登录或密钥 · 402 积分不足 · 413 请求过大 · 429 按 Retry-After 等待 · 502 服务方错误 · 503 服务不可用。网络中断导致结果不明时,先检查调用记录再重试。

成功 API 请求最低 1 积分,输出 tokens 不计费。服务方失败请求不扣费。估算不含税,实际按返回用量扣费;购买积分包的金额另计。

数据与历史

已存配置及网页请求正文与结果仅你的账户可见。API 历史只记录元数据、token 用量与积分,不存请求内容。浏览器草稿仅保存在本地。

场景配方

用同一批样例比较两版规则

先从工作台当前规则捕获 A,返回工作台修改问题后再捕获 B。导入最多 25 条带标签样例,即可比较两版规则。每条样例的 state 会替换捕获时的 state。

{"id":"refund","state":"Please refund my duplicate payment.","expected":{"route":"billing"}}
{"id":"login","state":"My reset link has expired.","expected":{"route":"account"}}

1–25 条样例。JSONL 每行一个 {id, state, expected};CSV 列为 id,state,expected,expected 是以问题 ID 为键的 JSON 对象。 匹配率以成功请求的标注答案为分母,失败另计。Noul 标签为 true/false(P(是) ≥ 0.5);Score 使用运行前设定的误差容限。

模型参考资料