Code version controller
This section describes the Tensorleap integration script version control and its association with an uploaded model
Panel Overview

Within Tensorleap the integration scripts being uploaded to the system are seperates entities than the models and projects. That way, the same code could be used within multiple projects and with multiple models.
The purpose of this section is to associate the specific model that is currently being examined with the relevant integration script. The different attributes that could be controlled via this controller:
The script that is selected for the selected model.
The version of the script that is being selected for this model.
The branch of the script that is being selected for this model.
Changing script selection for a model
Changing the selected script
Each integration script uploaded to the platform have a script integration name given to it upon upload. To switch between different scripts uploaded to the system, simply click the main dropdown menu and select the required scripts.
Script versioning at Tensorleap
Script versions
Each new upload that points to the same integration script would create a new version of this script within the Tensorleap Platform. In such a way, it is possible to revert back to a previously uploaded script and run any model with it.
Script branches
To make the code versioning more flexible, Tensorleap supports script branches. In such a way you can create small variations in the script that would support:
Working with multiple models that need a slight adjustment in data loading or visualization
Multiple users Working on the same script
Running experiments without influencing a "working version" of the script
Changing the selected script version & branch
By default, the script is pointing at the head of the "master" branch, which is the default branch that is being used. That means, that upon each successful parse of a new version of an integration script uploaded to the platform, each model that is pointing to that code integration would automatically be updated with the most up-to-date code and interfaces changes.
This could be changed, by pointing the model to a different branch or pointing on a specific version.

To set a different version or branch, open the code integration view in your Network tab, and click the downward facing arrow This would upon up a pop-up Window with two tabs: "Branches" and "Versions".
From the "Branches" Tab you can point to the latest version of each branch. This would ensure new code uploads to the platform would be integrated to this model without need to take further actions.
From the "Versions" Tab you can point to a specific version. This fixes the script version, and make sure the current model would NOT be updated with different code updates

Once the script version or branch is modified the save button should be clicked to ensure the new configuration is kept.
Only script versions that were successfully parsed through the system would be able to properly run with a model. In case a version would not be successfully parsed, it would not be available for selection here
When to use Branch based pointer and version based pointers
The recommended approach is to point to a branch for as long as your still actively working on your integration, trying new versions, and adding visualizers, metrics, and losses.
Once you've fixed your code integration and are working more towards analysis, it might be better to point to a specific version - to make sure your analysis would not change due to an intended code change
Last updated
Was this helpful?