OSS探訪GitHubでログイン

基盤モデルの教師あり微調整と選好学習を、共通のTrainerとCLIで進めるPythonライブラリ

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
19,445
主要言語
Python
ライセンス
Apache-2.0
リポジトリ最終更新
2026/10/04
ページ内ナビ

概要

TRLは、言語モデルやマルチモーダル基盤モデルを追加学習するためのPythonライブラリです。TransformersのTrainerを土台に、教師あり微調整(SFT)、GRPO、DPO、KTO、報酬モデル学習などを専用TrainerとCLIで扱えます。単一GPUでの実験からDDP、DeepSpeed ZeRO、FSDPを使う分散学習まで同じ系統の設定で広げられます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

SFT、選好最適化、報酬学習を用途別のTrainerで組み立てる

SFTTrainer、GRPOTrainer、DPOTrainer、KTOTrainer、RewardTrainerなどが用意され、データセット、モデル、学習設定を渡して追加学習を実行できます。各手法を個別に一から実装せず、Transformersの学習基盤やPEFTアダプターと組み合わせて比較できます。

出典:[2]

Python APIとCLIから同じ追加学習の流れを選べる

細かな制御が必要な場合は専用TrainerをPythonから利用し、既定の流れを素早く試す場合はtrl sftやtrl dpoなどのCLIを使えます。チェックポイントからの再開やvLLMを使う構成も継続的に整備されており、実験コードと実行環境を分けて管理できます。

出典:[2][3]

向いている用途

複数の追加学習手法を同じTransformers環境で比較したいチームに向く

指示データによる微調整、選好データによる整列、報酬関数を使う学習を共通のモデル資産とデータ処理で評価したい研究・開発に向きます。小規模モデルで設定を確認してから、DDP、DeepSpeed ZeRO、FSDPへ拡張したい場合にも候補になります。

出典:[2]

導入前の確認

学習手法だけでなく、計算資源、データ品質、評価方法を別々に設計する

インストールだけで学習結果の品質や安全性が決まるわけではありません。モデル規模と系列長に応じたGPUメモリ、データの利用条件、選好や報酬の偏り、評価用データの分離を事前に設計する必要があります。分散学習やvLLM連携では対応バージョンとチェックポイント復旧も確認してください。Python 3.10以上が必要です。

出典:[2][4][3]

参考にした公式資料

  1. [1]huggingface/trl repository metadata(2026-10-04)
  2. [2]TRL v1.14.1 README(2026-10-04)
  3. [3]TRL v1.14.1 release(2026-10-04)
  4. [4]TRL v1.14.1 pyproject.toml(2026-10-04)
  5. [5]TRL v1.14.1 Apache-2.0 license(2026-10-04)
編集部からの補足

追加学習ライブラリの比較では、対応アルゴリズムの数だけでなく、データ契約・評価・チェックポイント復旧を同じ運用へ載せられるかを見てください。まず小さなモデルで一連の流れを再現してから分散構成へ広げるのが現実的です。

3ステップで試す

  1. 1

    専用の仮想環境を作成する

    Python 3.10以上の環境を用意し、学習関連の依存関係を分離します。

    python -m venv .venv && source .venv/bin/activate
  2. 2

    確認済みの安定版をインストールする

    READMEのPython package手順を、調査時点の安定版へ固定して実行します。

    python -m pip install "trl==1.14.1"
  3. 3

    CLIとTrainerの読み込みを確認する

    モデルやデータセットを取得して学習を始める前に、CLIとSFTTrainerを利用できることだけを確認します。

    trl --help && python -c "from trl import SFTTrainer; print(SFTTrainer.__name__)"
公式READMEで確認

成長

成長の推移 · 直近30日

19,445 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
230
Open PR
163

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る
Stars
19,445
Forks
3,042
Watchers
108
Open Issues
114
Contributors
533
所有者種別
Organization
主要言語
Python
ライセンス
Apache-2.0
リポジトリ最終更新
2026/10/04

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?