UniRL 文档
快速开始

首次运行

组合并启动一个 UniRL 实验配方。

启动 Ray 作业前,先做 Hydra compose check。它能提前暴露路径、override、组件契约和 batch geometry 问题。

python -m unirl.train_diffusion --config-name=diffusion/sd3_trainside --cfg job --resolve

单机运行

单机通用启动器,第一个参数是 bucket 化的 recipe 名(<domain>/<recipe>):

bash examples/run_experiment_single_node.sh diffusion/sd3_trainside

默认入口是 diffusion;用 ENTRY 选择其他入口:

ENTRY=train_vlm bash examples/run_experiment_single_node.sh vlm/qwen_vl_argrpo_geo3k_mc_4x8
ENTRY=train_pe  bash examples/run_experiment_single_node.sh pe/pe_trainside_pickscore

只检查启动命令,不真正跑训练:

DRY_RUN=1 bash examples/run_experiment_single_node.sh diffusion/sd3_trainside

多机运行

多机 role-aware 启动器:

bash examples/run_experiment_multinode_taiji.sh diffusion/sd3_sglang_native_colocate

直接调用 Hydra 入口

可以直接调用入口并在命令行覆盖字段:

python -m unirl.train_diffusion \
  --config-name=diffusion/sd3_trainside \
  num_devices=8

Override 优先级:

CLI Hydra override > launcher env var > YAML default

示例 prompt

已提交的 prompt 列表在 datasets/ 下,例如 datasets/pickscore/train.txt(每行一个 prompt)和 datasets/pickscore/test.txt。recipe 的 data_source 默认指向它们。

真实运行时用环境变量或 CLI override 指向绝对路径:

DATA_PATH=/abs/path/train.json \
OUTPUT_DIR=/abs/path/outputs/run1 \
bash examples/run_experiment_single_node.sh diffusion/wan21_t2v

目录