第3章 モデルの評価


新しいモデルの改善を測定する場合は、評価プロセスを使用してそのパフォーマンスをベースモデルと比較できます。また、モデルと直接チャットして、新しいモデルが作成したナレッジを学習したかどうかを定性的に確認することもできます。モデルの改善についてより定量的な結果が必要な場合は、RHEL AI CLI で評価プロセスを実行できます。

3.1. 新しいモデルの評価

以下の手順に従って、RHEL AI CLI で評価プロセスを実行できます。

前提条件

  • 起動可能なコンテナーイメージを使用して RHEL AI をインストールしている。
  • スキルまたはナレッジを盛り込んだカスタムの qna.yaml ファイルを作成している。
  • データ生成プロセスが実行されている。
  • RHEL AI トレーニングプロセスを使用してモデルがトレーニングされている。
  • prometheus-8x7b-v2-0 ジャッジモデルをダウンロードしている。
  • マシンの root ユーザーアクセス権がある。

手順

  1. qna.yaml ファイルを作成した作業中の Git ブランチに移動します。
  2. さまざまなベンチマークで評価プロセスを実行できるようになりました。各コマンドには、評価するトレーニング済み samples モデルへのパスが必要です。これらのチェックポイントには ~/.local/share/instructlab/checkpoints フォルダーからアクセスできます。

    1. MMLU_BRANCH ベンチマーク - ナレッジの貢献がモデルにどのような影響を与えたかを測定する場合は、次のコマンドを実行して mmlu_branch ベンチマークを実行します。

      $ ilab model evaluate --benchmark mmlu_branch
          --model ~/.local/share/instructlab/phased/phase2/checkpoints/hf_format/<checkpoint> \
          --tasks-dir ~/.local/share/instructlab/datasets/<generation-date>/<node-dataset> \
          --base-model ~/.cache/instructlab/models/granite-7b-starter

      以下は、

      <checkpoint>
      複数フェーズトレーニング中に生成された最高スコアのチェックポイントファイルを指定します。
      <node-dataset>

      モデルのトレーニングに使用された .jsonl ファイルと同じタイムスタンプを持つ、SDG 中に生成された node_datasets ディレクトリーを ~/.local/share/instructlab/datasets/<generation-date> ディレクトリーに指定します。

      出力例

      # KNOWLEDGE EVALUATION REPORT
      
      ## BASE MODEL (SCORE)
      /home/user/.cache/instructlab/models/instructlab/granite-7b-lab/ (0.74/1.0)
      
      ## MODEL (SCORE)
      /home/user/local/share/instructlab/phased/phases2/checkpoints/hf_format/samples_665(0.78/1.0)
      
      ### IMPROVEMENTS (0.0 to 1.0):
      1. tonsils: 0.74 -> 0.78 (+0.04)

    2. MT_BENCH_BRANCH ベンチマーク - スキルの貢献がモデルにどのような影響を与えたかを測定する場合は、次のコマンドを実行して mt_bench_branch ベンチマークを実行します。

      $ ilab model evaluate \
          --benchmark mt_bench_branch \
          --model ~/.local/share/instructlab/phased/phase2/checkpoints/hf_format/<checkpoint> \
          --judge-model ~/.cache/instructlab/models/prometheus-8x7b-v2-0 \
          --branch <worker-branch> \
          --base-branch <worker-branch>

      以下は、

      <checkpoint>
      複数フェーズトレーニング中に生成された最高スコアのチェックポイントファイルを指定します。
      <worker-branch>
      タクソノミーツリーにデータを追加するときに使用したブランチを指定します。
      <num-gpus>

      評価に使用する GPU の数を指定します。

      出力例

      # SKILL EVALUATION REPORT
      
      ## BASE MODEL (SCORE)
      /home/user/.cache/instructlab/models/instructlab/granite-7b-lab (5.78/10.0)
      
      ## MODEL (SCORE)
      /home/user/local/share/instructlab/phased/phases2/checkpoints/hf_format/samples_665(6.00/10.0)
      
      ### IMPROVEMENTS (0.0 to 10.0):
      1. foundational_skills/reasoning/linguistics_reasoning/object_identification/qna.yaml: 4.0 -> 6.67 (+2.67)
      2. foundational_skills/reasoning/theory_of_mind/qna.yaml: 3.12 -> 4.0 (+0.88)
      3. foundational_skills/reasoning/linguistics_reasoning/logical_sequence_of_words/qna.yaml: 9.33 -> 10.0 (+0.67)
      4. foundational_skills/reasoning/logical_reasoning/tabular/qna.yaml: 5.67 -> 6.33 (+0.67)
      5. foundational_skills/reasoning/common_sense_reasoning/qna.yaml: 1.67 -> 2.33 (+0.67)
      6. foundational_skills/reasoning/logical_reasoning/causal/qna.yaml: 5.67 -> 6.0 (+0.33)
      7. foundational_skills/reasoning/logical_reasoning/general/qna.yaml: 6.6 -> 6.8 (+0.2)
      8. compositional_skills/writing/grounded/editing/content/qna.yaml: 6.8 -> 7.0 (+0.2)
      9. compositional_skills/general/synonyms/qna.yaml: 4.5 -> 4.67 (+0.17)
      
      ### REGRESSIONS (0.0 to 10.0):
      1. foundational_skills/reasoning/unconventional_reasoning/lower_score_wins/qna.yaml: 5.67 -> 4.0 (-1.67)
      2. foundational_skills/reasoning/mathematical_reasoning/qna.yaml: 7.33 -> 6.0 (-1.33)
      3. foundational_skills/reasoning/temporal_reasoning/qna.yaml: 5.67 -> 4.67 (-1.0)
      
      ### NO CHANGE (0.0 to 10.0):
      1. foundational_skills/reasoning/linguistics_reasoning/odd_one_out/qna.yaml (9.33)
      2. compositional_skills/grounded/linguistics/inclusion/qna.yaml (6.5)

  3. オプション: MMLU および MT_BENCH ベンチマークを使用して、各チェックポイントを手動で評価できます。標準化されたナレッジやスキルのセットに対して任意のモデルを評価できるため、独自のモデルのスコアを他の LLM と比較できます。

    1. MMLU - 標準化されたナレッジデータセットに対する新しいモデルの評価スコアを確認する場合は、次のコマンドを実行して mmlu ベンチマークを設定します。

      $ ilab model evaluate --benchmark mmlu --model ~/.local/share/instructlab/phased/phase2/checkpoints/hf_format/samples_665 --skip-server

      以下は、

      <checkpoint>

      複数フェーズトレーニング中に生成されたチェックポイントファイルの 1 つを指定します。

      出力例

      # KNOWLEDGE EVALUATION REPORT
      
      ## MODEL (SCORE)
      /home/user/.local/share/instructlab/phased/phase2/checkpoints/hf_format/samples_665
      
      ### SCORES (0.0 to 1.0):
      mmlu_abstract_algebra - 0.31
      mmlu_anatomy - 0.46
      mmlu_astronomy - 0.52
      mmlu_business_ethics - 0.55
      mmlu_clinical_knowledge - 0.57
      mmlu_college_biology - 0.56
      mmlu_college_chemistry - 0.38
      mmlu_college_computer_science - 0.46
      ...

    2. MT_BENCH - 標準化されたスキルセットに対する新しいモデルの評価スコアを確認する場合は、次のコマンドを実行して mt_bench ベンチマークを設定します。

      $ ilab model evaluate --benchmark mt_bench --model ~/.local/share/instructlab/phased/phases2/checkpoints/hf_format/samples_665

      以下は、

      <checkpoint>

      複数フェーズトレーニング中に生成されたチェックポイントファイルの 1 つを指定します。

      出力例

      # SKILL EVALUATION REPORT
      
      ## MODEL (SCORE)
      /home/user/local/share/instructlab/phased/phases2/checkpoints/hf_format/samples_665(7.27/10.0)
      
      ### TURN ONE (0.0 to 10.0):
      7.48
      
      ### TURN TWO (0.0 to 10.0):
      7.05

