Rollout 服务 API
Rollout 服务通过 SGLang 引擎生成训练样本。它以 Ray Serve 部署方式运行,通过 FastAPI ingress 暴露 HTTP 端点,用于生命周期管理、评估触发和异步权重更新协调。
概览
| 属性 | 值 |
|---|---|
| 模块 | relax.components.rollout |
| 部署方式 | @serve.deployment |
| 入口 | FastAPI |
生命周期
Rollout 运行后台循环:
- 通过
RolloutManager.generate()使用 SGLang 引擎生成样本 - 通过可插拔的奖励函数(
rm_hub/)计算奖励 - 将数据发布到
TransferQueue供 Actor 消费 - 可选地按配置的间隔触发评估
- 管理过期边界以避免数据漂移
异步权重协调
在全异步模式下,Rollout 服务与 Actor 协调权重更新:
- Actor 调用
/can_do_update_weight_for_async检查 rollout 是否可以暂停 - 如果当前步的数据生产已完成,Rollout 暂停
- Actor 推送新权重
- Actor 调用
/end_update_weight恢复 rollout
