NVIDIA-NeMo/RL
Scalable toolkit for efficient model reinforcement
🎯 NeMo RL とは何か?
NeMo RL は NVIDIA のオープンソースの ポストトレーニング強化学習ライブラリ で、より大きな NeMo フレームワーク の上に構築されています。大規模なマルチモーダルモデル(LLM、ビジョン・ランゲージモデル、MoE モデルなど)を GRPO、DPO、GDPO、DAPO、またはポリシー内蒸留などの強化学習ベースの目的でファインチューニングできます。焦点は スケーラビリティ にあり、単一 GPU での迅速な実験から、PyTorch DTensor または NVIDIA の Megatron Core を通じて高度な並列化(Tensor、パイプライン、エキスパート、FSDP2 など)を活用した、マルチノード・マルチGPUの巨大なジョブまで実行可能です。
🚀 コア機能(README に基づく)
| 機能 | 詳細 |
|---|---|
| アルゴリズム | GRPO/GSPO/DAPO、GDPO、LoRA強化RL(GRPO、DPO)、教師ありファインチューニング(SFT)、ポリシー内蒸留、マルチターンRL、X‑Token非ポリシー蒸留。 |
| モデル対応 | 主要なLLMファミリー(Nemotron‑3、Qwen 3.5、Gemma 4、GLM 5.1、Minimax‑M3など)、密度型およびMoEバージョン、さらにビジョン・ランゲージモデル。 |
| トレーニングバックエンド | • DTensor – PyTorchネイティブ分散トレーニング(TP、SP、PP、CP、FSDP2)。 • Megatron Core – 最大規模モデル向けのNVIDIAの6次元並列化エンジン。 |
| 生成/ロールアウトバックエンド | vLLM(高スループット推論)および Megatronネイティブ推論(重み変換不要)。 |
| パフォーマンス機能 | Muonオプティマイザ、スペキュレーティブデコード、FP8低精度トレーニング、シーケンスパッキング、長文脈(YARN)サポート、非同期ロールアウト/リプレイバッファ、Rayベースリソースオーケストレーション、GB200 GPU用コンテナイメージ。 |
| 統合 | Hugging Faceモデル読み込み、NeMo‑Gym環境サポート、Docker/NGCコンテナデプロイメントのシームレス化、広範なYAMLベースレシピシステム。 |
| ドキュメント&ツール | 完全なドキュメントサイト、設計ドキュメント、例題設定、Google‑Colabノートブック、CIテスト済みリリース、コミュニティディスカッション。 |
📚 一般的な利用ケース
| シナリオ | NeMo RLがどう役立つか |
|---|---|
| 大規模LLMのヒューマン好みに合わせる(例:Nemotron‑3‑Ultra)RLHFスタイルのトレーニングで | GRPO/DAPO レシピを使用し、バックエンドを選択(中規模ならDTensor、100B以上ならMegatron)、マルチノードGPUクラスタまたは提供されたNGCコンテナで実行。 |
| ビジョン・ランゲージモデルの報酬ベースファインチューニングで改善 | ライブラリはVLMをサポートし、画像・テキストデータセットに対応する GRPO レシピを提供。同じ並列化インフラを活用。 |
| 新しいRLアルゴリズムの研究(例:GDPO、X‑Token蒸留) | すべてのアルゴリズムはモジュール化されたコンポーネントとして提供。YAML設定で簡単に交換可能で、grpo_smoke.yaml で迅速なスモークテストが可能。 |
| ラップトップや単一GPUでの迅速プロトタイピング | ネイティブPyTorch(DTensor)パス はMegatron不要。DockerクイックスタートでvLLMとSGLangが事前にインストールされた実行環境が即座に利用可能。 |
| プロダクション規模のRLサービング | Rayベース分散トレーニング+非同期ロールアウト+コンテナイメージにより、研究からプロダクションパイプラインまでスケーリング可能。 |
🛠️ すぐに始める(要約)
- 公式コンテナを取得(推奨):
docker pull nvcr.io/nvidia/nemo-rl:latest - リポジトリをクローン(サブモジュール含む):
git clone --recursive https://github.com/NVIDIA-NeMo/RL.git nemo-rl cd nemo-rl - テストジョブを実行(バックエンドを選択):
- DTensor:
uv run python examples/run_grpo.py - Megatron:
uv run examples/run_grpo.py --config examples/configs/grpo_math_1B_megatron.yaml
- DTensor:
- スケールアップ:提供されたYAMLレシピを編集(GPU数、並列化フラグ)し、RayまたはNGCコンテナでマルチノードクラスタ上で起動。
📌 なぜ重要なのか
NeMo RL は 最新のRLベースのアライメントアルゴリズム、最先端の大規模モデル並列化、および プロダクション対応ツール(Docker、Ray、vLLM)を統合しています。大規模なLLM/VLMをファインチューニングまたはアライメントする際、分散スタックをゼロから構築しなくてもよい、単一でしっかりドキュメント化されたエントリーポイントを提供します。
TL;DR – NeMo RL は、多数の現代的なアルゴリズム、バックエンド、ハードウェア構成をサポートする、本格的で積極的にメンテナンスされているNVIDIAのライブラリであり、大規模マルチモーダルモデルの強化学習ポストトレーニングをスケーリングするためのものです。
関連
- プロジェクト
- Dispatch
- Dispatch
- プロジェクト
- プロジェクト