3.1.1. Domain-Knowledge ベンチマーク評価

重要

Domain-Knowledge ベンチマーク評価は、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

RHEL AI、MMLU、および MMLU_branch における現在のナレッジ評価ベンチマークは、複数の選択問題に回答する機能についてモデルを評価します。モデルの回答がある程度正しい場合や間違っている場合に、評価を与える方法がありませんでした。

Domain-Knowledge ベンチマーク (DK-bench) の評価では、カスタム評価用の質問を作成し、モデルの回答をスケールに基づいて採点することができます。

各回答は参照回答と比較され、ジャッジモデルによって以下のスケールで採点されます。

Expand
表3.1 Domain-Knowledge ベンチマーク rubric
スコア基準

1

その回答は完全に誤っているか、無関係であるか、または参照回答と意味のある形で一致していません。

2

回答は参照回答と一部一致しているものの、大きな誤り、重要な省略、または無関係な情報が含まれています。

3

回答は全体的に参照回答と一致しているものの、詳細や明確さが不足している、または軽微な誤りが含まれています。

4

回答はほぼ正確で、参照回答と高い整合性があり、軽微な問題や省略がある程度です。

5

回答は完璧で、参照回答と完全に一致しており、明確で、綿密かつ詳細に渡っています。

前提条件

  • 起動可能なコンテナーイメージを使用して RHEL AI をインストールしている。
  • RHEL AI トレーニングプロセスを使用してモデルがトレーニングされている。
  • prometheus-8x7b-v2-0 judge モデルをダウンロードしている。
  • マシンの root ユーザーアクセス権がある。

手順

  1. カスタム評価を利用するには、モデルに回答させて評価したいすべての質問を含む jsonl ファイルを作成する必要があります。

    DK-bench jsonl ファイルの例

    {"user_input":"What is the capital of Canada?","reference":"The capital of Canada is Ottawa."}

    以下は、

    user_input
    モデルへの質問が含まれています。
    reference
    質問への回答が含まれています。
  2. カスタム評価の質問を使用して DK-bench ベンチマークを実行するには、以下のコマンドを実行します。

    $ ilab model evaluate --benchmark dk_bench --input-questions <path-to-jsonl-file> --model <path-to-model>

    以下は、

    <path-to-jsonl-file>
    質問と回答が含まれる jsonl ファイルへのパスを指定します。
    <path-to-model>

    評価するモデルへのパスを指定します。

    コマンドの例

    $ ilab model evaluate --benchmark dk_bench --input-questions /home/use/path/to/questions.jsonl --model ~/.cache/instructlab/models/instructlab/granite-7b-lab

    domain-Knowledge ベンチマーク評価の出力例

    # DK-BENCH REPORT
    
    ## MODEL: granite-7b-lab
    
    Question #1:     5/5
    Question #2:     5/5
    Question #3:     5/5
    Question #4:     5/5
    Question #5:     2/5
    Question #6:     3/5
    Question #7:     2/5
    Question #8:     3/5
    Question #9:     5/5
    Question #10:     5/5
    ----------------------------
    Average Score:   4.00/5
    Total Score:     40/50

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る