JEV怎么使用?官网入口是什么?

先说结论

  • 官网入口是 typesafe.ai,但实际开发入口建议直接落到 docs.typesafe.aiAI 编码工具可以先读 docs.typesafe.ai/llms.txt
  • 最短上手路径按官方 Quick start 是:Playground 试 → 控制台拿 key → cURL 打通 → SDK 落地。
  • 核心 API 事实:POST https://api.typesafe.ai/v1/systemonemodel"jev-latest"
  • Jev 是 TypeSafe 的 System One 模型,不是普通聊天补全模型;请求要提供 statequestions,答案按你给的问题 id 原样返回。
  • 生态入口要分清:Netlify、LiteLLM 的公告是平台方/集成方一手信息,不是 TypeSafe 官方文档;Vercel AI Gateway 本次未能核实到可引链接。

官方入口:按三个用途收好

我建议只记三个“根”,其余都能从文档索引展开:

官方 llms.txt 自己也写明:

Fetch the complete documentation index at: https://docs.typesafe.ai/llms.txt Use this file to discover all available pages before exploring further.

下面是与“最短上手”直接相关的入口清单:

入口 链接 用途
官网 typesafe.ai 产品首页
官方文档 docs.typesafe.ai 文档首页
llms.txt docs.typesafe.ai/llms.txt 给 agent/人枚举文档页
Playground console.typesafe.ai/playground 不写代码先试
API keys console.typesafe.ai/keys 拿 key
API Reference docs.typesafe.ai/api HTTP 字段与请求/响应
SDK 总览 docs.typesafe.ai/sdk Python/JS SDK 入口
Python SDK docs.typesafe.ai/sdk/python.md Python 安装与用法
JavaScript SDK docs.typesafe.ai/sdk/javascript.md JS/TS 安装与用法
Agent skill docs.typesafe.ai/agent-skill 给 coding agent 装技能

这些链接来自 TypeSafe 官方文档、控制台或 SDK 页面,属于一手来源;我按工程使用习惯把它分成“产品入口、文档入口、控制台入口”,这是本文的整理方式,不是官方目录规定。

最短上手:从零到第一次调用

官方 Quick start 的定位很清楚:

Prefer to just dive in? Here’s everything you need to get started immediately.

第一步:Playground 先试

打开 Playground,把任意文本作为 state 粘进去。官方示例如下:

Hi, I've been trying to connect my Stripe account for 3 days and the integration keeps failing. I'm losing sales. Please help ASAP.

然后加一个 Noul 问题,比如:Does this message express urgency?。接着可以再混加 Choice、Score,一次请求看多个结果。这是官方 Quick start 的试法。

第二步:控制台拿 key

API keysTYPESAFE_API_KEY

第三步:cURL 打通

用 HTTP API 先确认网络、鉴权和字段都可通。这里我按官方 API Reference 的示例整理一个最小可复跑命令:

curl -X POST https://api.typesafe.ai/v1/systemone 
  -H "Authorization: Bearer $TYPESAFE_API_KEY" 
  -H "Content-Type: application/json" 
  -d '{
    "state": "Help! My payouts have been failing for 3 days.",
    "model": "jev-latest",
    "questions": {
      "is_urgent": {
        "type": "noul",
        "instructions": "Does this convey urgency?"
      }
    }
  }'

这里的 statemodelquestions 都是官方 API Reference 写明必填的字段。model"jev-latest",API Reference 原文是:

Use “jev-latest”, TypeSafe’s flagship model.

注意不要把请求体写成聊天 messages,因为 Jev 不是聊天补全接口。

第四步:SDK 落地

官方 SDK 页面写明,客户端 SDK 会返回类型化问题和答案,并带默认重试策略。Python 可这样安装:

pip install typesafe-sdk

官方 Quick start 给的 Python 示例如下,我按原文保留字段形状,不加额外参数:

from typesafe_sdk import Choice, Noul, Score, TypeSafeClient

client = TypeSafeClient()

ticket = "Hi, I've been trying to connect my Stripe account for 3 days and the integration keeps failing. I'm losing sales. Please help ASAP."

response = client.system_one(
    state=ticket,
    questions={
        "department": Choice(
            instructions="Which team should handle this",
            criteria={
                "billing": "Payment or subscription issues",
                "technical": "Bugs or integration problems",
                "sales": "Pricing or account questions",
            },
        ),
        "frustration": Score(
            instructions="How frustrated the customer appears",
            criteria=[
                "Calm, just stating facts",
                "Frustrated but civil",
                "Very angry, strong language",
            ],
        ),
        "is_urgent": Noul(
            instructions="The message conveys urgency or time-sensitivity",
        ),
    },
)

