Обязательно ли фиксировать файлы DVC из наших конвейеров CI?

DVC использует коммиты git для сохранения экспериментов и перехода между экспериментами.

Можно ли избежать автоматической фиксации в CI/CD (для сохранения артефактов данных после dvc repro на стороне CI / CD).

1 ответ

Решение

сделаете ли вы его частью конвейера CI

DVC часто служит частью инфраструктуры MLOps. В блоге есть популярное сообщение о CI/CD для ML, где DVC используется под капотом. Другой пример, но с GitLab CI/CD.

сценарий, в котором вы будете интегрировать команду dvc commit с конвейерами CI?

Если ты имеешь ввиду git commit файлов DVC (не dvc commit), тогда да, вам нужно зафиксировать dvc-файлы в Git во время процесса CI/CD. Автоматическая фиксация - не лучшая практика.

Как избежать фиксации Git в CI/CD:

  1. После обучения модели ML в CI/CD сохраните измененные dvc-файлы во внешнем хранилище (например, артефакт / выпуски GitLab), затем загрузите файлы на машину разработчика и зафиксируйте там. Пользователи обычно пишут сценарии для его автоматизации.
  2. Дождитесь выпуска DVC 1.0, когда будет реализован run-cache (например, build-cache). Run-cache делает dvc-файлы эфемерными, и никаких дополнительных коммитов Git не требуется. Технически run-cache- это ассоциативное хранилищеrepo state --> run results вне репозитория Git (в удаленных данных).

Отказ от ответственности: я один из создателей DVC.

Другие вопросы по тегам