Confira nosso novo datachain do produto (e dê -o!) Se você precisar de versões e processar um grande número de arquivos. Entre em contato conosco em [email protected] para discutir soluções comerciais e apoiar os cenários de reprodutibilidade e gerenciamento de dados da IA.
Site • Documentos • Blog • Tutorial • Tecnologias relacionadas • Como o DVC funciona • VS Extensão de código • Instalação • Contribuindo • Comunidade e Suporte

Controle da versão de dados ou DVC é uma ferramenta de linha de comando e uma extensão de código vs para ajudá -lo a desenvolver projetos de aprendizado de máquina reprodutível:
Leia nossa referência de comando para uma lista completa.
Um fluxo de trabalho da CLI comum inclui:
| Tarefa | terminal |
|---|---|
| Rastrear dados | $ git add train.py params.yaml$ dvc add images/ |
| Conecte o código e os dados | $ dvc stage add -n featurize -d images/ -o features/ python featurize.py$ dvc stage add -n train -d features/ -d train.py -o model.p -M metrics.json python train.py |
| Fazer alterações e experimentar | $ dvc exp run -n exp-baseline$ vi train.py$ dvc exp run -n exp-code-change |
| Compare e selecione Experiências | $ dvc exp show$ dvc exp apply exp-baseline |
| Código de compartilhamento | $ git add .$ git commit -m 'The baseline model'$ git push |
| Compartilhe dados e modelos ML | $ dvc remote add myremote -d s3://mybucket/image_cnn$ dvc push |
Incentivamos você a ler nossos documentos de início para entender melhor o que o DVC faz e como ele pode se encaixar nos seus cenários.
As analogias mais próximas para descrever os principais recursos do DVC são estes:
O GIT é empregado como de costume para armazenar e o código da versão (incluindo meta-arquivos de DVC como espaço reservado para dados). O DVC armazena arquivos de dados e modelo perfeitamente em um cache fora do Git, preservando quase a mesma experiência do usuário como se estivessem no repositório. Para compartilhar e fazer backup do cache de dados , o DVC suporta várias plataformas de armazenamento remoto - qualquer nuvem (S3, Azure, Google Cloud, etc.) ou armazenamento de rede no local (via SSH, por exemplo).
DVC Pipelines (gráficos computacionais) Conecte o código e os dados juntos. Eles especificam todas as etapas necessárias para produzir um modelo: dependências de entrada, incluindo código, dados, comandos a serem executados; e informações de saída a serem salvas.
Por último, mas não menos importante, a versão para experimento em DVC permite que você prepare e execute um grande número de experimentos. Seus resultados podem ser filtrados e comparados com base em hiperparâmetros e métricas e visualizados com várias parcelas.
Para usar o DVC como uma GUI diretamente do seu Code IDE, instale a extensão do DVC no mercado. Atualmente, ele apresenta rastreamento de experimentos e gerenciamento de dados, e mais recursos (suporte de pipeline de dados etc.) estão chegando em breve!
NOTA: Você precisará instalar o DVC do núcleo no seu sistema separadamente (conforme detalhado abaixo). A extensão o guiará, se necessário.
Existem várias maneiras de instalar o DVC: no código VS; Usando snap , choco , brew , conda , pip ; ou com um pacote específico do sistema operacional. As instruções completas estão disponíveis aqui.
snap install dvc --classic Isso corresponde à versão mais recente marcada. Adicione --beta para o mais recente candidato de versão marcada, ou --edge para a versão main mais recente.
choco install dvcbrew install dvcconda install -c conda-forge mamba # installs much faster than conda
mamba install -c conda-forge dvcDependendo do tipo de armazenamento remoto que você planeja usar para manter e compartilhar seus dados, pode ser necessário instalar dependências opcionais: DVC-S3, DVC-AZURE, DVC-GDRIVE, DVC-GS, DVC-OSS, DVC-SSH.
pip install dvc Dependendo do tipo de armazenamento remoto que você planeja usar para manter e compartilhar seus dados, pode ser necessário especificar uma das dependências opcionais: s3 , gs , azure , oss , ssh . Ou all para incluir todos eles. O comando deve ficar assim: pip install 'dvc[s3]' (neste caso, as dependências AWS S3, como boto3 serão instaladas automaticamente).
Para instalar a versão de desenvolvimento, execute:
pip install git+git://github.com/iterative/dvcPacotes independentes para Linux, Windows e Mac estão disponíveis. A versão mais recente dos pacotes pode ser encontrada na página do GitHub Lankes.
sudo wget https://dvc.org/deb/dvc.list -O /etc/apt/sources.list.d/dvc.list
wget -qO - https://dvc.org/deb/iterative.asc | sudo apt-key add -
sudo apt update
sudo apt install dvcsudo wget https://dvc.org/rpm/dvc.repo -O /etc/yum.repos.d/dvc.repo
sudo rpm --import https://dvc.org/rpm/iterative.asc
sudo yum update
sudo yum install dvcAs contribuições são bem -vindas! Consulte o nosso guia contribuinte para obter mais detalhes. Obrigado a todos os nossos colaboradores!
Este projeto é distribuído no Apache License versão 2.0 (consulte o arquivo de licença na raiz do projeto).
Ao enviar uma solicitação de tração a este projeto, você concorda em licenciar sua contribuição sob a versão 2.0 da Apache License para este projeto.
Iterativo, DVC: Controle da versão de dados - Git para dados e modelos (2020) doi: 10.5281/zenodo.012345.
Barrak, A., Eghan, EE e Adams, B. Sobre a co -evolução de pipelines de ML e código -fonte - estudo empírico de projetos de DVC, em Anais da 28ª Conferência Internacional do IEEE sobre análise de software, evolução e reengenharia, Saner 2021 .