HITI Lab
DatathonsDatathon 2025

Managing Environments

Instructions on managing Jupyter environments during the 2025 HITI Health AI Datathon

During the 2025 Datathon, environments on JupyterHub are managed with UV, a package and environment manager like pip or conda.

Pre-Configured Environments

We've pre-configured several of these based on the contents of the summer school sessions. These include:

  • pandas-env: General data science and data engineering packages
  • pytorch-env: General data science/data engineering packages + packages to use Pytorch/Torchvision
  • tensorflow-env: General data science/data engineering packages + packages to use Tensorflow
  • linear_probing: Environment used during the summer school session on linear probing with embeddings

We've also prepared an R kernel so users that wish to can use R for data analysis.

Creating Environments

User environments are stored in /mnt/efs/envs (or alternatively are symlinked from each users home directory at ~/envs). This location is not writable, so users who want to add new environments should create them in their home directory with UV or Python.

Modifying Environments

If you'd like to modify an existing read-only environment, the recommended workflow is:

Copy the source environment

Copy from /mnt/efs/envs to your home directory:

cp -r /mnt/efs/envs/pytorch-env ~/
cd ~/pytorch-env

Create a fresh local .venv

Create it inside the copied project:

uv venv --clear
uv sync

This ensures your new environment lives in ~/pytorch-env/.venv instead of pointing back to the read-only one on /mnt/efs.

Activate your environment

source .venv/bin/activate

Verify it's correct:

echo $VIRTUAL_ENV
# should show: /home/USERNAME/pytorch-env/.venv

Add new packages as needed

uv add PACKAGE --active

Register the environment in JupyterHub

Register it so it can be selected as a kernel:

# replace NEW_ENV_NAME with your desired kernel ID
# replace "Python (My Env)" with the display name shown in JupyterHub
uv run ipython kernel install --user \
  --env VIRTUAL_ENV $(pwd)/.venv \
  --name=NEW_ENV_NAME \
  --display-name "Python (My Env)"

Verify the kernel is available

jupyter kernelspec list

You should now see your new environment under ~/.local/share/jupyter/kernels/.

On this page