topshelf-poc / README.md
Dan Biagini
add v3 pressure meter feature coverage
52d88a8

A newer version of the Streamlit SDK is available: 1.44.0

Upgrade
metadata
title: Top Shelf
emoji: πŸš€
colorFrom: blue
colorTo: indigo
sdk: streamlit
sdk_version: 1.38.0
app_file: src/app.py
pinned: false

Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference

Development Environment Setup

Option 1: Conda Environment (Recommended)

# Create new conda environment with Python 3.11
conda create -n topshelf python=3.11

# Activate the environment
conda activate topshelf

# Install PyTorch first (CPU-only version)
conda install pytorch cpuonly -c pytorch

# Then install other requirements
pip install -r requirements-cpu.txt  # For CPU-only installation
# OR
pip install -r requirements.txt      # For full installation with GPU support

Option 2: Python Virtual Environment

# Create virtual environment
python -m venv .venv
source .venv/bin/activate

# Install PyTorch first (CPU-only version)
pip install torch --index-url https://download.pytorch.org/whl/cpu

# Then install other requirements
pip install -r requirements-cpu.txt

Update requirements.txt

There are two requirements.txt files, the requirements-cpu.txt can be used for smaller installations but will only use CPU based pytorch computations.

Keeping them in sync is important, to do so on a CPU installed dev system do the following:

  1. Freeze requirements (get currently installed versions): pip freeze > requirements-cpu.txt
  2. Create a diff file with the changes needed to update requirements.txt: diff requirements-cpu.txt requirements.txt > req-patch.diff
  3. Edit the req-patch.diff to remove the torch* related diffs (the requirements.txt torch entries should not have +cpu)
  4. Patch the requirements.txt file: patch -R requirements.txt req-patch.diff

Manual Testing

To run in google cloud shell: streamlit run src/app.py --browser.serverAddress 8501-$WEB_HOST --browser.serverPort 80