先線上體驗,再建立自己的 key
打開 jevmodel.org 線上體驗,先測試一個範圍很窄的判斷。結果可用後登入帳戶控制台,建立 API key,並在伺服器端保存為環境變數 JEVMODEL_API_KEY。
答案集合要小而穩定。欄位名按你的程式碼要走的分支來命名,而不是一個模糊的主題。
import os
import requests
response = requests.post(
"https://jevmodel.org/v1/systemone",
headers={"Authorization": f"Bearer {os.environ['JEVMODEL_API_KEY']}"},
json={
"state": "I was charged twice. Please fix this ASAP.",
"model": "jev-latest",
"questions": {
"category": {
"type": "choice",
"instructions": "What is this ticket about?",
"criteria": {"billing": "payments", "technical": "broken product", "other": "other"},
},
},
},
timeout=15,
)
print(response.json()) HTTP 介面約定
已經在發送這種請求的開源儲存庫 都列在 Jev 專案目錄裡。
向 https://jevmodel.org/v1/systemone 發送一個 POST 請求。model 可用 jev-latest 或固定版本;state 可以是字串或 JSON 值,序列化後最多 8,000 字元;questions 是包含 1–8 個具名 choice、score 或 noul 問題的物件。
- jevmodel.org 對每個 API key 的限制是每分鐘 120 次請求。
- 每次成功請求按輸入 token 扣費;上游失敗的請求會退款,重試時建議加上 Idempotency-Key 請求標頭。
- 在程式碼裡設定信賴度閾值。Jev 讓分支更簡單,但並非零風險。
curl -X POST https://jevmodel.org/v1/systemone \
-H "Authorization: Bearer $JEVMODEL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "jev-latest",
"state": "Customer: I was charged twice and I am furious.",
"questions": {
"topic": {
"type": "choice",
"instructions": "What is the issue about?",
"criteria": { "billing": "money problems", "bug": "broken product" }
},
"urgent": {
"type": "noul",
"instructions": "Escalate to a human now?"
}
}
}' 拿到答案之後怎麼做
在應用程式碼裡分支。如果 topic 是 billing 且 escalate.noul 超過你的閾值,就轉人工;如果信賴度低,把同樣的狀態交給更大的模型或人工審核。記錄輸入、輸出、版本和下游結果,才能判斷 Jev 是真的在幫你,還是只是「看起來很果斷」。
常見問題
Jev API 怎麼呼叫?
在 jevmodel.org 帳戶控制台建立 key,保存為 JEVMODEL_API_KEY,再使用 Bearer 驗證向 https://jevmodel.org/v1/systemone POST JSON。
正式環境應該固定哪個 Jev 模型 ID?
閾值調好之後,正式環境用 jev-1.13.0。jev-latest 和 jev-preview 目前指向同一版本,但別名將來可能變動。
寫程式碼前可以先測試嗎?
可以。先使用 jevmodel.org 線上體驗,它和 API 使用相同的問題類型;驗證請求結構後再建立 key。
Jev 支援中文嗎?
TypeSafe 文件說明英文是主要訓練語言、準確度最高;中文等其他語言也能處理,但效果不如英文。中文情境上線前請用真實資料測試,並關注信賴度。