Repolode
huggingface

huggingface/alignment-handbook

SFT、DPO、ORPOを用いて、言語モデルの継続事前学習や人間・AIの選好に基づくアライメントを行うための学習レシピとスクリプト。

スター
5,699
フォーク
496
未解決の Issue
100
最終コミット
29 日前

これは何?

Alignment Handbookは、継続事前学習から教師ありファインチューニング、選好アライメントまで、言語モデルのポストトレーニング工程を網羅する学習レシピ集です。指示チューニングと、人間やAIの選好にモデルを適合させる工程の間にあるギャップを埋めることを目的としています。この領域では、データ、学習手法、評価に関する公開情報が不足していました。

プロジェクトは、少数のスクリプトとYAML形式のレシピファイルで構成されています。各レシピには1回の学習に必要なすべてのパラメーターが記載されており、リポジトリにはZephyr 7Bを再現するレシピのほか、SmolLM、SmolLM2、SmolLM3の使用例も含まれています。DeepSpeed ZeRO-3による全重み分散学習に加え、パラメーター効率の高いファインチューニング向けにLoRAとQLoRAも利用できます。gpt2-nlのレシピでは、同じパイプラインでモデルを新しい言語に適応させる方法を紹介しています。

このハンドブックでは、DPO、ORPO、報酬モデリング、棄却サンプリングを扱い、学習済みモデルをHugging Face Hubにプッシュする手順も掲載しています。インストールには、PyTorch 2.6.0とFlash Attention 2を使用し、パッケージ管理にはuvを使います。

主な機能

  • 01継続事前学習、SFT、DPO、ORPOの学習スクリプト
  • 02学習時の全パラメーターを記録するYAML形式のレシピファイル
  • 03DeepSpeed ZeRO-3による全重み分散学習
  • 04パラメーター効率の高いファインチューニング向けのLoRAとQLoRA対応
  • 05Zephyr 7BおよびSmolLM系モデルを再現するレシピ

ユースケース

  • Zephyr 7Bのアライメントパイプラインを手順に沿って再現する
  • 小規模なオープンLLMを独自の指示データセットでファインチューニングする
  • ベースモデルを新しい言語に適応させてから、選好チューニングを適用する
  • 既存のレシピを使ってDPO、KTO、IPO系の選好最適化手法を比較する

クイックスタート

  1. 1

    uvでPython仮想環境を作成する

    uv venv handbook --python 3.11 && source handbook/bin/activate && uv pip install --upgrade pip
  2. 2

    PyTorch v2.6.0をインストールする

    uv pip install torch==2.6.0 --index-url https://download.pytorch.org/whl/cu126
  3. 3

    リポジトリのルートから、プロジェクトの残りの依存関係をインストールする

    uv pip install .
  4. 4

    Flash Attention 2をインストールする

    uv pip install "flash-attn==2.7.4.post1" --no-build-isolation

使う前に知っておきたいこと

  • 結果を再現するには、CUDA GPU環境と、指定バージョンのPyTorchおよびFlash Attentionが必要です。
  • Hugging FaceへのログインやGit LFSのインストールなど、複数の手動セットアップ手順が必要です。

トピック

よくある質問

alignment-handbook とは?
SFT、DPO、ORPOを用いて、言語モデルの継続事前学習や人間・AIの選好に基づくアライメントを行うための学習レシピとスクリプト。 Alignment Handbookは、継続事前学習から教師ありファインチューニング、選好アライメントまで、言語モデルのポストトレーニング工程を網羅する学習レシピ集です。指示チューニングと、人間やAIの選好にモデルを適合させる工程の間にあるギャップを埋めることを目的としています。この領域では、データ、学習手法、評価に関する公開情報が不足していました。
alignment-handbook は無料で使えますか?ライセンスは?
alignment-handbook は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
alignment-handbook は今もメンテナンスされていますか?
活発にメンテナンス中。alignment-handbook の最終コミットは 2026年9月23日 です。
alignment-handbook は何に使えますか?
Zephyr 7Bのアライメントパイプラインを手順に沿って再現する 小規模なオープンLLMを独自の指示データセットでファインチューニングする ベースモデルを新しい言語に適応させてから、選好チューニングを適用する 既存のレシピを使ってDPO、KTO、IPO系の選好最適化手法を比較する
alignment-handbook のインストール方法は?
uvでPython仮想環境を作成する: uv venv handbook --python 3.11 && source handbook/bin/activate && uv pip install --upgrade pip PyTorch v2.6.0をインストールする: uv pip install torch==2.6.0 --index-url https://download.pytorch.org/whl/cu126 リポジトリのルートから、プロジェクトの残りの依存関係をインストールする: uv pip install . Flash Attention 2をインストールする: uv pip install "flash-attn==2.7.4.post1" --no-build-isolation
alignment-handbook はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/huggingface/alignment-handbook

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト