Робота з віддаленими сховищами DVC

CI/CD для машинного навчання

Ravi Bhadauria

Machine Learning Engineer

Що таке DVC Remotes

  • DVC Remote: місце зберігання даних
  • Подібні до Git remotes, але для кешованих даних
  • Переваги використання remotes
    • Синхронізація великих файлів і директорій
    • Централізоване або розподілене зберігання
    • Економія локального місця
  • Підтримувані типи сховищ
    • Amazon S3, GCS, Google Drive
    • SSH, HTTP, локальні файлові системи
CI/CD для машинного навчання

Налаштування remotes

  • Додавайте remotes командою dvc remote add
  • Для AWS
dvc remote add myAWSremote s3://mybucket
  • Налаштування через dvc remote modify
dvc remote modify myAWSremote connect_timeout 300
  • Зміни у .dvc/config
 ['remote "myAWSremote"']
     url = s3://mybucket
     connect_timeout = 300
CI/CD для машинного навчання

Локальні та типові remotes

  • Локальні remotes зручні для швидкого прототипування
  • Використовуйте системні директорії або NAS
dvc remote add mylocalremote /tmp/dvc
  • Призначайте remote за замовчуванням прапором -d
dvc remote add -d mylocalremote /tmp/dvc
  • Remote за замовчуванням задається в секції core файлу .dvc/config
[core]
remote = mylocalremote
CI/CD для машинного навчання

Вивантаження та отримання даних

  • Команди для передавання даних

    • Надіслати у remote: dvc push <target>
    • Отримати з remote: dvc pull <target>
  • Подібні до git push і git pull

    • Файли .dvc відстежує Git, не DVC
  • Мішенню може бути файл: dvc push data.csv
    • Або весь кеш: dvc push
  • Перевизначте типовий remote прапором -r
dvc push -r myAWSremote data.csv
CI/CD для машинного навчання

Відстеження змін у даних

  • Змініть вміст файлу даних, потім додайте зміни в наборі даних
dvc add /path/to/data/datafile
  • Зафіксуйте змінений файл .dvc у Git
git add /path/to/datafile.dvc
git commit /path/to/datafile.dvc -m "Dataset updates"
  • Надішліть метадані в Git
git push origin main
  • Завантажте змінений файл даних
dvc push
CI/CD для машинного навчання

Давайте потренуємось!

CI/CD для машинного навчання

Preparing Video For Download...