pip install ray[default]
和 pip install ray
的主要区别在于安装的组件范围和功能完整性:
1. 核心功能差异
-
pip install ray
仅安装 Ray 的核心模块(ray-core
),包括基础的分布式任务调度、Actor 模型和对象存储等基本功能。适合只需要基础分布式计算能力的场景,例如简单的任务并行化或单机测试。 -
pip install ray[default]
安装完整功能包,包含 Ray 核心模块 及所有官方扩展组件,例如:- Ray Serve(模型服务化工具)
- Ray Tune(超参数调优库)
- Ray Data(分布式数据处理)
- Dashboard(集群监控界面)
- 集群管理工具(如 Ray Autoscaler)
适合生产环境或需要全功能支持的场景(如分布式训练、模型部署等)。
2. 依赖项覆盖
-
pip install ray
仅包含最小依赖,可能缺少部分高级功能所需的库(如 Dashboard 的 Web 界面依赖、GPU 加速库等)。若后续需要扩展功能,需手动安装额外依赖。 -
pip install ray[default]
包含所有官方扩展组件的依赖,例如:aiohttp
(Dashboard 的 Web 服务依赖)numpy
、pandas
(数据处理基础库)tensorflow
、pytorch
(机器学习框架集成)
安装后无需额外配置即可使用全部功能。
3. 适用场景
-
pip install ray
- 轻量级开发或测试环境。
- 仅需基础分布式计算功能(如替代
multiprocessing
)。
-
pip install ray[default]
- 生产环境部署(如模型服务化、分布式训练)。
- 需要集群监控、资源自动扩缩容等高级功能。
- 依赖官方扩展库(如 RLlib 强化学习、Ray SGD 分布式训练)。
4. 常见问题
- Dashboard 缺失:仅安装
ray
时,Dashboard 可能无法启动(依赖aiohttp
等组件),需通过ray[default]
补全依赖。 - 版本兼容性:
ray[default]
会固定依赖版本(如aiohttp==3.7.4
),避免因版本冲突导致功能异常。
总结
特性 | pip install ray | pip install ray[default] |
---|---|---|
核心功能 | 基础分布式计算 | 全功能支持(含扩展组件) |
依赖项 | 仅核心依赖 | 核心 + 扩展依赖(如 Dashboard) |
适用场景 | 轻量级开发、单机测试 | 生产环境、复杂分布式任务 |
安装体积 | 较小 | 较大(包含所有扩展库) |
建议优先使用 pip install ray[default]
,除非明确需要最小化安装。