ルーブリック評価
Potatoで複数観点の評価グリッドを構築します。LLM出力の評価、小論文の採点、翻訳品質の判定など、ルーブリックに沿った構造的なアノテーションに使えます。
ルーブリック評価のアノテーションスキーマは、決められた尺度で複数の観点からコンテンツを採点するための、構造化されたグリッドインターフェースを提供します。LLM出力の評価、小論文の採点、翻訳品質の判定など、多次元の採点が必要なタスクに使えます。
Rubric evaluation in Potato
概要
ルーブリック評価スキーマが表示するもの:
- 観点のグリッド(それぞれに独自の評価尺度が付きます)
- 尺度のラベル(Poor から Excellent まで。変更可能です)
- 総合スコア(任意。観点全体をまとめた値です)
- 各観点の説明文(アノテーターの判断の手がかりになります)
生成AIの出力を人手で構造的に評価する場面でとくに役立ちます。
クイックスタート
yaml
annotation_schemes:
- annotation_type: rubric_eval
name: response_quality
description: Evaluate the quality of this AI-generated response.
scale_points: 5
criteria:
- name: Accuracy
description: Is the information factually correct?
- name: Relevance
description: Does the response address the question?
- name: Fluency
description: Is the response well-written and natural?設定オプション
| フィールド | 型 | デフォルト | 説明 |
|---|---|---|---|
annotation_type | string | 必須 | "rubric_eval"を指定します |
name | string | 必須 | このスキーマの一意な識別子 |
description | string | 必須 | アノテーターに表示される指示文 |
scale_points | integer | 5 | 評価尺度の段階数 |
scale_labels | array | ["Poor", "Fair", "Average", "Good", "Excellent"] | 各段階のラベル(要素数はscale_pointsと一致させます) |
criteria | array | 必須 | 観点オブジェクトのリスト。それぞれnameと、任意でdescriptionを持ちます |
show_overall | boolean | false | 観点の下に総合スコアの行を追加で表示するか |
例
LLM出力の評価
yaml
annotation_schemes:
- annotation_type: rubric_eval
name: llm_eval
description: Rate the quality of this model-generated response.
scale_points: 5
scale_labels:
- Poor
- Fair
- Average
- Good
- Excellent
show_overall: true
criteria:
- name: Helpfulness
description: Does the response provide useful and actionable information?
- name: Accuracy
description: Is the response factually correct and free of hallucinations?
- name: Harmlessness
description: Is the response free of harmful, biased, or inappropriate content?
- name: Coherence
description: Is the response logically structured and easy to follow?小論文の採点
yaml
annotation_schemes:
- annotation_type: rubric_eval
name: essay_grade
description: Grade this student essay using the rubric below.
scale_points: 4
scale_labels:
- Below Expectations
- Approaching
- Meets Expectations
- Exceeds Expectations
criteria:
- name: Thesis
description: Is there a clear and arguable thesis statement?
- name: Evidence
description: Does the essay use relevant evidence to support claims?
- name: Organization
description: Is the essay logically organized with clear transitions?
- name: Grammar
description: Is the writing free of grammatical and spelling errors?翻訳品質の評価
yaml
annotation_schemes:
- annotation_type: rubric_eval
name: translation_quality
description: Evaluate the quality of this machine translation.
scale_points: 3
scale_labels:
- Unacceptable
- Acceptable
- Perfect
criteria:
- name: Adequacy
description: Does the translation convey the same meaning as the source?
- name: Fluency
description: Does the translation read naturally in the target language?
- name: Terminology
description: Are domain-specific terms translated correctly?出力形式
json
{
"response_quality": {
"labels": {
"Accuracy": 4,
"Relevance": 5,
"Fluency": 3
},
"overall": 4
}
}各観点は、選択された尺度の値(1始まり)に対応します。overallフィールドが含まれるのはshow_overallがtrueのときだけです。
ベストプラクティス
- 観点を独立させる - 各観点が別々の次元を測るようにして、採点の重複を避けてください
- 説明文を明確に書く - それぞれの観点が何を測るのか、曖昧さなく伝わるようにしてください
- 段階数は3〜5に - 段階が少ないほど負担が軽くなります。7を超えても信頼性はほとんど上がりません
- 基準となる例を示す - 尺度の両端がどのようなものかを説明文に書いておいてください
- 集計するなら総合スコアを有効に - 詳細な内訳と併せて1つの要約指標が必要な場合、
show_overallが役立ちます
参考資料
- Likertスケール - 単一次元の評価尺度
- ペアワイズ比較 - 2件を並べて比較する評価
- 品質管理 - 注意チェックとゴールドスタンダード
実装の詳細については、ソースドキュメントを参照してください。