ray 笔记
背景:
记录听课笔记
笔记:
1. ray的作用是什么?

刚开始业界只有spark等(2010年)计算框架,用于离线计算,做报表分析等。
随着大模型时代(2017年),当时的Ion Stoica:伯克利计算机系教授。发现,传统分布式计算框架无法满足新兴的ai/机器学习的需求,尤其是强化学习。
主要解决的痛点:
-
spark 等传统框架只适合批处理,静态流水线,不适合动态AI任务。
-
强化学习需要记住上一步的状态。强化学习是,记住上一步,推理下一步。
Ray 是怎么解决这个问题的?
Ray 引入了 Actor(分布式有状态对象) 和更细粒度的动态容错:
业务失败(摔倒/扣分):作为正常状态流转处理,动态分支迅速调整,不影响底层框架运行。
物理故障(节点挂掉):
Ray 支持 Actor 级细粒度恢复(比如通过 Checkpoint 只恢复挂掉的那一个环境模拟器,或者快速迁移到备用节点)。
它不需要推翻整个计算图(DAG)从头回溯,其余成百上千个正在正常运行的 Worker 可以继续工作。的学习是,定好任务一直跑,失败了就重新跑,而强化学习要记住上一步。失败了上一步的状态就丢失了。
- python的生态扩展困难,python有GIL锁的问题,所以,设计者想要python的使用人,通过一个装饰器@ray 来让原本单机能跑的代码,无缝扩展到几百台。

2.有了vllm为什么还要ray?
vllm更专注于引擎,专注于单机/多卡上的超快推理,核心绝活是
PagedAttention(显存优化)、连续批处理(Continuous Batching)和张量并行(Tensor Parallelism)。
ray 更专注于调度指挥,专注于跨机器、跨节点的集群资源编排,动态扩容容,任务路由与高可用。
3.技术选型,为什么要选择vllm

4. 环境准备,优云智算。
1.加载conda环境
2.挂载nfs
3.pdsh 分布式shell工具 ???(可以忽略)
4.执行ray命令
记录一下博主执行过程的参数




网友总结:

我的总结:
就是用ray作为vllm的后端部署了一下。

浙公网安备 33010602011771号