AI 运行时概述
AI 运行时是 Databricks 的计算产品/服务,旨在用于 深度学习 工作负载,并为 Databricks 无服务器提供 GPU 支持。 可以使用 AI 运行时使用你喜欢的框架来训练和微调自定义模型,并获取最先进的效率、性能和质量。 有关 无服务器计算 如何适应 Databricks 体系结构的概述,请参阅 无服务器工作区体系结构。
主要功能
- 完全托管的 GPU 基础结构 - 无服务器、灵活访问 GPU,无需群集配置、驱动程序选择或自动缩放策略来管理。
- 专用于深度学习的运行时 - 选择一个最小的默认基础环境,以最大程度地灵活地使用依赖项或预加载常用 ML 框架的全功能 AI 环境。
- 在笔记本、作业、Unity Catalog 和 MLflow 之间本地集成,实现无缝开发、数据访问和实验跟踪。
硬件选项
| 加速器 | 最适用于 | 多 GPU |
|---|---|---|
| A10 | 小型到中型 ML 和深度学习任务,例如经典 ML 模型或微调较小的语言模型 | 否 |
| H100 | 大规模 AI 工作负载,包括训练或微调大型模型或运行高级深度学习任务 | 是(8 个 GPU) |
推荐用例
Databricks 建议将 AI Runtime 用于涉及深度学习、大规模经典工作负载或 GPU 的任何自定义模型训练用例。
例如:
- LLM 微调(LoRA,QLoRA,完全微调)
- 计算机视觉(对象检测,图像分类)
- 基于深度学习的推荐器系统
- 强化学习
- 基于深度学习的时序预测
要求
- 以下 Azure 支持的区域之一中的工作区:
centraluseastuseastus2northcentraluswestcentraluswestuswestus3
局限性
- AI 运行时仅支持 A10 和 H100 加速器。
- 合规性安全配置文件工作区(如 HIPAA 或 PCI)不支持 AI 运行时。 不支持处理受管制的数据。
- AI 运行时的计划任务不支持通过“环境”面板添加依赖项。 请改为在笔记本中以编程方式安装
%pip install依赖项。 - 对于 AI 运行时上的计划作业,不支持针对与 notebook 关联的不兼容包版本的自动恢复机制。
- 工作负荷的最大运行时为 7 天。 对于超出此限制的模型训练作业,请在达到最大运行时后实现检查点并重启作业。
- AI 运行时提供对 GPU 资源的按需访问。 虽然这会导致对 GPU 的轻松、灵活的访问,但可能存在容量受限或在你的区域中不可用的时间段。
- 在某些情况下,AI 运行时在高需求时刻利用跨区域 GPU。 可能存在与此类使用情况相关的外流成本。
连接到 AI 运行时
可以从笔记本以交互方式连接到 AI 运行时、将笔记本计划为定期作业,或使用作业 API 和 Databricks 资产捆绑包以编程方式创建作业。 有关分步说明,请参阅 “连接到 AI 运行时”。
设置环境
AI 运行时提供两个托管的 Python 环境:一个最小的默认基础环境,以及一个功能齐全的 Databricks AI 环境,该环境预加载了常用的 ML 框架(如 PyTorch 和 Transformers)。 有关选择环境、缓存行为、导入自定义模块和已知限制的详细信息,请参阅 设置环境。
读取数据
了解数据访问在 AI 运行时上的工作原理对于流畅的体验至关重要。 有关详细信息,请参阅 在 AI 运行时上加载数据。
分布式训练
重要
此功能在 Beta 版中。 工作区管理员可以从 预览 页控制对此功能的访问。 请参阅 Manage Azure Databricks 预览版。
AI 运行时支持在笔记本连接到的单个节点上跨多个 GPU 进行分布式训练。 使用 Python API(Beta 版)中的@distributedserverless_gpu修饰器,可以使用 PyTorch DDP、FSDP 或 DeepSpeed 启动多 GPU 工作负载,配置最少。 有关详细信息,请参阅 多 GPU 工作负荷。
试验跟踪和可观测性
有关 MLflow 集成、查看日志和模型检查点管理,请参阅 试验跟踪和可观测性。
用于深度学习的 Genie Code
Genie Code 支持 AI 运行时上的深度学习工作负载。 它可以帮助生成训练代码、解决库安装错误、建议优化和调试常见问题。 请参阅 使用 Genie Code 进行数据科学。
Guides
若要从经典工作负荷、示例笔记本和故障排除进行迁移,请参阅 AI 运行时的用户指南。