Jev API
Jev は、状態オブジェクトと質問の集合から構造化された判定を行います。OpenAI 互換 API や Anthropic 互換 API とは別の専用 API パスを使用し、分類、スコアリング、信頼度を含む評価に利用できます。
エンドポイントと認証
POST https://<LLMPOOL_HOST>/jev/v1/systemone
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
API キーは Board の API キー で作成します。model には Models ページに表示される Jev モデル ID を指定してください。上流プロバイダーのモデル名は指定しません。
リクエスト形式
リクエストには model、state、questions が必要です。state と questions は空でない JSON オブジェクトでなければなりません。内部のフィールドは選択した Jev モデルが解釈できる形式でそのまま渡されます。
curl -X POST "https://<LLMPOOL_HOST>/jev/v1/systemone" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "JEV_MODEL_FROM_MODELS_PAGE",
"state": {
"user_message": "返金を申請するにはどうすればよいですか?",
"assistant_reply": "注文詳細ページから返金申請を送信してください。"
},
"questions": {
"correctness": {
"type": "choice",
"instructions": "回答がユーザーの質問を正しく解決しているか判定してください。",
"criteria": {
"pass": "回答が正確かつ完全で、質問を直接解決している。",
"fail": "誤りがある、重要な情報が不足している、または質問を解決していない。"
}
}
}
}'
questions には複数の判定項目を含められます。各項目は通常 type、instructions、任意の criteria を含みます。利用できる形式は選択した Jev モデルの Questions API に従います。
レスポンス形式
LLMPool は Jev が返す動的な answers を保持し、レスポンスの model を Models ページのクライアント向けモデル ID に置き換えます。成功レスポンスには少なくとも answers と usage.input_tokens が含まれます。
{
"id": "jev_request_xxx",
"model": "JEV_MODEL_FROM_MODELS_PAGE",
"answers": {
"correctness": {
"type": "choice",
"choice": "pass",
"confidence": 0.98
}
},
"usage": {
"input_tokens": 128,
"output_tokens": 0,
"total_tokens": 128
}
}
上流が usage.output_tokens を返さない場合は 0 として扱います。id、provider、usage.cost などは上流メタデータとして保持されます。Jev の料金は入力トークンを基準とし、現在の価格と請求額はアカウントページで確認できます。
Playground
Board にログインし、Playground → Jev を開きます。API キーとモデルを選択し、ユーザーメッセージ、アシスタントの回答、判定項目を入力すると、構造化された結果を確認できます。Playground はこのページと同じリクエスト形式を使用します。