print(response.answers["department"].choice)  # "technical"
print(response.answers["frustration"].score)  # 1.0
print(response.answers["is_urgent"].noul)     # 1.0

从这个官方示例可以看到:Scorecriteria 是数组,从低到高描述;Choicecriteria 是选项到描述的 map;Noul 这里只有 instructions。三类答案分别读 .choice.score.noul

API 形状:别在这几个字段上出错

官方 API Reference 给出的评估端点如下:

POST https://api.typesafe.ai/v1/systemone
Authorization: Bearer <API_KEY>
Content-Type: application/json

请求顶层三件套是 statemodelquestionsstate 可以是 string/object/array,questions 是一个 map,key 由你命名,回答会按同一 key 返回。API Reference 也写明,问题 id 不会发给底层模型,也不参与推理。

三种问题类型返回形状,按本次写作工单约束列成表,方便审稿:

问题类型 criteria 形状 答案字段
choice map:选项 → 描述 choiceprobabilitiesconfidence
score 有序数组,从低到高 scorelegendprobabilitiesconfidence
noul 可选 true/false 描述 noul(0~1)

其中 legend 字段按本次写作工单约束补入;choice/probabilities/confidencescore/probabilities/confidence 的返回语义可以在官方 Primitives 与 API 文档中核到。

特别强调:scorecriteria 是有序数组。API Reference 原文写明:

An ordered array of level descriptions.

另外两个官方数据:Choice 最多 255 个选项;Score 至少 2 级、最多 10 级。API Reference 原文分别写明:

You can have a maximum of 255 options per Choice.

A Score should have at least two levels; the API accepts up to 10.

noul 按约束只返回一个 0~1 的 noul 值,没有 confidence,也没有 probabilities。写伪代码时不要自造 levels=threshold= 这类参数;拿不准就回看官方 Primitives 或 Quick start 示例。这是本次写作工单给的字段约束,不是我从源码里猜的。

生态入口:平台方与集成方,不是 TypeSafe 官方文档

现在能看到两类可核实的生态入口,都必须标成“非 TypeSafe 官方文档”:

  • Netlify AI Gateway:官方 changelog 发布 TypeSafe Jev 接入 AI Gateway,零配置在 Netlify Functions 里使用 @typesafe-ai/sdk。原文写道:

TypeSafe’s Jev model is now available through Netlify’s AI Gateway with zero configuration required.

其中提到的约 32,000 tokens、约 150,000 字符、70–500ms 等数据属于 Netlify 平台公告数据,不是 TypeSafe 官方文档数据。

  • LiteLLM:官方博客文章 是 LiteLLM 集成方的一手发布,不是 TypeSafe 官方文档。标题为 TypeSafe Jev on LiteLLM,说明 LiteLLM 侧有接入动作。

Vercel AI Gateway 也常被列入生态入口,但这次我拿到的来源里没有 Vercel 公告链接,不能编 URL,我把它放进“这次没核实的”。

我的判断与落地清单

以下是我的建议,不是官方要求:

  • 要把 Jev 当“决策模型”用,不要当聊天模型用。先确定 state 里放什么上下文,再确定 questions 里放哪几类问题。
  • 给 coding agent 用时,优先读 llms.txt,再按需打开 Primitives、API Reference、Agent skill。因为 llms.txt 能枚举官方页面,适合避免“脑补某功能是否存在”。
  • 接入顺序建议:Playground 验证问题设计 → cURL 验证 API → SDK 落进项目。不要一上来就封装一堆阈值;先用 noul 的 0~1 值或 confidence 观察分布。
  • 遇到“某功能官方是否支持”,去 llms.txt 找页面再下结论。这是本文的关键建议,优先级高于集成方公告。

这次没核实的

  • Vercel AI Gateway 接入 Jev 的官方公告链接:本次未能核实到可引用的 Vercel 一手链接。
  • typesafe.ai 根域的首页文案、产品价格、控制台具体注册流程:本文没有展开核实,只把官方入口列出。
  • Netlify changelog 中提到的 jev-1.13.0 当前别名、32k tokens、70–500ms 等数据:我没有在 TypeSafe 官方文档中二次核实,只能标为 Netlify 平台公告数据。
  • Python/JavaScript SDK 的全部版本兼容与 retry 默认参数:SDK 页面只总览到“自动 retry”,更细的默认值我未逐条复读。

参考来源

评论区

0 条评论

登录后可评论。

小猫跳舞 14 阅读