如何在作业终止后将生成的文件从 Azure Databricks 导出到 Azure DevOps?

How to export files generated to Azure DevOps from Azure Databricks after a job terminates?

我们正在使用 Azure DevOps 向 Databricks 提交训练作业。培训工作使用笔记本来培训机器学习模型。我们正在使用 databricks CLI 从 ADO 提交作业。

在笔记本中,在步骤中,我们创建了一个 .pkl 文件,我们希望将其下载到构建代理并将其作为工件发布到 Azure DevOps 中。我们如何做到这一点?

这实际上取决于该文件的存储方式:

  1. 如果只是保存在DBFS上,可以使用databrics fs cp 'dbfs:/....' local-path
  2. 如果文件存储在本地文件系统,则将其复制到DBFS(例如,通过使用dbutils.fs.cp),然后使用上一项
  3. 如果模型由 MLflow 跟踪,那么您可以通过 MLflow API (or REST API) (you can do it to DevOps directly as well, just need to have correct credentials, etc.) or use this tool to export models/experiments/runs to local disk
  4. 将模型显式导出到 DBFS