
# 什么是Ray
#### 概念
Ray是一种用于构建和运行分布式应用程序的开源框架，由加州大学伯克利分校RISELab开发。它旨在简化机器学习（Machine Learning，ML）工作负载的分布式计算，并支持复杂的任务图（Task Graphs），这使得开发者可以编写并行或分布式程序，这些程序能够高效地利用集群中的所有可用资源。
Ray提供了一个简单易用的API来实现任务的并行化和分布式执行，允许用户将Python函数转换为远程过程调用（Remote Procedure Calls，RPCs），从而可以在多个节点上并发执行。此外，Ray还引入了动态任务图的概念，这使得它可以处理需要灵活调度的工作负载，例如强化学习、超参数调整和其他迭代式算法。
通过提供对分布式计算的支持，Ray促进了更快的模型训练和更有效的资源使用，对于那些希望在多台机器上扩展其应用的研究人员和工程师来说，是一个强有力的工具。同时，Ray生态系统还包括一些高级库，例如Ray Tune（用于超参数调整）、RLlib（用于强化学习）、Ray Serve（用于模型服务）等，以满足不同场景下的需求。
#### 应用场景
Ray作为一个分布式机器学习计算框架，常用于模型训练，模型微调等场景，可以通过Ray提供的并行计算能力，大幅提升运算效率。
