Ray
Ray 是一个开源的 AI 计算引擎,用于跨 CPU 和 GPU 运行分布式 Python 工作负载。它协调训练、推理、数据处理和强化学习,使团队能够在无需重写代码的情况下,从笔记本原型迁移到生产集群。该项目由 Anyscale 维护,支持Today用于生产的规模大规模 AI 平台。
Ray 是 Python 原生的,基于一小组原语构建:任务(tasks)、演员(actors)和对象(objects)。这种设计让你可以分布式运行普通的 Python 函数和类,而不需要学习一套单独的集群API。在其之上,提供高层库,用于数据加载、超参数调优、模型训练、服务和强化学习流程。
该框架面向需要在异构硬件上进行细粒度扩展的 ML 工程师、数据科学家和平台团队。Ray 支持多模态数据、基础模型训练、批处理和在线 LLM 推理、GenAI 流水线,以及通过 Ray Data、Train、Serve、Tune 和 RLlib 等库实现的经典 ML 模型。
将Python代码从笔记本扩展到数千个GPU
Ray Data处理图像、视频、音频和结构化数据集
一行代码实现分布式基础模型训练
Ray Serve独立扩展模型,使用部分GPU资源
在混合CPU和GPU管道上进行批量和在线LLM推理
Ray RLlib运行生产级强化学习工作负载
开源框架,在 GitHub 上拥有 3.48 万星标和 ray.io 上列出的 1000 多名贡献者。
通过 Ray Data、Train、Tune、Serve 和 RLlib 库覆盖完整的机器学习生命周期。
通过原生 Python API,从本地开发扩展到大型 GPU 集群。
支持异构的 CPU 和 GPU 集群,针对每个工作负载实现独立扩展。
托管服务和企业功能现在线上Anyscale平台,而非ray.io本身。
大多数文档和深入的设置指南位于docs.ray.io,而非营销网站。
在本地开发之外,生产集群操作仍然需要分布式系统专业知识。
Ray是免费使用的吗?
是的。Ray是开源软件,您可以在自己的基础设施上免费安装和运行。核心框架、库以及docs.ray.io上的文档均无需订阅即可使用。
Ray支持哪些AI工作负载?
Ray支持并行Python代码、多模态数据处理、分布式模型训练、在线和批量模型服务、批量推理、强化学习、生成式AI工作流、大型语言模型推理和微调。主页列出了涵盖仿真、回测、RAG应用和基础模型训练的用例。
Ray包含哪些库?
Ray包含Ray Core及高级库:用于数据处理的Ray Data、分布式训练的Ray Train、超参数搜索的Ray Tune、模型部署的Ray Serve和强化学习的Ray RLlib。ray.io上的文档和产品页面还提及用于大型语言模型工作负载的Ray LLM。
Ray使用什么编程语言?
Ray是Python原生的。您编写标准的Python函数和类,Ray会将它们分布到集群中。该网站描述Ray是由开发者为希望扩展现有Python代码而无需采用新语言或特定框架集群层的开发者打造。
如何获得帮助或加入Ray社区?
Ray维护着社区Slack工作区、discuss.ray.io上的讨论论坛、github.com/ray-project/ray的GitHub仓库,以及X账号@raydistributed。Ray.io还提供Anyscale培训课程和docs.ray.io上的文档供实践学习。
Ray能在同一工作负载中使用不同的GPU和CPU吗?
可以。Ray设计支持异构计算。该网站强调混合GPU和CPU的独立扩展、分数资源分配,以及结合CPU预处理和GPU推理的流水线,以提升利用率并降低批量推理成本。

