Documentation

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 はこのページと同じリクエスト形式を使用します。