开源、可自托管的实验跟踪工具,用于记录机器学习训练过程与元数据,并提供对比界面和 Python SDK。
treeverse/dvc
一款命令行工具和 VS Code 扩展,用于将数据和模型与 Git 一起版本化,并复现机器学习实验。
- Star
- 15,964
- Fork
- 1,343
- 未关闭 Issue
- 225
- 最近提交
- 20小时前
这是什么?
DVC(Data Version Control)是一款帮助开发者复现机器学习项目的命令行工具。大体积的数据文件和模型存放在云端或本地网络存储中,仓库里只提交指向它们的轻量元文件,使代码和数据版本保持同步。
借助 DVC,可以把流程定义为带有依赖、命令和输出的阶段。当某个输入发生变化时,只需重新运行受影响的步骤。实验记录保存在本地 Git 中,无需额外服务器,参数、指标和图表可以比较、应用和分享,方便他人复现。
远程存储支持 S3、Azure、Google Cloud、OSS、SSH 和 Google Drive 等,按需安装对应的可选依赖即可。VS Code 扩展提供实验追踪和数据管理的图形界面,但仍需单独安装 DVC 核心程序。
核心功能
- 01将大体积数据和模型纳入版本管理,Git 中只保存指向它们的元文件。
- 02定义可复现的流水线,仅重新运行受变更影响的阶段。
- 03无需服务器即可在本地追踪、比较和应用实验。
- 04向 S3、Azure、Google Cloud、SSH 等远程存储推送和拉取数据。
- 05通过 VS Code 扩展进行实验追踪和数据管理。
适用场景
- 在不把大文件提交进 Git 的前提下,与团队共享大型数据集。
- 检出某个提交并拉取对应数据,复现同事的模型训练。
- 在同一个 Git 仓库中运行并比较大量超参数实验。
- 构建多步骤机器学习流水线,只重跑发生变化的部分。
快速上手
- 1
使用 pip 安装 DVC
pip install dvc - 2
在 Git 仓库中用 DVC 跟踪数据文件夹
dvc add images/ - 3
将代码与数据连接为可复现的流水线阶段
dvc stage add -n featurize -d images/ -o features/ python featurize.py - 4
运行实验并比较结果
dvc exp run -n exp-baseline
使用前须知
- 使用某些远程存储(如 S3 或 Azure)需要额外安装可选依赖。
- VS Code 扩展需要单独安装核心 DVC 工具。
收录于专题
标签
#data-version-control#machine-learning#reproducibility#experiment-tracking#mlops#pipelines#data-science#ai#developer-tools#unstructured-data
常见问题
- dvc 是什么?
- 一款命令行工具和 VS Code 扩展,用于将数据和模型与 Git 一起版本化,并复现机器学习实验。 DVC(Data Version Control)是一款帮助开发者复现机器学习项目的命令行工具。大体积的数据文件和模型存放在云端或本地网络存储中,仓库里只提交指向它们的轻量元文件,使代码和数据版本保持同步。
- dvc 可以免费使用吗?用的什么许可证?
- dvc 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- dvc 还在维护吗?
- 活跃维护中。dvc 最近一次提交是在 2026年11月6日。
- dvc 适合用来做什么?
- 在不把大文件提交进 Git 的前提下,与团队共享大型数据集。 检出某个提交并拉取对应数据,复现同事的模型训练。 在同一个 Git 仓库中运行并比较大量超参数实验。 构建多步骤机器学习流水线,只重跑发生变化的部分。
- dvc 怎么安装和运行?
- 使用 pip 安装 DVC: pip install dvc 在 Git 仓库中用 DVC 跟踪数据文件夹: dvc add images/ 将代码与数据连接为可复现的流水线阶段: dvc stage add -n featurize -d images/ -o features/ python featurize.py 运行实验并比较结果: dvc exp run -n exp-baseline
- 在哪里获取 dvc?
- 源代码和安装说明在 GitHub 上:https://github.com/treeverse/dvc
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
6293+2 本周413PythonApache-2.0更新于 昨天
开源的 AI 训练跟踪与可视化平台,记录指标、超参数与硬件状态,支持云端或私有化部署。
4354+20 本周237PythonApache-2.0维护活跃更新于 昨天
开源 Python 平台,把机器学习与 AI 工作流组织成可在本地或云端基础设施上运行的流水线,涵盖模型训练到智能体。
5636+7 本周673PythonApache-2.0更新于 19小时前
用于跟踪、可视化和管理机器学习实验、数据集与模型的 Python 库及托管平台。
1.1万+2 本周914PythonMIT维护活跃更新于 17小时前
开源的 MLOps/LLMOps 套件,涵盖实验管理、数据版本、流水线、任务编排、调度与模型部署。
6933+7 本周811PythonApache-2.0维护活跃更新于 4天前
基于 luigi 的 Python 机器学习流水线框架,提供可复现性、任务依赖管理和中间结果缓存。
34263PythonMIT维护活跃更新于 6天前