Skip to content

SMMZ-98/CS285

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Homework 1: Imitation Learning

Setup

This project uses uv for package management. uv is a Python package and environment manager from Astral. It replaces tools like pip, pipx, conda, and virtualenv with a single, simple interface. It is also much faster than prior tools.

Installing uv

Run the following in your terminal:

curl -LsSf https://astral.sh/uv/install.sh | sh

After installation, open a new terminal so uv is on your PATH.

Always use uv run

Do not run python or pip directly. Always run scripts through uv run so dependencies and environments are handled automatically. If you want to add a new dependency, you can use uv add. This will add the dependency to pyproject.toml, update uv.lock, and install the package into your virtual environment.

Example:

uv run src/hw1_imitation/train.py --help

This should work out of the box with the provided starter code.

Weights & Biases (wandb) login

These assignments use Weights & Biases (WandB) for experiment tracking. WandB is a tool for logging and visualizing machine learning experiments. It is free for academic use. Before running a training script, you will need to log in to WandB using your API key.

uv run wandb login

Follow the prompt to paste your API key.

Using Modal

Note that Modal is likely not necessary for this assignment. In testing, training was much faster on a local laptop CPU than on Modal. However, you may need to use Modal in future assignments, so if you want to get set up, here are the instructions:

First, create a Modal account. You should recieve $30 in free credits, which will be plenty for this assignment. Then, you can train on Modal with the following command:

uv run modal run src/hw1_imitation/modal_train.py

This will build a Modal container and launch training remotely. You can pass the same flags as the local training script. If you are logged into WandB locally, your API key will be automatically forwarded to the Modal container.

Logs and checkpoints will be saved to a Modal volume called hw1-imitation-volume. To inspect the logs, you can use:

uv run modal volume ls hw1-imitation-volume exp

Then, you can download the logs and checkpoints to your local machine using a command like the following:

uv run modal volume get hw1-imitation-volume exp/<experiment_name>

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages