主题
RLark 与 RLinf
RLinf 工作负载包含算法、Hydra 配置和训练程序。把工作负载所需的镜像、脚本、环境变量、资源和挂载填入 RLark 后,平台会创建 Job 和 Worker、启动 Ray,并提供日志、终端、存储挂载和工作流入口。
text
RLinf 代码、Hydra 配置、数据和模型
│ 通过镜像、挂载和运行命令接入
▼
RLark Web 控制台 → rlinf.io/v1alpha1 Job → Task → Worker / Pod
│
└─ Ray 启动后执行 RLinf 命令RLark 如何接入 RLinf
提交 RLinf 工作负载时,需要提供:
- 包含 RLinf 代码、Python 依赖和运行环境的镜像;
- Hydra 配置、命令行覆盖项,以及应用实际执行的启动命令;
- Actor、Rollout 和 Environment 等角色所需的节点、资源和挂载;
- 数据、模型、checkpoint 和输出在容器中的路径。
RLark 会把这些内容保存为 Job,并根据角色创建 Task 和 Worker。镜像内的应用解析 Hydra 配置,因此需要在运行日志或记录中输出最终配置并与启动清单核对。提交前请把所需的 RLinf 版本安装到镜像中,并把 node_groups、component_placement、hardware rank 或 env_configs 手动转换为 RLark 角色;Job YAML 预览只显示将提交的 RLark 资源。
迁移现有任务时,按照迁移已有 RLinf 工作负载确定角色、节点选择、命令和挂载。
确认版本兼容性
先确认当前环境是否有 RLinf 版本兼容表
如果平台管理员没有提供版本兼容表,控制台中已有的 RLinf-rlark 路径、0.2 镜像标签或历史任务只能说明这些配置曾被保存,不能说明它们与上游 RLinf 0.4.0 兼容。
当前环境没有版本兼容表时,需要为每个工作负载单独记录并验证:
- 使用上游 RLinf 还是 fork,以及精确 commit 和补丁来源;
- RLinf、Python、Ray、CUDA、驱动和设备依赖版本;
- 不可变镜像 digest;
- 原始 Hydra 配置、命令行 override 和预期的解析结果;
- 数据集、模型、checkpoint 和输出位置;
- 每个角色的放置、GPU、设备、网络和存储条件;
- 可以用来确认启动成功、训练有效或运行失败的日志和输出。
缺少任一项时,请先完成工作负载验证。能够打开创建弹窗或生成 YAML,只说明表单内容可以转换为 Job 配置。
准备并传入配置
下表用于确认每类配置从哪里进入任务,以及运行后到哪里核对。
| 配置位置 | 包含的内容 | 接入和验证方式 |
|---|---|---|
| 镜像 | RLinf 代码、Python/Ray 环境、系统和设备依赖、镜像默认值 | 在 Job 中填写不可变镜像引用;数据面拉取镜像,应用启动后输出实际代码和运行时版本 |
| RLinf/Hydra | 算法、组件放置、环境配置和业务输出约定 | 随镜像或挂载提供,并由应用解析;把最终配置写入日志或运行记录 |
| 命令行 override | 运行时对 Hydra 或应用参数的覆盖 | 写入运行脚本并在启动清单中记录;RLark 按脚本内容执行 |
| RLark Job | 角色、Header、节点选择、副本、GPU/设备、镜像、脚本、变量、挂载、网络域、SSH 公钥和 TensorBoard 目录 | 在创建器中填写并核对 YAML;RLark 据此创建 Task 和 Worker |
| 数据与产物 | 数据集、模型、checkpoint、日志、视频和评测结果的版本与来源 | 通过镜像或存储挂载接入;把需要保留的输出写入持久路径,并在运行记录中保存版本和位置 |
最终使用哪一组算法配置,由镜像内应用、Hydra 配置和运行命令的优先级决定。RLark 不计算合并后的配置,也不会自动记录每个配置值来自哪里。