在 AI 运行时中使用 Genie Code

Important

此功能目前以公共预览版提供。

Genie Code 可帮助您在已连接到 AI Runtime 的笔记本环境中开发和排查深度学习工作负载问题。 它可以生成分布式训练代码,解决环境和依赖问题,并调查GPU工作负载故障。

Genie Code 在 AI 运行时笔记本中创建并运行分布式 CNN 训练工作负载,覆盖八块 H100 GPU。

Requirements

要将 Genie Code 与 AI 运行时配合使用:

开始

  1. 打开一个Azure Databricks笔记本。

  2. 将笔记本连接到 AI 运行时。 参见“ 从笔记本连接AI运行时”。

  3. 打开精灵代码窗格。

  4. 描述你想开发的工作量或你想解决的问题。

  5. 在批准前,请审查拟议的计划、规范变更和相关行动。

    Important

    精灵代码会犯错。 在运行生成代码、环境变更及其他拟议操作前,请先审查。 有些诊断需要额外的日志或工作量背景。

Genie Code 可以提供哪些帮助?

开发分布式训练工作负载

Genie Code 可以生成或更新 AI 运行时的训练代码。 它可以帮助您选择合适的 PyTorch 分布式策略,使用 @distributedDatabricks AI 运行时 SDK 中的 API(databricks.air),并应用 AI 运行时模式进行数据加载、检查点和机器学习流跟踪。 关于API的详细信息和示例,请参见 “笔记本中的分布式训练”。

解决环境和依赖问题

Genie Code 可以检查当前环境,区分软件包兼容性失败与代码或 API 变更,并推荐有针对性的修复方案。 它还能帮助你根据工作负载的依赖性在Databricks AI和标准环境之间做出选择。 有关可用环境的信息,请参见 “设置您的环境”。

调试GPU和分布式工作负载

Genie Code 可以利用笔记本输出和可用日志来调查分布式训练失败、通信错误、训练卡顿和 GPU 内存问题。 它可以帮助识别原始故障,并将其与其他等级的下游错误区分开来。 有关查看分布式训练日志的信息,请参见 实验跟踪与可观测性。

示例提示

开发分布式训练工作负载

  • “更新本笔记本,在AI运行时中对所有八块H100 GPU运行分布式训练。”
  • 检查这个分布式训练笔记本,并修正其中对 @distributed 和 MLflow 的使用。
  • “将本笔记本从serverless_gpu SDK迁移到AI Runtime SDK。”
  • 将此训练工作负载适配为 AI Runtime,并说明其中的重要变更。

解决环境和依赖问题

  • “这本笔记本在我安装新包后就坏了。 检查环境,确定问题是依赖问题还是代码API变更。”
  • “这个工作负载应该使用Databricks AI还是标准环境? 在更改任何东西之前,先审查其依赖关系并推荐环境。”
  • “诊断此包兼容性错误,并建议最小的适当更改。”

调试GPU和分布式工作负载

  • “用每个等级的可用输出分析这次失败的分布式训练运行,找出根本原因。”
  • 为什么这个分布式工作负载会卡住? 请使用笔记本输出来推荐下一步调试步骤。”
  • “调查这次GPU内存故障,并建议有证据支持的下一步。”

其他资源