開発者 / JevModel
LLM-as-a-Judge:自由形式プロンプト、ルーブリック採点、棄権付きの型付きジャッジ
AI出力をLLMで評価する方法:自由形式プロンプト vs ルーブリック採点 vs 型付きScore/はい・いいえジャッジ、位置・冗長バイアス、人手ラベルでの校正、使うべきでない場面。
最終更新:
要点:ジャッジ自体も評価が必要な分類器である
- LLM-as-a-judgeとは、言語モデルに別システムの出力を採点させることです。合否、ルーブリックの段階、2つの回答のどちらが良いか。人が読める量を超える出力を評価できます。
- ジャッジには既知のバイアスがあります。先に示された回答、長い回答、自分と似た文体の回答を好むことがあります。順序を入れ替え、長さに中立な基準を書き、評価対象とは別のモデルを使ってください。
- ジャッジを信頼するのは、自社サンプルで人手ラベルと一致してからです。型付きジャッジ(順序付きルーブリックはJevModelのScore、はい/いいえの確率はNoul)なら、不確かな採点を推測の平均にせず人へ戻せます。
LLM-as-a-judgeとは何で、実際に何を測るのか?
LLM-as-a-judgeは評価パターンです。モデルがタスク、テスト対象システムの出力、場合によって参照回答を読み、採点を返します。このパターンを名付けた研究(Zheng ほか、2023、「Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena」)は、ペア比較、単一回答の採点、参照付き採点の3形式を挙げています。どの形式でも、ジャッジが測るのは「あなたが書いた基準との一致を、別のモデルが解釈したもの」です。基準と人手ラベルが真実性・ユーザー満足・事業成果に結び付いていない限り、それらは測れません。だからジャッジ自体も分類器と同様に評価が必要です。本ページは他のAI出力(チャット回答、要約、RAG応答、エージェントの手順)の評価を扱います。JevModelのワークフロー自体をラベルで評価するにはevaluationを参照してください。
Evaluate a Jev workflow自由形式のジャッジプロンプト vs ルーブリック採点 vs 型付きジャッジ
3つの選択肢の主な違いは、出力の安定性と不確実性が見えるかどうかです。自由形式は始めやすく、ルーブリックは実行間で採点を比較可能にし、型付きジャッジは固定スキーマとしきい値を設定できる確率を加えます。下表は工学的なトレードオフの比較で、ジャッジモデルの順位ではありません。
Choice, Score, and NoulJev vs GPT・Claude:判断層を選ぶ| 観点 | 自由形式ジャッジ | ルーブリック採点(1〜5など) | 型付きジャッジ(JevModel Score/Noul) |
|---|---|---|---|
| 出力 | 解析が必要な文章の判定 | 数値(多くは説明付き) | 順序付き段階上のScore値、または0〜1のNoulはい/いいえ確率 |
| 主なリスク | 実行ごとに基準が黙って変わる | 中間に点数が集まる。アンカーがないと段階がずれる | 段階記述の質に依存。長い出力は抜粋が必要 |
| 棄権 | 組み込みなし | 通常なし。3点が「分からない」の意味になりがち | 中間付近のNoul確率や合否段階の間のScoreを、コード側でレビューキューへ |
LLMジャッジにはどんなバイアスがあり、どう減らすか?
Zhengほか(2023)は、設計で対処すべき3つのバイアスを報告しています。位置バイアス:ペア比較では2つの回答の位置を入れ替えると判定が反転し得るため、各ペアを両方の順序で実行し、両方が一致したときだけ勝ちとし、それ以外は引き分けにします。冗長バイアス:追加の長さに価値がなくても長い回答を好むことがあるため、網羅性ではなく要件充足を評価する基準を書き、短く正しい回答をfixtureに入れます。自己高評価バイアス:自分に似た出力を好む可能性があるため、テスト対象モデルに自己採点させず、どのシステムの回答かを隠します。さらに、総合的な「品質」点ではなく1質問1基準で採点すること、事実系タスクでは参照回答を渡すことも有効です。ジャッジは本来自分で解ける問題でも、自信ありげな誤答に引きずられることがあるからです。
Jev probability, confidence and human-review thresholdsEvaluate a Jev workflowLLMジャッジを人手ラベルでどう校正するか?
難しいものも含めて実際の出力を抽出し、2人が同じ明文化基準で互いに見ずにラベル付けします。2人の不一致が多いなら、ジャッジを責める前に基準を直します。人同士が一致しないなら、ジャッジが合わせるべき安定した目標がありません。次に同じ項目でジャッジを実行し、全体だけでなくクラス別の一致を報告します。大半の出力が問題ない場合、「全部合格」のジャッジでも正確に見えるからです。ジャッジ対人手の混同表と、チームで使っているならCohenのκのような偶然補正済み指標で、どこで失敗するかが分かります。続いて確率帯を確認します。ジャッジが高確率を付けた項目のうち、人も同じ判断をしたのはいくつか。その表から自動承認帯とレビュー帯を選びます。サンプルは回帰セットとして固定し、ジャッジのプロンプト・基準・モデルが変わるたびに再実行します。JevModelのConsole → Batchは、アップロードした行に固定のジャッジ質問を実行し、この突き合わせ用に回答をエクスポートできます。
Evaluate a Jev workflowJevModel API によるバッチテキスト分類Scoreとはい/いいえ質問で型付きジャッジをどう組むか?
タスク、任意の参照回答、候補出力1つをstateに入れ、基準ごとに1つ質問します。JevModelのNoulは0〜1の確率を返すはい/いいえ質問で、「すべての主張が与えられた文脈で裏付けられているか」のような二値チェックに向きます。Scoreは2〜10個の順序付き段階の記述を受け取り、その尺度上の値を返します。値は段階の間に来ることもあります。有用性のような段階的基準に向きますが、0〜1の確率ではないため、独自の帯を設定してください。1リクエストに名前付き質問を1〜8個入れられ、シリアライズ後のstateとリクエスト全体はそれぞれ8,000文字以内なので、長い回答や検索結果の文章は抜粋が必要です。ペア比較では候補の順序を逆にした2リクエストを送り、一致した結果だけを採用します。中間付近のNoul確率や、合格と不合格の段階の間に来たScoreが棄権のシグナルです。それらは集計せず人に回します。呼び出し先はPOST /api/v1/systemoneで、OpenRouter経由の固定モデルtypesafe/jev-1.13を使います。
JevModel API:リクエストと応答Choice, Score, and Noul{
"state": {
"task": "Answer the customer using only the help-center context.",
"context": "Refunds are available within 30 days of purchase for annual plans.",
"candidate_answer": "You can get a refund within 30 days if you are on an annual plan."
},
"questions": {
"grounded": {
"type": "noul",
"instructions": "Is every factual claim in candidate_answer supported by the context?",
"criteria": {
"true": "All claims appear in or follow directly from the context.",
"false": "At least one claim is missing from or contradicts the context."
}
},
"helpfulness": {
"type": "score",
"instructions": "How well does candidate_answer resolve the task? Do not reward length.",
"criteria": [
"Does not address the task or is misleading.",
"Addresses part of the task or needs a follow-up.",
"Fully resolves the task in the needed detail."
]
}
}
}LLMをジャッジに使うべきでないのはいつか?
コードで答えを確認できるならジャッジは不要です。有効なJSONか、期待ラベルと完全一致か、単体テストが通るか、SQLが正しい行を返すか。決定的なチェックの方が安く、ドリフトしません。法務・医療・金融・安全に関わる判断の唯一の承認としてジャッジを使わず、人手レビューの優先順位付けに使ってください。人手ラベルと一度も比較していないジャッジを信頼せず、モデルに自分の出力を採点させないでください。数学、コードの正しさ、多段推論は要注意です。ジャッジは採点対象の回答に引きずられることがあるため、参照回答や実行ベースのテストを優先します。特にJevModelはテキストとJSON向けの意思決定モデルで、コード実行、ブラウズ、画像読み取りはしません。したがって評価するのはstateに書かれた内容であり、出力を実行した結果ではありません。オープンソースではなく、無料の認証済みアカウントはUTC日ごとに成功5回まで。ジャッジを試すには足りますが、大きな評価セットを毎日採点するには足りません。
Jev でツール呼び出し前に判断を加えるJevModel の料金と Jev 無料枠AIによるメール分類:受信メールにはルール、LLMプロンプト、型付き意思決定APIのどれを使うかEvaluate a Jev workflowJev probability, confidence and human-review thresholdsChoice, Score, and NoulJevModel API によるバッチテキスト分類Jev vs GPT・Claude:判断層を選ぶよくある質問
LLM-as-a-judgeは信頼できますか?
一部のタスクでは人の好みに近づけますが、信頼性は基準・データ・ジャッジモデル次第です。自社の人手ラベルとクラス別の一致を測り、位置と長さの影響を抑え、変更のたびに再確認してください。
ジャッジの校正に人手ラベルは何件必要ですか?
普遍的な件数はありません。各クラス、特に重視する失敗例で、ジャッジと人の不一致が見える程度の件数が必要です。小さく始め、不一致を確認し、誤りが集中する所でセットを増やしてください。
JevModelのevaluationガイドとどう違いますか?
evaluationガイドはJevModelワークフロー自体のラベルと確率を検証します。本ページはモデルを他のAIシステム出力の採点者として使うため、位置・冗長バイアス、自己採点、採点者自体の校正というジャッジ特有の問題が加わります。
JevModelは画像・音声・コード実行を評価できますか?
いいえ。state内のテキストかJSONのみを読みます。他のメディアは自分でテキスト化し、コードは自前のパイプラインでテストを実行して、ジャッジに考慮させたい場合は結果をテキストで渡してください。
JevModel は独立したプロジェクトで、TypeSafe AI とは提携していません。