LLM-as-a-Judgeの精度を極限まで高める「ルーブリック・フォーム」設計

Tech

{ “version”: “1.1”, “design_patterns”: [“Chain-of-Thought”, “Role-play”, “Self-Correction”, “Structured Output”], “optimization_target”: “LLM-as-a-judge Reliability”, “prompt_techniques”: [“Few-shot”, “Rubric-based Grading”, “Step-by-step Analysis”] } 本記事はGeminiの出力をプロンプト工学で整理した業務ドラフト(未検証)です。

LLM-as-a-Judgeの精度を極限まで高める「ルーブリック・フォーム」設計

【ユースケース定義と課題】

AI生成物の品質を多角的な評価指標で自動採点し、主観を排除した信頼性の高いスコアと詳細な改善フィードバックをJSON形式で抽出する。

  • 入力の型: 評価対象テキスト(ユーザー投稿・AI回答ペア)、評価用ルーブリック

  • 出力の型: 評価項目ごとのスコアと根拠を含むJSONオブジェクト

【プロンプト設計のループ】

graph TD
A["評価ルーブリックの定義"] --> B["フォーム形式での推論実行"]
B --> C["人間との一致率を検証"]
C -->|バイアス修正| A
  1. 設計: 曖昧さを排除した5段階の評価基準(ルーブリック)を策定。

  2. 実行: LLMに「まず各項目を分析し、最後にスコアを出す」というフォーム記入形式で指示。

  3. 評価: 人間の評価結果と比較し、甘い採点(Leniency Bias)やハロー効果がないか分析。

  4. 改善: 評価基準に「失敗例」を追加定義し、プロンプトを再調整。

【プロンプトの実装案】

# Role

あなたは専門的なコンテンツ校閲者および品質管理エージェントです。
提供された「評価対象のやり取り」を、定義された「ルーブリック」に基づいて厳格に評価してください。

# Constraints


- 評価は必ず「思考プロセス」を経てから「最終スコア」を出すこと。

- 各項目は1〜5の5段階評価とする。

- 主観を排除し、事実に基づいた証拠を抽出すること。

# Rubric


1. 正確性(Accuracy): 事実誤認がないか。

2. 丁寧さ(Politeness): ブランドトーンに合致しているか。

3. 簡潔性(Conciseness): 冗長な表現がなく、結論が先出しされているか。

# Evaluation Form (Output Format)

以下の形式で、各項目を順に埋めてください。

- [Step 1: 事実確認] 

- [Step 2: 各項目の評価根拠]

- [Step 3: スコアリング]

# Example

(Few-shotの例をここに記述: 過去の良質な評価事例)

# Task Input

[User Message]: {{user_query}}
[AI Response]: {{ai_response}}

【評価指標と誤り分析】

自動評価において発生しやすい失敗パターンを特定し、対策を講じます。

失敗パターン 内容 対策
寛大化傾向 全ての回答に高いスコア(4 or 5)を付けてしまう 各スコアの定義を具体化し「3は及第点、5は完璧」と明示
形式崩れ JSON形式で出力されず、パースに失敗する Markdownブロックを禁止し、純粋なJSONのみを要求する
根拠の欠如 スコアだけが出力され、なぜその点数か不明 「証拠となる文言を引用せよ」という制約を追加

【改良後の最適プロンプト】

分析結果を反映し、CoT(思考の連鎖)と構造化出力を強化した最終プロンプトです。

# Role

System Auditor for LLM Response Quality

# Task

Evaluate the AI response based on the provided rubric. You must complete the internal evaluation form before providing the final JSON output.

# Evaluation Rubric


- [Score 1: Fail] Major factual errors or harmful content.

- [Score 3: Average] Factually correct but lacks clarity or poor tone.

- [Score 5: Excellent] Perfect accuracy, ideal tone, and highly actionable.

# Thinking Process (Chain-of-Thought)


1. List all factual claims made in the response.

2. Verify each claim against the context.

3. Assess the linguistic tone (Polite/Professional).

4. Identify any redundant phrases.

# Output Requirement

Return ONLY a valid JSON object. No conversational filler.

{
  "analysis": {
    "fact_check": "Detailed findings...",
    "tone_analysis": "Critique of the language...",
    "conciseness_check": "Redundancy identified if any..."
  },
  "scores": {
    "accuracy": 1-5,
    "politeness": 1-5,
    "conciseness": 1-5
  },
  "overall_feedback": "Summary of improvement points."
}

# Input Data

{{evaluation_data}}

【まとめ】

LLM-as-a-judgeを実務で運用するための3つの鉄則:

  1. 「思考」と「出力」を分離する: 評価理由を先に書かせることで、スコアの妥当性を高める(CoTの強制)。

  2. 中間スコアを定義する: 1/3/5のように基準を明確にし、LLMが「とりあえず4」を選ぶバイアスを抑制する。

  3. Few-shotで境界線を示す: 「何が4で、何が3なのか」の境界線となる具体例をプロンプトに含める。

ライセンス:本記事のテキスト/コードは特記なき限り CC BY 4.0 です。引用の際は出典URL(本ページ)を明記してください。
利用ポリシー もご参照ください。

コメント

タイトルとURLをコピーしました