experiment_buddy
aims to reduce the overhead to deploy experiments on servers.
Aims to reducing the cognitive load of running experiments remotely: with minimal changes it removes the need to think about experiment deployment for common use cases.
buddy is a work in progress, if you are intrerested in using it in your workflow, ping me in slack @delvermm
It's important to reduce cognitive overload for the researcher, as measured in seconds-to-first-tensorboard-datapoint.
Right now its responsibilities cover:
- Deployment on servers
- Handling of Sweeps
- Tracking of hyperparameters
- Code versioning
- Notifications
- Wandb integration.
Example: (Updated)
- You now need to setup the cluster SSH key. how create and add your SSH keys can be found here
- Add cluster public-key to:
https://github.com/settings/keys
if you don't know this yet, check this out here pip install wandb && wandb init
there are two ways to set up wandb:- set up wandb init from the cmd
- or set export WANDB_API_KEY = your wandb key which can be found here: https://wandb.ai/settings
pip install experiment-buddy
Buddy will help you get started with the mila-cluster. Make sure you are using a virtual env, and run:
buddy-init
Once the setup is done you can also login with your Mila account on the cluster with ssh mila
Start by forking the example repo https://github.com/ministry-of-silly-code/examples
# 1 - Go to your
cd <your_awesome_project>
# Run your experiments
python ./mnist_classifier.py
More details on experiment-buddy:
- experiment-buddy will add tagged commits to a dangling branch
- Supports: Unix based OS
Set host as mila
:
experiment_buddy.deploy(url='mila')
Run your code:
python main.py
If the ssh-agent is unable to connect to git, add the ssh-keys to the current ssh-agent:
eval `ssh-agent -s`
ssh-add