Ray 任务用于在 Workflow 中调度提交 Ray 作业到 Ray 集群,适用于分布式机器学习训练、强化学习、大规模数据预处理等场景。
概述
Ray 是一个高性能分布式计算框架,覆盖:
分布式机器学习训练 :大规模模型训练与超参数调优。
强化学习 :基于 RLlib 的 RL 训练。
大规模数据预处理 :特征工程、数据清洗。
模型服务 :基于 Ray Serve 的在线推理。
通用配置(任务名称、上游依赖、运行条件、参数、监控指标、告警、失败与超时策略)请参考 配置任务。
前提条件
工作空间已绑定 作业集群 - Ray 集群 类型计算资源。详见 创建计算资源。
已准备好 Ray 作业的 zip 包:包含入口脚本与依赖。
操作步骤
步骤 1:创建任务
1. 在工作流画布单击 + 添加任务 。
2. 任务类型选择 Ray 作业 。
步骤 2:配置基本信息
参数 | 说明 | 是否必填 |
任务名称 | 同工作流内唯一。 | 是 |
任务类型 | Ray 作业(不可改)。 | 是 |
任务来源 | 上传 zip 文件。 | 是 |
步骤 3:上传 zip 包
参数 | 说明 | 是否必填 |
zip 文件 | 包含 Ray 作业入口脚本与依赖的压缩包。 | 是 |
上传后 zip 包存储在工作空间内,供本任务调度使用。
步骤 4:配置计算资源
参数 | 说明 | 是否必填 |
计算资源 | 选择 作业集群 - Ray 类型 的计算资源。 | 是 |
入口指令 | 启动 Ray 作业的命令,例如 python -c 'import ray; ray.init(); ...'。 | 是 |
存储配置 | DLC 存储配置,决定 Ray 作业读写的存储位置。 | 是 |
计算环境 | DLC 计算环境,对应 Ray 内核版本。 | 是 |
提示
存储配置和计算环境的具体选项与 DLC 控制台保持一致,详细字段以控制台为准。
步骤 5:上游依赖与运行条件
参考 配置任务。Ray 任务可与其他任务类型混编,按 DAG 依赖执行。
步骤 6:监控指标、告警、失败与超时策略
步骤 7:保存
单击 创建任务 或 保存任务 。
参数说明
Ray 任务参数
Ray 任务在本期不支持参数传递(与其他任务类型不同)。如需在 Ray 作业中传递动态值,请通过 zip 包内置配置或环境变量自管理。
任务运行详情
Ray 任务的运行详情页 Tab:
Tab | 说明 |
运行结果 | 本期暂无(DLC 限制)。 |
运行日志 | 本期暂无。 |
任务洞察 | 本期暂无。 |
事件日志 | DLC 提供的事件日志,本任务展示。 |
Pod 详情 | DLC Pod 列表与状态。 |
Spark UI | 对应 Ray Dashboard,单击按钮跳转到 Ray UI。 |
使用限制
计算资源类型必须为 作业集群 - Ray 集群 ;不支持其他类型。
Ray 任务不支持参数传递(本期)。
任务来源本期仅支持本地上传 zip 包 ;引用 Studio workspace、Volume、远程 Git 仓库中的文件或 zip 包暂不支持。
由于 DLC 当前接口能力限制,运行结果、运行日志、任务洞察 Tab 暂不展示。
常见问题
Q1:怎么准备 Ray 作业的 zip 包?
推荐结构:
your_ray_job.zip├── main.py # 入口脚本├── requirements.txt # Python 依赖└── modules/ # 自定义模块└── trainer.py
入口指令通过
python main.py 触发,main.py 中初始化 Ray 集群并提交作业。Q2:Ray 任务能用于实时推理吗?
本任务用于离线 Ray 作业调度。实时推理建议使用 Ray Serve 部署,详见 部署在线推理服务(REST API)(待生成)。
Q3:Ray UI 能看到任务的执行细节吗?
可以。任务运行详情页单击 Spark UI 按钮跳转到 Ray Dashboard,查看作业拓扑、任务排队、资源使用情况。