Choosing Correct Minor Version For Pipelines And Skill Deployments

Which is the correct Minor version of the ML package to choose when running pipelines and deploying ML Skill?

When a package is newly deployed there is only minor version '0' present since there haven't been any pipelines executed yet.

  • Training Pipeline: It is strongly recommended to always use minor version 0 (zero).
  • Full Pipeline: As above, always choose minor version '0' while running a Full Pipeline.

Evaluation Pipeline:

Evaluation Pipeline is used to evaluate a trained machine learning model. This can be executed on any version of the ML Package to get the evaluation scores from. It is like grading/evaluating an ml model with the evaluation dataset.

Choosing a minor version needs to be careful since it depends on the kind of package the evaluation pipeline is being run on.

For example, both types of packages that are available are Pre-Trained OOB packages and Untrained DU models.

  • Pre-trained packages ( Out Of The Box Pre-Trained ML Packages )
    • For these packages, run evaluation pipeline on minor version '0' since these are pretrained.
  • Document Understanding: This is a generic, retrainable model that needs to be trained first. Thus run an evaluation pipeline only when this has been trained , i.e. a new minor version of the package is present.
    • Select the recent minor version or any other minor version ( not 0) for which the evaluation scores can be obtained from.


ML Skill Deployment:

While deploying ML Skill, ensure to deploy it on the latest trained ML Package version. If that is not done, then while using the skill in ML Extractor activity in the workflow, error "An Error Occurred While Retrieving Capabilities From The Server" is thrown.