英語| 简体中文(単純化された中国語)
Generativerlは、生成補強学習の略であり、拡散モデルやフローモデルなどの生成モデルを使用して、強化学習(RL)問題を解決するためのPythonライブラリです。このライブラリは、生成モデルの力を強化学習アルゴリズムの意思決定能力と組み合わせるためのフレームワークを提供することを目的としています。
Generativerl_previewはGenerativerlのプレビューバージョンであり、多くの実験的特徴を備えた急速な発展にあります。 Generativerlの安定したバージョンについては、Generativerlにアクセスしてください。

| 連続変数のモデル | スコアマッチング | フローマッチング |
|---|---|---|
| 拡散モデル | ||
| 線形VP SDE | ✔ | ✔ |
| 一般化されたVP SDE | ✔ | ✔ |
| 線形SDE | ✔ | ✔ |
| フローモデル | ||
| 独立した条件付きフローマッチング | ✔ | |
| 最適な輸送条件付きフローマッチング | ✔ |
| 離散変数のモデル | 離散フローマッチング |
|---|---|
| Uカップリング/線形パス | ✔ |
| アルゴ/モデル | 拡散モデル | フローモデル |
|---|---|---|
| idql | ✔ | |
| QGPO | ✔ | |
| srpo | ✔ | |
| GMPO | ✔ | ✔ |
| GMPG | ✔ | ✔ |
出典からインストールしてください:
git clone https://github.com/zjowowen/GenerativeRL_Preview.git
cd GenerativeRL_Preview
pip install -e .または、Docker画像を使用できます。
docker pull zjowowen/grl:torch2.3.0-cuda12.1-cudnn8-runtime
docker run -it --rm --gpus all zjowowen/grl:torch2.3.0-cuda12.1-cudnn8-runtime /bin/bashGenerativerlを使用してLunlanderContinuous-V2環境でQ誘導ポリシー最適化(QGPO)の拡散モデルをトレーニングする方法の例を示します。
必要な依存関係をインストールします。
pip install ' gym[box2d]==0.23.1 'ここからデータセットをダウンロードし、現在のディレクトリにdata.npzとして保存します。
Generativerlは、ロギングにWandBを使用します。使用するときにアカウントにログインするように依頼します。実行して無効にすることができます。
wandb offline import gym
from grl . algorithms . qgpo import QGPOAlgorithm
from grl . datasets import QGPOCustomizedTensorDictDataset
from grl . utils . log import log
from grl_pipelines . diffusion_model . configurations . lunarlander_continuous_qgpo import config
def qgpo_pipeline ( config ):
qgpo = QGPOAlgorithm ( config , dataset = QGPOCustomizedTensorDictDataset ( numpy_data_path = "./data.npz" , action_augment_num = config . train . parameter . action_augment_num ))
qgpo . train ()
agent = qgpo . deploy ()
env = gym . make ( config . deploy . env . env_id )
observation = env . reset ()
for _ in range ( config . deploy . num_deploy_steps ):
env . render ()
observation , reward , done , _ = env . step ( agent . act ( observation ))
if __name__ == '__main__' :
log . info ( "config: n {}" . format ( config ))
qgpo_pipeline ( config )より詳細な例とドキュメントについては、Generativerlのドキュメントを参照してください。
Generativerlプレビューバージョンの完全なドキュメントは、Generativerlドキュメント(進行中)にあります。
Generativerlをよりよく理解できるように、いくつかのケースチュートリアルを提供します。詳細については、チュートリアルをご覧ください。
生成強化学習アルゴリズムのパフォーマンスを評価するためのベースライン実験を提供します。ベンチマークで詳細をご覧ください。
Generativerlへの貢献を歓迎します!寄付に興味がある場合は、寄稿ガイドを参照してください。
@misc{generative_rl,
title={GenerativeRL: A Python Library for Solving Reinforcement Learning Problems Using Generative Models},
author={Zhang, Jinouwen and Xue, Rongkun and Niu, Yazhe and Chen, Yun and Chen, Xinyan and Wang, Ruiheng and Liu, Yu},
publisher={GitHub},
howpublished={ url {https://github.com/opendilab/GenerativeRL}},
year={2024},
}Generativerlは、Apacheライセンス2.0に基づいてライセンスされています。詳細については、ライセンスを参照してください。