mcpField
H
hugging-face-model-trainer

hugging-face-model-trainer

github.com/sickn33開発48.7k48 回インストール1 日前に更新
リポジトリ

hugging-face-model-trainer について

Hugging Face Model Trainingは、TRLまたはUnslothでのLLM学習を計画・実行する開発者向けスキルです。SFT、DPO、GRPO、GGUF変換を扱い、小規模な試行や環境・予算の確認を重視します。

主な機能

  1. 01SFT・DPO・GRPOの学習計画
  2. 02TRLとUnslothのサンプル
  3. 03範囲を限定した試行と時間測定
  4. 04スクリプトによる算術的なコスト見積もり
  5. 05ジョブ状態・ログ・チェックポイントの確認
  6. 06ローカルでのGGUF変換準備

活用シーン

  1. 01承認済みモデルとデータで学習を準備
  2. 02承認予算内で学習設定を試験
  3. 03学習ジョブとチェックポイント復旧を確認
  4. 04モデルのGGUF変換を準備

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill hugging-face-model-trainer

インストール後、Claude Code で/hugging-face-model-trainerを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
reliability_principles.md
local_training_macos.md
hub_saving.md
trackio_guide.md
hardware_guide.md
training_patterns.md
gguf_conversion.md
training_methods.md
detailed-guide.md
unsloth.md
troubleshooting.md
scripts/
convert_to_gguf.py
test_model_trainer_review.py
estimate_cost.py
train_dpo_example.py
train_sft_example.py
train_grpo_example.py
dataset_inspector.py
hf_benchmarks.py
unsloth_sft_example.py

詳細

Hugging Face モデルトレーニング

使用するタイミング

TRL または Unsloth を使用した言語モデルの SFT、DPO、GRPO トレーニングの計画と実行、および GGUF 変換の準備に使用します。同梱の Unsloth の例はテキストトレーニングの例であり、ビジョントレーニングやストリーミングには対応していません。詳細ガイドを読み、タスクに必要な手法固有のリファレンスのみを参照してください。

実行前の確認

有料ジョブを実行する前に、トレーニングデータとモデルのリビジョン、保存先、ハードウェア、実行時間、計算予算の正確な内容について、ユーザーの承認を得てください。トレーニングの承認を得ても、公開 Hub リポジトリ、テレメトリ、トラッキング用 Spaces、非公開データセットのアップロードが自動的に許可されるわけではありません。最新のアカウント利用資格、クォータ、料金は実際のプロバイダーに確認してください。古い表から推測してはいけません。

実際に利用可能な、サポート対象の Jobs インターフェースを使用してください。送信前に現在のスキーマを確認してください。文字列 $HF_TOKEN は、あらゆる環境で使える汎用のシークレット補間プロトコルではありません。認証情報を表示したり、ソースコードに記載したり、無関係なログインセッションを変更したりせず、ホストで文書化されているシークレットのバインド方法を使用してください。読み取り専用操作に書き込みトークンは必要ありません。書き込みアクセスは、承認済みの成果物保存先にのみ付与してください。

計算リソースを予約する前に、サンプル値、型、チャットロール、モデルのチャットテンプレート、および上限を設定したトレーニングサブセット全体を検証してください。列名だけでは互換性を証明できません。GRPO では、明示的に定義し、テスト済みの報酬関数も必要です。レビュー済みの依存関係のバージョンと、変更不可能なモデル/データセットのリビジョンを固定してください。リモートモデルコードが必要な場合は、別途レビューしてください。デフォルトでは trust_remote_code=False に設定してください。

ワークフロー

  1. 手法とベースラインを確認し、同梱の例を調整する前に内容を確認してください。
  2. ステップ数とサンプル数に明確な上限を設けて、小規模なパイロットを実行してください。実際のシーケンス長、精度、オプティマイザーでメモリ使用量を確認してください。複数の GPU を使用するには、サポート対象の分散起動が必要です。各 GPU のメモリが自動的に共有プールになるわけではありません。
  3. 実測したパイロットの所要時間と、ユーザーから提供された最新の料金を使って、scripts/estimate_cost.py --measured-hours 0.1 --hourly-rate 2 を実行してください。この例の数値は計算に使う入力値であり、プロバイダーの料金ではありません。
  4. 承認済みの予算内で期限を設定してください。一時的なジョブを開始する前に、非公開の永続的なチェックポイント、または承認済みの保存先を設定してください。Hub へのアップロードは選択肢の一つですが、公開は必須ではありません。
  5. ジョブの状態と、サニタイズされたログを確認してください。実行の成功と判断する前に、チェックポイントからの復旧を確認し、ホールドアウトデータで評価してください。結果が不明なジョブは、状態が確認できるまで再送信しないでください。

例

SFT では、scripts/train_sft_example.py を承認済みのモデルとテキストまたはチャットのデータセットに合わせて調整してください。選好学習では scripts/train_dpo_example.py を確認してください。オンライン報酬では scripts/train_grpo_example.py を確認してください。これらは環境ごとの検証が必要な例であり、本番環境での実行が保証されているジョブではありません。

ローカル変換では、使用前に scripts/convert_to_gguf.py を確認してください。llama.cpp とその依存関係をレビューし、バージョンを固定してください。変換と、別途承認されたアップロードが成功するまでは、中間成果物を保持してください。ベースモデル、アダプター、データのライセンスを遵守してください。生成されたモデルカードによって、保有していない権利が付与されることはありません。

制限事項

Unsloth のパフォーマンスとサポート対象のアーキテクチャは、バージョン、カーネル、ハードウェア、ワークロードによって異なります。パーセンテージは保証値ではありません。コスト計算ツールが行うのは計算のみであり、メモリサイズの算出、実行時間の予測、リアルタイムの見積もりは行いません。このソースレビューでは、GPU トレーニング、モデルの読み込み、アップロード、外部トラッキングは実行していません。リファレンスに古い API バージョンが記載されている場合があります。実行前に、固定した環境に合わせて確認してください。メモリ不足への汎用的な対処として、MPS のメモリウォーターマークを無効にしないでください。

コメント