是否有必要从我们的 CI 管道提交 DVC 文件?

B.P*_*Pai 6 git continuous-integration machine-learning dvc mlops

DVC 使用 git commits 来保存实验并在实验之间导航。

是否可以避免在 CI/CD 中进行自动提交(dvc repro在 CI/CD 端之后保存数据工件)。

Dmi*_*rov 6

你会让它成为 CI 管道的一部分吗

DVC 通常作为 MLOps 基础设施的一部分。有一篇关于机器学习的 CI/CD的流行博客文章,其中 DVC 在幕后使用。另一个例子,但使用 GitLab CI/CD。

将 dvc commit 命令与 CI 管道集成的场景?

如果您的意思git commit是 DVC 文件(不是dvc commit),那么是的,您需要在 CI/CD 过程中将 dvc 文件提交到 Git 中。自动提交不是最佳实践。

如何避免 CI/CD 中的 Git 提交:

  1. 在 CI/CD 中进行 ML 模型训练后,将更改的 dvc 文件保存在外部存储中(例如 GitLab 工件/发布),然后将文件发送到开发人员机器并在那里提交。用户通常编写脚本来自动化它。
  2. 等待 DVC 1.0 发布时将实现运行缓存(如构建缓存)。Run-cache 使 dvc-files 变得短暂,不需要额外的 Git 提交。从技术上讲,运行缓存是repo state --> run resultsGit存储库之外的关联存储(在数据远程中)。

免责声明:我是 DVC 的创建者之一。

  • 这很棒。一直在思考如何将dvc与gitlab CICD yml一起使用。如果教程中有一章专门介绍这一点就太好了。 (2认同)