dataset-evaluation について
dataset-evaluation は、SageMaker のファインチューニングやモデル評価に使うデータセットの構造を確認するエージェントスキルです。用途に応じた形式要件を適用し、データを利用できる状態か報告します。
主な機能
- 01ローカルまたは S3 のデータセットを特定
- 02モデルと手法に応じた学習形式の確認
- 03評価データ形式の個別検証
- 04形式の問題と変換の必要性を特定
活用シーン
- 01選択したファインチューニング手法向けの学習データ確認
- 02モデル評価データの構造検証
- 03ファイル不足や読み取り権限の問題への対応
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ awslabs/ agent-plugins --skill dataset-evaluationインストール後、Claude Code で/dataset-evaluationを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/custom-scorer-evaluation-dataset-formats.mdstrategy_data_requirements.mdscripts/format_detector.py詳細
ワークフローの手順
以下のワークフローに従ってください。データセットの場所を特定し、ファイル形式を確認して、ファイルの欠落や形式の誤りがあれば解決します。ファインチューニングするモデルとファインチューニング戦略を特定します。モデルファミリーに応じて適切な検証を実行します。結果をまとめ、データセットがファインチューニングに使用できる状態かどうかを伝えます。
前提条件
- SDK のバージョン、リージョン、実行ロールなどの SDK 環境が確認済みであること。まだ確認していない場合は、まず
sdk-getting-startedスキルを有効にしてください。
ワークフロー
-
データセットの場所を特定する:
- フルパスには、ローカルファイルパスまたは S3 URI を指定できます
- データセットファイルのフルパスを解決し、読み取り権限があることを確認して、ファイルが見つからない場合はユーザーを支援します
-
戦略とモデルを特定する:
- ファイル形式は、現在選択されているファインチューニング戦略とファインチューニングのベースモデルによって異なります。
- 会話のコンテキスト(例:model-selection スキルや finetuning-technique スキルで選択済み)から戦略とモデルがすでにわかる場合は、それらを使用します。
- コンテキストからわからない場合は、処理を進める前に model-selection スキルや finetuning-technique スキルを有効にして特定します。
- 例外: ユーザーがトレーニングデータセットではなく評価データセットを検証する場合、モデルも手法も不要です。形式検出ツールは、クエリ/レスポンスの構造から評価形式を個別に検証できます。評価データセットの検証では、model-selection スキルや finetuning-technique スキルの選択を必須にしないでください。
-
ファイル形式を確認する:
format_detector.pyツールを実行して、ファイルが形式要件に準拠していることを確認します。- フルパスを引数として
format_detectorスクリプトに直接渡します - モデルと戦略を引数として渡さないでください
- S3 からデータをダウンロードしないでください
- データのローカルコピーを作成しないでください
- フルパスを引数として
-
結果をまとめる:データを使用できる状態かどうかをユーザーに伝えます
format_detectorの出力を確認し、既知の戦略とモデルに照らし合わせます- 重要:トレーニングデータセットと評価データセットでは、形式要件が異なります。
- トレーニングデータセットは、
references/strategy_data_requirements.mdに記載されているファインチューニング戦略の形式に一致する必要があります - 評価データセット(モデル評価用)は、SageMaker の評価データセット形式のいずれかに一致する必要があります。
- Custom Scorer の評価データセットには、スコアラー固有の要件があります。データセットが Custom Scorer による評価(Prime Math、Prime Code、または Custom Lambda)を目的とする場合は、
references/custom-scorer-evaluation-dataset-formats.mdを読み、スコアラー固有のスキーマに照らして検証します。スコアラーの種類は、会話のコンテキスト(model-evaluation スキルで決定済み)からわかるはずです。
- トレーニングデータセットは、
- 現在のデータセットが意図した用途に有効かどうかをユーザーに伝えます
- データセットが有効でも、別の戦略やモデル向けの場合は、ユーザーに警告します
- どの戦略とモデルの組み合わせでも有効でない場合は、ユーザーに警告します
- 評価済みのデータセットを使ってモデルをファインチューニングする予定がある場合、予定しているトレーニングジョブと同じリージョンの S3 バケットにアップロードする必要があります(通常はデフォルトのリージョンです)。そうなっていない場合は、ユーザーに警告します。
- データセットが必要な形式でない場合は、dataset-transformation スキルを使って変換するよう提案し、ユーザーの確認を待ってから、応答に応じて計画を更新します
ユーザーへのメッセージ
- はじめに:「このスキルは、モデルのファインチューニングに向けてデータセットの構造を確認します。」
- ファイル形式:このスキルは、Amazon SageMaker AI 開発者ガイドに従って形式設定されたファイルに適用されます
リソース
- scripts/format_detector.py は、単独で実行できる自己完結型の形式検証スクリプトです
- model-selection と finetuning-technique のスキルでは、ベースモデルとファインチューニング戦略がすでに決定されているはずです
- references/strategy_data_requirements.md には、戦略ごとのデータ形式要件が記載されています
スクリプトの詳細
- scripts/format_detector.py は、単独で実行できる自己完結型の形式検証スクリプトです:
# With the file path argument identified in workflow step 1
python scripts/format_detector.py local_path/to/dataset
参考資料
scripts/format_detector.py— 自己完結型の形式検証スクリプトreferences/strategy_data_requirements.md— 戦略ごとのデータ形式要件
コメント
Markdown 対応