基于Ray的AI工程化实践-大模型端到端的训推链路优化
如果无法正常显示,请先停止浏览器的去广告插件。
1. 基于Ray的AI
2.
3. 录
01 场景与痛点概况
02 Ray+LLM的分布式流批推理管道
03 Ray+Verl的强化学习训练优化
04 总结与展望
4. 01
场景与痛点概况
5. Case1 - 应
具类
数据处理
• 字幕提取,CPU密集型
• LLM和多模态推理,涉及GPU计算
多业务诉求
• 部分流程 致,字幕提取、抽帧、抽 段
• 差异在于业务的抽取逻辑,分析逻辑不 致
业务驱动
• 右侧为 光 段链路,典型结合AI能
• 其他如视频的翻译、 字驱动视频创作
• 对于业务研发,需要搭建复杂计算
具等
程来完成全链路
6. Case2 - 内容理解类
7. Case3 - 特征融合类
传统搜推
• 线上多阶段,融合多模态特征
多模数据处理
• 相关性特征提取,ASR/OCR提取
LLM蒸馏模型
• 微调LLM模型,进 步蒸馏Bert模型
• 解决语义召回,双塔及精排相关性等环节
8. Case4 - 强化训练
,如何优化全链路MFU
9. 多模态 -
标准
问题剖析视图
天/ 时级,离线计算
• 规模数据回溯
• 模型调研与训练
分钟/秒/级,近实时计算
•
视频稿件的内容理解实时订阅
10. 引
Ray
计算原语
• Actor、Task
• 动态任务图计算模型
• 细粒度并
+异构计算(函数级)
灵活弹性
• 云原
AI
,提供多层次的资源弹性
态丰富
• Core底座C++,上层丰富Python库
11. Ray的架构
系统层
• Distribute Scheduler
• Distribute Object Store
• Global Controller Service
应
层
• Driver,
户程序
,Job执
• Actor,对应class类,有状态
动器进程
状态task执
• Worker:对应method,
进程
载体
12. Ray的 态优势
热的RL,开源OpenRLHF和VeRL
13. 02
Ray+LLM
分布式流批推理管道
14. Ray Data - 架构
法满
时效场景
15. Data - 流计算
数据流调度
• 离线
式统
抽象为Stream
• Stream分为UnBounded和Bounded
• 引
End Flag 于控制数据流的结束标志
Backlog机制
• 基于下游Queue的数据积压做反压调控
• 低峰数据的IDLE超时下发机制,避免空等
回调通知
批量回调通知
• 完成数据
户,业务做幂等
16. Data - Source/Sink
Kafka
• 实时秒级场景,流式读写消息队列
Iceberg
• 近实时场景,流和批打通数据孤岛
• 上游的Ray流作业按Snapshot增量写
• 下游批和流作业消费不同Snapshot Between
多场景复
• 回刷、离线推理、离线训练、近实时(分钟级)
17. 案例/特征 程 - 流批管道
现状痛点
• CPU切 /Spark,GPU推理/k8s
• GPU利 率低,链路断层时效不
DAG定义
• 业务定义计算流程
• 抽象每个Stage的算
逻辑
• 对于特征场景,实时离线代码共
效果优劣
• 吞吐提升4倍,GPU 均利
率75%+
• 需幂等保障恢复,否则回刷失败从头计算
18. Data - 引 Checkpoint
DAG增强
• 标记CheckpointID
• 虚拟Barrier记录每个环节进度
CheckpointManager
• 运
时的状态持久化,存储到远程HDFS
标准化API
• Source
持Checkpoint状态的恢复机制
• 扩展HDFSSource,
规模离线回刷场景
• 切分HDFS 录划分BatchGroup,
对应CheckpointID
19. Data - LLM推理
融
LLM
• LLM Operator,
持主流
模型
整合社区新版
• Source/Sink复
态
• 标准化LLM流程,Processor+Stage
• LLM 持vLLM/SGLang,也
持OpenAI协议
20. 案例/特征融合 -
程
槛
21. Data - 实时 程
Checkpoint?记录级ACK?
22. Data - 并 Checkpoint
23. 案例/应 类 - 视频检索 成
流式处理
• 上游下发视频素材
• 多Stage阶段分布式处理
计算效率
• CPU+GPU异步并
计算
• 资源弹性,解决多Stage
泡问题
Checkpoint机制
• 3s 次Checkpoint,视频断点恢复
24. Data - Identifier ACK
25. 案例/内容理解 - OCR服务
计算模式
• 多阶段Shuffle
• 分 粒度分布式并
计算
• 视频粒度汇聚,层层过滤(2层)
视频容错
• 分 处理基于task原 的Retry策略
• 异常失败则Callback 户 定义幂等策略
• Shuffle过程,先完成视频快速下发下游计算
进 步Case
?弹性效率?调度策略?计算吞吐?
• 资源复
26. Data - Others
优先处理,
视频分
填充利
率
27. Data - Autoscaler
反复弹缩
• 模型推理类计算,冷启动慢
• 过频繁弹性,导致利
率低和吞吐差
防抖机制
• 防
滑动窗
1s内Pool触发多次弹性(含扩和缩)
策略
• 利 率 = Active Num/Total Num
• 原 瞬时值计算Pool利
率,不稳定性
• 滑动计算5s内各个Pool的利
率max/min
弹性可观测
• 反压原因可视化、各个阶段弹性次数和耗时
28. Ray Autoscaler - 多k8s池融合
资源割裂
• 在/离线多套k8s池
• GPU难以灵活弹性使
调度接
,如潮汐
层
• 对接多套k8s资源池
• Pod粒度申请管控,区分优先级
• Ray集群对应多个池
的Worker Pod
Autoscaler
• 按Pod优先级申请和释放资源
• 如潮汐Pod优先释放,独占资源Pod稳定性更好
29. Ray Head -
30. 03
Ray+veRL
强化学习训练优化
31. 强化学习RL - 概述
奥游戏
32. RL -
33. RL - 训练流程
34. veRL - 介绍
共享
35. 痛点 -
程效率
Reward耗时
导致GPU有空闲
Rollout和Actor切换
GPU和显存利
率未打满
Reward Model On LLM
外挂资源翻倍,利
率减半
36. 思路 - 异步+异构
内容来
解耦,类似Pipeline Parallel
左侧Paper,出
Ant Group, Hangzhou, China
37. 架构 - 异步流程
架构扩展
• 独
Rollout、Actor
Buffer队列
• 缓冲Generation和Experience
Async Flow
• Rollout基于Buffer Size反压
• Train异步从Buffer获取数据训练
• 如Buffer Size=1,就是原
的训练流程
38. 架构 - 通信优化
步Chunk切分
39. 架构 - Pipeline
TBO
• Two Batch Overlap
Overlap
• Buffer Size = 2
• Actor训练Batch N,Rollout 成N+1
公式化
• Actor训练>=Rollout推理+权重同步更新
40. 效果 -
程效率ROI
部署
• Qwen2-7B-Instruct
• 训练4 A100,推理2*4 A10
效果
• 图2优化后Actor,图3优化后Rollout
• 显著缩短训练耗时,整体提升50%-100%
后续的扩展
• 弹性Rollout集群,进
步加速训练的效率
• Reward Model On Vllm,Colocate Actor/Ref
41. 04
总结与展望
42. Ray - 多模态计算
43. 更多场景 - 扩展
Lance解决向量/模态数据的存储
44.
45. THANKS
模型正在重新定义软件
Large Language Model Is Redefining The Software