6

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

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

4

1 回答 1

6

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

DVC 通常作为 MLOps 基础设施的一部分。有一篇关于 ML 的 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 发布时,将实现运行缓存(如构建缓存)。运行缓存使 dvc 文件变得短暂,不需要额外的 Git 提交。repo state --> run results从技术上讲,run-cache 是Git 存储库之外的关联存储(在远程数据中)。

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

于 2020-04-16T09:36:01.967 回答