Assign stage to model version
To manage model lifecycle, you can assign stages (such as dev, staging,
prod, etc.) to specific model versions.
To assign a stage to a model version, DataChain Studio uses GTO to create an annotated Git tag with the specified stage and version number.
You can write CI/CD actions that can actually deploy the models to the different deployment environments upon the creation of a new Git tag for stage assignment. For that, you can leverage any ML model deployment tool, such as MLEM.
You can assign a stage in any of the following ways:
- Use GTO CLI or API. An example would be
gto assign pool-segmentation --version v0.0.1 --stage dev, assumingdvc.yamlwith the model annotation is located in the root of the repo. If not, you should append its parent directory to the model's name like this:gto assign cv:pool-segmentation --version v0.0.1 --stage dev(here,cvis the parent directory). - To assign stages using DataChain Studio, watch this tutorial video or read on below.
https://www.youtube.com/watch?v=Vrp1O5lkWBo
-
On the models dashboard, open the 3-dot menu for the model whose version you want to assign the stage to. Then, click on
Assign stage. This action can also be initiated from the model details page or from the related project's experiment table - look for theAssign stagebutton or icon. -
Select the version to which you want to assign the stage.
- Enter the stage name (eg,
dev,shadow,prod).
- Optionally, provide a Git tag message.
- Click on
Assign stage.
Once the action is successful, the stage assignment will show up in the Stages
column of the models dashboard.
If you open the model details page, the stage assignment will be visible in the
model History section as well as in the Stages section.
If you go to your Git repository, you will see that a new Git tag referencing the selected version and stage has been created, indicating the stage assignment.