リファレンス

Jev API Docs

このサイトの Jev 判断エンドポイントのリファレンスです。Jev は TypeSafe AI の System One モデルで、このサイトはそれへのアクセスを提供する独立した API サービスです。一つの状態と質問マップを送ると、それぞれに型付きの答えが返ります。

更新

エンドポイント

このホストへ POST /api/v1/decisions を送ります。chat-completions もストリームもありません。GET /api/v1/models がモデル id を返します。

POST https://jev-api.org/api/v1/decisions
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

認証

ダッシュボードのキーを Authorization: Bearer に置きます。無い、または拒否されたキーは 401 です。プレイグラウンドは実行時にログイン中のアカウント用キーを作れます。

クイックスタート

JEV_API_KEY にダッシュボードのキーを設定し、下のリクエストを送ります。新規アカウントには 2 クレジットがあり、2 回の成功呼び出しに足ります。

curl https://jev-api.org/api/v1/decisions \
  -H "Authorization: Bearer $JEV_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "jev-1.13",
  "state": "Thanks for the refund. Still annoyed it took three emails.",
  "questions": {
    "sentiment": {
      "type": "choice",
      "instructions": "What is the overall sentiment of this message?",
      "criteria": {
        "positive": "Satisfied or thankful overall.",
        "mixed": "Both satisfied and unhappy.",
        "negative": "Unhappy overall."
      }
    },
    "needs_follow_up": {
      "type": "noul",
      "instructions": "Should a person reply to this message?"
    }
  }
}'

リクエスト本文

model は jev-1.13 か jev-latest。state は文字列、JSON オブジェクト、テキスト配列で 60,000 文字まで。questions は 1 から 6 個の snake_case id のマップです。id は答えが戻るラベルで、質問ではありません。質問文は instructions に 1 から 2,000 文字のテキストで書きます。

{
  "model": "jev-1.13",
  "state": "Thanks for the refund. Still annoyed it took three emails.",
  "questions": {
    "sentiment": {
      "type": "choice",
      "instructions": "What is the overall sentiment of this message?",
      "criteria": {
        "positive": "Satisfied or thankful overall.",
        "mixed": "Both satisfied and unhappy.",
        "negative": "Unhappy overall."
      }
    },
    "needs_follow_up": {
      "type": "noul",
      "instructions": "Should a person reply to this message?"
    }
  }
}

質問の型

Noul

type noul は instructions だけです。答えの noul は、その文が真である確率で 0 から 1 です。別の confidence フィールドはありません。noul の質問に criteria を送っても、このエンドポイントは無視します。

Choice

type choice は instructions と criteria が必要です。2 から 8 個の snake_case の選択肢 id と、それぞれ最大 300 文字の説明です。答えには choice、各選択肢の probabilities、confidence があります。

Score

type score は instructions と、低い順に並べた 2 から 10 個の段階説明が必要です。答えには score、段階の legend、確率、confidence があります。

応答

成功時の本文には model、質問 id をキーにした answers、input_tokens と output_tokens を持つ usage、credits_used があります。jev-latest を送っても model は jev-1.13 を報告します。以下はクイックスタートのリクエストへの応答例で、usage は省略しています。

{
  "model": "jev-1.13",
  "answers": {
    "sentiment": {
      "type": "choice",
      "choice": "mixed",
      "probabilities": { "mixed": 0.79, "negative": 0.2, "positive": 0.01 },
      "confidence": 0.61
    },
    "needs_follow_up": { "type": "noul", "noul": 0.83 }
  },
  "credits_used": 1
}

確率と confidence の読み方

Noul は instructions の文が真である確率です。Choice と Score は各選択肢・段階の確率に加えて confidence を返します。

次点は人手へ渡す合図です。confidence が低い、または二つの選択肢が近いときは、その件を人へ渡すか、より具体的な質問を一つ足します。近い結果を見る前にしきい値を下げないでください。

制限

項目このエンドポイント
エンドポイントPOST /api/v1/decisions、Bearer キー
モデルjev-1.13(jev-latest はエイリアス)
呼び出しあたりの質問数1 から 6
Choice の選択肢数2 から 8
Score の段階数2 から 10、低い順
State文字列、JSON オブジェクト、配列、60,000 文字まで
Instructionsテキスト、1 から 2,000 文字
課金成功した呼び出しごとに 1 クレジット。失敗は無料
ストリーミング非対応

TypeSafe の API との違い

TypeSafe AI は POST https://api.typesafe.ai/v1/systemone で TypeSafe キーにより Jev を提供し、入力トークン課金です。こちらのリクエスト本文の形は同じで、model、state、noul/choice/score 型の questions です。変わるのは次の点です:

  • パスとキー:jev-api.org の POST /api/v1/decisions で、キーはこのサイトのダッシュボード発行です。TypeSafe のキーはここでは使えず、このサイトのキーも TypeSafe では使えません。
  • モデル id:jev-1.13 か jev-latest を送ります。jev-1.13.0 のようなバージョン付き id は 422 です。
  • 制限:呼び出しごとに質問は 1 から 6、Choice 選択肢は 2 から 8。TypeSafe の文書では最大 255 の Choice 選択肢です。
  • フィールド:instructions はテキスト必須で、各 Choice 選択肢には説明が必要です。TypeSafe はオブジェクトや配列の instructions、null の選択肢説明も受け付けます。
  • 課金:成功した呼び出しごとに 1 クレジット。トークン数に関係なく。

エラー

  • 401 — API キーが無い、または拒否された。
  • 402 — キーは有効だが残高が足りない。上流の失敗ではクレジットを使いません。
  • 422 — 本文の検証失敗。メッセージが項目を示します。
  • 429 — 判断サービスがレート制限中です。後で再試行してください。
  • 502 — 判断サービスが答えを返しませんでした。クレジットは使いません。

モデル id

この API は jev-1.13 を提供します。コードのしきい値が一つの分布に依存するならその id を送ります。この API では jev-latest は同じ id の別名です。