redai-studio/Relax
An Asynchronous Reinforcement Learning Engine for Omni-Modal Post-Training at Scale
Relax – 非同期オムニモーダル強化学習エンジン
何であるか – Relax (Reinforcement Engine Leveraging Agentic X‑modality) は、大規模なマルチモーダル言語モデルにおける後期訓練用のオープンソースフレームワークです。PPO、GRPO、M2‑PO、RLOO、REINFORCE++など、包括的なオンポリシーアルゴリズムのフルセットを備えながら、テキスト、画像、動画、音声を単一パイプラインで処理できます。
なぜ重要か – LLMの強化学習は通常、ロールアウト(推論)フェーズがボトルネックになります。Relaxはカスタムの TransferQueue を使ってロールアウトとトレーニングを分離し、各コンポーネントを独立した Ray Serve サービスとして実行します。これにより、システムは以下の特徴を持ちます:
- 完全非同期 – ロールアウト、アクター、リファレンス、アドバンテージ計算、報酬モデルは別々のGPUクラスタに配置可能で、すべてのGPUを常に稼働させられます。
- エラスティック – REST API経由で推論エンジンをリアルタイムで追加・削除可能。クラウドバーストやフェデレーテッドクラスタに最適です。
- オムニモーダル – 同じコードパスで純テキスト、視覚言語、音声視覚タスクをサポート。Qwen‑3‑OmniのようなモデルでのエンドツーエンドRLを可能にします。
- プロダクション対応 – ヘルスチェック、自動回復、中央集積型メトリクス(WandB / TensorBoard / ClearML)、リアルタイム通知が内蔵されています。
コアコンポーネント
| レイヤー | 役割 |
|---|---|
| エントリポイント | train.py – CLI、Rayクラスタ接続、コントローラ起動 |
| オーケストレーション | Controller、Service、Registry – ループスケジューリング、配置グループ管理 |
| コンポーネント | Ray Serveデプロイメント:Actor、Rollout、Critic、ActorFwd、Advantages、GenRM |
| エンジン | SGLangベースのロールアウトエンジン、報酬ルーティング、データフィルタリング |
| バックエンド | Megatron‑LM(TP/PP/CP/EP)でトレーニング、SGLangで高スループット推論 |
| 分散処理 | Rayアクタグループ + 分散チェックポイントサービス(DCS)でNCCL/GLOOによる重み同期 |
3つの実行モードを提供しています:
- コロケート(同期) – アクターとロールアウトがGPUを共有(メモリ効率が高く、厳密なオンポリシー)。
- 完全非同期 – 各役割が独自のGPUクラスタで実行され、TransferQueueで通信。
- ハイブリッド – ロールアウトとアクターは分離されますが、リファレンス/アドバンテージステップはプロセス内に留まり、オーバーヘッドを低減しつつデータストリーミングを維持。
アルゴリズムと報酬
Relaxは豊富なアルゴリズムスイート(PPO、GRPO、M2‑PO、RLOO、REINFORCE++の変種、GSPO、SAPO、CISPO、オンポリシー蒸留など)とプラグイン可能な報酬ハブ(数学検証、GPQA、F1、IFBench、マルチモーダルOpen‑R1、および組み込みのLLMアスジェッジであるGenRM)を備えています。新しい報酬を追加するには、relax/engine/rewards/にPythonファイルを配置するだけでOKです。
セットアップ(Docker第一)
# 公式イメージの取得(CUDA、PyTorch、Megatron‑LM、SGLang、Rayを含む)
docker pull ghcr.io/redai-studio/relaxrl:latest
# GPUアクセス付きでコンテナを実行し、ワークスペースをマウント
docker run -it --gpus all --ipc=host --network=host \
-v /path/to/workspace:/root ghcr.io/redai-studio/relaxrl:latest bash
# コンテナ内での操作
git clone https://github.com/redai-studio/Relax.git /root/Relax
cd /root/Relax && pip install -e .
クイックスタートレシピ(ワンライナー)
- テキストのみの数学RL –
dapo-math-17kデータセットでQwen‑3‑4Bに8GPUのPPOを適用。 - 視覚言語 –
multimodal-open-r1-8k-verifiedデータセットでQwen‑3‑VL‑4Bに8GPUのGRPOを適用。 - オムニモーダル(画像+音声) –
AVQA-R1-6KデータセットでQwen‑3‑Omni‑30B‑A3Bに16GPU(2ノード)のGRPOを適用。
各スクリプトはhf downloadによるデータセットダウンロード、モデル取得、train.pyの適切なフラグでの起動を自動処理します。ログにはロールアウト進捗とトレーニングステップが表示され、チェックポイントはMegatron DCP形式で保存され、提供された変換スクリプトでHuggingFace重みに変換可能です。
Relaxを使うべきタイミング
- マルチモーダルRLの研究 – テキスト、画像、動画、音声を同時に学習できる単一コードベースが必要な場合。
- 大規模モデルへのスケーリング – 非同期アーキテクチャにより、複数クラスタをまたいで数十のGPUを常に稼働させられます。
- プロダクション品質のファインチューニング – 内蔵のヘルスマネジメント、メトリクス集約、アラート機能により、長時間実行ジョブの信頼性が向上。
- 新しいポリシーの実験 – モジュール式のアルゴリズムレジストリにより、コアエンジンを変更せずにカスタム損失を導入可能。
詳細情報の入手先
- ドキュメントサイト – https://redai-studio.github.io/Relax(バイリンガル、アーキテクチャ、非同期トレーニング、ハイブリッドモード、エラスティックロールアウトスケーリングなどについての完全ガイド)
- 論文 – arXiv:2604.11554(研究背景と性能数値を提供)。
- GitHubディスカッション – READMEバッジからWeChat QR、Dockerイメージ、コミュニティQ&Aへのリンクあり。
結論 – Relaxはプロダクション志向で、非常にカスタマイズ可能なRLプラットフォームであり、巨大なマルチモーダルLLMと強化学習ファインチューニングのギャップを埋め、非同期実行、エラスティックスケーリング、そして即時利用可能な広範なアルゴリズムを提供します。
関連
- プロジェクト
- プロジェクト
- Dispatch
- プロジェクト
- プロジェクト