Skip to content

Conversation

@tarockey
Copy link
Contributor

I've refactored the training pipeline to use the SDK in each step (train and evaluate) to track each run via the Release ID, and then dynamically look up the run metrics, rather than storing them in intermediary JSON files.

This update also tags the Azure ML pipeline with a "version" matching the Build ID, and then each child run has the property of "release-id" matching the AzDO Release ID that triggered the pipeline run. This should help improve traceability from model, to run, and back to build.

A few notes:

  • This update also removes the separate "register_model_step" in the pipeline and registers the model (based on performance) in the evaluate_step. I have left the code for the register step in as a legacy snippet.

  • PipelineData and Pipeline Inputs/outputs are no longer required (which is a shame because the JSON files were a decent example of how to use those features)

  • Updated .env.example to match which variables are needed for local testing.

  • This pipeline assumes that the model name will always match the file name of the saved model

  • Uses the SDK to submit pipelines, rather than REST call

@tarockey tarockey added the enhancement New feature or request label Sep 12, 2019
@eedorenko eedorenko merged commit eceb936 into master Sep 13, 2019
@dtzar dtzar deleted the tarockey-jsonremoval branch September 24, 2019 15:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants