文章生成を行わず、判断と確率のみを出力する「System 1 決定モデル」の基本仕様と構文リファレンス。
従来のLLM(GPT-4、Claudeなど)はテキストをトークン単位で自己回帰生成する「System 2」的な推論モデルです。これに対してJevは、入力された文脈(State)に対して直接「判定・スコア」と「キャリブレーションされた確率」を出力するSystem 1特化型モデルです。
| 比較項目 | 従来の LLM-as-a-Judge | Jev (Decision Model) |
|---|---|---|
| 出力形式 | 自由テキスト(推論理由+判定結果) | 厳密に型付けされた値(Boolean / Enum / Score)+確率 |
| レイテンシ | 1,500ms 〜 5,000ms+ | 70ms 〜 500ms |
| コスト | ~$10.00 / 1M tokens | ~$0.042 / 1M tokens(200倍以上安価) |
| 出力の安定性 | フォーマット崩れや幻覚(Hallucination)の懸念あり | 常に厳密な型が返る(パース不要) |
| 信頼度の把握 | 主観的な文章理由から推測 | 0.0〜1.0 の確率(Probability)が直結 |
Jevに対する問い合わせは、以下の3つのプリミティブのいずれか、または組み合わせで構成されます。
条件が成立するか否かを判定し、真である確率(0.0 〜 1.0)を返します。
# 概念シグネチャ
noul(question: str, state: str | dict) -> Probability (float: 0.0 ~ 1.0)
# 例: "ユーザーの入力に個人情報が含まれているか?"
# 戻り値: 0.94 -> 94%の確からしさで True
定義済みの選択肢群の中から最も適切な1つを選び、全選択肢の確率分布を返します。
# 概念シグネチャ
choice(question: str, options: list[str], state: str | dict) -> {selected: str, probabilities: dict[str, float]}
# 例: "問い合わせの意図はどれか?"
# options: ["billing", "technical_support", "feature_request"]
# 戻り値: {"selected": "billing", "probabilities": {"billing": 0.88, "technical_support": 0.09, "feature_request": 0.03}}
段階的・順序付きの基準(ルーブリック)に基づき、数理的スコアと分布を返します。
# 概念シグネチャ
score(rubric: list[RubricCriterion], state: str | dict) -> {score: int | float, distribution: list[float]}
# 例: 回答の具体性を1〜5点で評価するルーブリック
# 戻り値: {"score": 4, "confidence": 0.82}
全トラフィックをJevで受け、確信度(Probability)が閾値(例: 0.85)を下回るグレーゾーンの案件のみを高価な生成型LLM(System 2)にルーティングするアーキテクチャです。
# カスケード判定の疑似コード
verdict, probability = jev.evaluate(question, state)
if probability >= 0.85:
return verdict # 超高速・低コストで即決
else:
return fallback_llm_judge(state) # 難問のみ詳細推論モデルへ