从 unilab-rl(uni_rl)迁移¶
本页面向曾安装 uni_rl extra(pip install unilab[uni_rl])或直接
import uni_rl 的用户。
原 unilab-rl distribution(import namespace uni_rl,仓库
unilabsim/unilab_rl)已并入本
仓库的 unilab.rl(issue #2372,决策见
ADR-0016 RL Reintegration Into unilab.rl And Single Distribution)。发行面收敛为单一
unilab distribution:APPO / SAC / FlashSAC runner、异步 IPC runtime
与 RL logging 栈均随基础安装提供。
安装变化¶
从
uv sync命令中去掉--extra uni_rl,pip 安装中去掉unilab[uni_rl];RL 栈不需要任何 extra。空的过渡期
uni_rlextra 已移除,旧命令会因 unknown extra 报错。请从 脚本和 CI 中删除该 extra。从环境中卸载独立的
unilab-rl(pip uninstall unilab-rl),避免旧 实现残留并与unilab.rl并存。CLI 算法名、日志路径、checkpoint 字段与 metric schema 均不变。
Import 路径映射¶
旧 import( |
新 import |
|---|---|
|
|
|
无替代(checkpoint 保存/加载由 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
无替代(tensor-native collector 不再使用 host 转换辅助函数) |
|
|
|
|
unilab.rl 的包级公开面(from unilab.rl import RslRlVecEnvAdapter、
UNILAB_DP_LOG_DIR、launch_torchrun_workers 等
src/unilab/rl/__init__.py 中列出的名称)不变,经惰性加载解析。
不承诺永久支持 import uni_rl,请迁移到 unilab.rl.* 路径。
行为变化¶
SAC / FlashSAC runner builder(
unilab.rl.algos.sac.double_buffer与unilab.rl.algos.flash_sac.double_buffer中的build_double_buffer_runner) 改为注入式:训练装配层传入runtime_settings、inference_placement、backend_device_resolver、backend_device_configurer;旧backend_device_binder参数已移除。缺省时使用 runner 侧默认值。扩展机制不变:
runtime_resolver、class_name、actor_adapter_modules与 actor registry 继续有效,指向外部包的 dotted path 保持原值;只有内置 dotted path 移到了unilab.rl.*namespace。“uni_rl 不得 import UniLab” 的跨包边界不再适用;RL 栈改为遵守
unilab.rl的内部分层规则(RL 核心不依赖 env/training 层),分层 DAG 见 ADR-0016 RL Reintegration Into unilab.rl And Single Distribution。