我已经设置了我的git repo并初始化了dvc。此外,还添加了远程存储(aws s3存储桶),请参见下面的设置。
dvc remote add -d awsstorage s3://mlops-artifacts
dvc remote add s3cache s3://mlops-artifacts/cache
dvc config cache.s3 s3cache
git add .dvc/config && git commit -am "comment"
git push
一旦设置完成,我创建一个新的分支,然后通过
跟踪我的训练数据dvc remote --external s3://mlops-artifacts/experiment/one.csv
dvc remote --external s3://mlops-artifacts/experiment/two.csv
我在sagemaker中运行我的训练,模型文件转储到,例如s3://mlops-artifacts/output/sagemaker-experiment/output/model.tar.gz。为了跟踪它,我通过dvc
添加它dvc add --external say s3://mlops-artifacts/output/sagemaker-experiment/output/model.tar
git add model.tar.dvc && git commit -am "comment"
git push
我想知道,如果还有什么,我需要做跟踪模型输出。我希望能够创建其他分支,进行实验并跟踪它们的模型输出。如果生成的模型被转储到相同的s3路径,通过DVC add——external添加模型,应该跟踪模型的每个版本吗?
接下来,我想在生成的输出/模型中添加一些元数据,所以我下载了GTO (https://mlem.ai/doc/gto/user-guide/dvc/)并按照
的说明进行操作dvc import-url --no-download s3://mlops-artifacts/output/sagemaker-experiment/output/model.tar
git add model.tar.dvc
gto annotate model --path model.tar
git add artifacts.yaml
git commit -m "annotate it with GTO"
dvc push
git push
我如何添加版本信息到我的模型。文档讨论了如何设置模型注册表,并显示了以下命令来下载工件,这里的$Repo是什么?这一切应该如何设置/工作。这里的医生不清楚吗?
dvc get $REPO $ARTIFACT_PATH --rev $REVISION -o $OUTPUT_PATH
我希望能够创建其他分支并进行实验并跟踪它们的模型输出
你可以创建一个DVC管道调用你的训练和做实验/创建分支与dvc exp run
https://dvc.org/doc/start/experiments/building-pipelines
如果生成的模型被转储到相同的s3路径,通过dvc add—external添加模型,应该跟踪模型的每个版本吗?
IIUC, DVC会将您用dvc add -external s3://mlops-artifact/something
跟踪的文件复制到DVC缓存中,因此即使在s3上重写了dvc add
,也应该允许您访问文件版本。https://dvc.org/doc/user-guide/data-management/managing-external-data
接下来,我想在生成的输出/模型中添加一些元数据,所以我下载了GTO (https://mlem.ai/doc/gto/user-guide/dvc/)并按照说明
你不需要运行dvc import-url --no-download s3://mlops-artifacts/output/sagemaker-experiment/output/model.tar
,因为在运行dvc add --external s3://mlops-artifacts/output/sagemaker-experiment/output/model.tar
之后它已经被dvc跟踪了。
这里的$Repo是什么
这是一个使用shell变量$REPO的例子。将其替换为github repo URL(如果您将cd
替换为您的repo文件夹,则将其替换为"."
)。
如何添加版本信息到我的模型
您可以使用命令gto register
为您的模型创建一个语义版本。这将创建一个Git标记,稍后您可以引用并使用它来访问所需的模型版本。https://mlem.ai/doc/gto/get-started/
注意:
中有一个$REVISION$ dvc get $REPO $ARTIFACT_PATH --rev $REVISION -o $OUTPUT_PATH