View this notebook on GitHub or run it yourself on Binder!
Integrate with Git¶
rubicon_ml
’s git
integration allows you to automatically track relevant version control information like branches and commits during your model iteration process. Use this integration when you are developing within a git
repository to seamlessly tie your rubicon_ml
experiments directly to the model code that produced them - an audit and governance must have!
To enable this feature, instantiate the rubicon_ml
object with auto_git_enabled=True
.
[1]:
from rubicon_ml import Rubicon
rubicon = Rubicon(persistence="memory", auto_git_enabled=True)
Any project created with this client will have the URL of the GitHub repo’s origin automatically populated in the github_url
property.
[2]:
project = rubicon.create_project("Automatic Git Integration")
project.github_url
[2]:
'https://github.com/capitalone/rubicon-ml.git'
Experiments will have the current active branch name and last commit hash populated in the branch_name
and commit_hash
fields, respectively.
[3]:
experiment = project.log_experiment(model_name="GitHub Model")
experiment.branch_name, experiment.commit_hash
[3]:
('rubicon-ml', '7c76df58384ee03f231521e247b351386f8b3cd1')
These properties can help easily associate projects and experiments with the exact branches and commits they were run against so we can go back and reference the code later.
[4]:
from rubicon_ml.viz import Dashboard
experiment.log_parameter(name="input", value=True)
experiment.log_metric(name="output", value=1.0)
Dashboard([experiment]).show()
* Running on http://127.0.0.1:8050/ (Press CTRL+C to quit)
127.0.0.1 - - [14/May/2021 11:58:45] "GET /_alive_e9483f78-700c-4852-a59e-f027a3b5caf7 HTTP/1.1" 200 -
Dash app running on http://127.0.0.1:8050/
Within the rubicon_ml
dashboard, your experiments will be grouped by commit hash, which will link directly to the commit on GitHub.