Fix challenge-cli not setting storage when using --volume and friends. Improve error messages. Fix multiple issues with Dockerfile.gpu. Change make docker-run and make docker-run-gpu to use docker flags that match the Dyff cloud environment by default.
82e6e64 | VENV ?= venv | |
| PYTHON ?= $(VENV)/bin/python3 | |
| UVICORN ?= $(VENV)/bin/uvicorn | |
| DOCKER ?= docker | |
| IMAGE ?= safe-challenge-2025/example-submission | |
| GID ?= $(shell id -g) | |
| UID ?= $(shell id -u) | |
| setup: $(VENV)/requirements.cpu.txt | |
| download: | |
| bash scripts/model_download.bash | |
| serve: | |
| $(UVICORN) main:app | |
| docker-build: | |
| docker build -t $(IMAGE) . | |
| docker-run: | |
| docker run --rm -it --read-only --tmpfs "/tmp" -u 1001:1001 -p 8000:8000 $(IMAGE) | |
| docker-test-no-internet: | |
| docker run --rm -it --read-only --tmpfs "/tmp" -u 1001:1001 -p 8000:8000 --network none $(IMAGE) | |
| compile: | |
| uv pip compile --python-version 3.12 --upgrade -o requirements.torch.cpu.txt.tmp requirements.torch.cpu.in | |
| echo "--index-url https://download.pytorch.org/whl/cpu" > requirements.torch.cpu.txt | |
| grep -e '^torch' requirements.torch.cpu.txt.tmp >> requirements.torch.cpu.txt | |
| uv pip compile --python-version 3.12 --upgrade -o requirements.cpu.txt requirements.cpu.in | |
| compile-gpu: | |
| uv pip compile --python-version 3.12 --upgrade -o requirements.torch.gpu.txt requirements.torch.gpu.in | |
| docker-build-gpu: | |
| docker build -t $(IMAGE)-gpu -f Dockerfile.gpu . | |
| docker-run-gpu: | |
| docker run --rm -it --read-only --tmpfs "/tmp" -u 1001:1001 -p 8000:8000 $(IMAGE)-gpu | |
| requirements.cpu.txt: requirements.in requirements.torch.cpu.txt | $(VENV) | |
| uv pip compile --python-version 3.12 --upgrade -o requirements.cpu.txt requirements.cpu.in | |
| requirements.torch.cpu.txt: requirements.torch.cpu.in | $(VENV) | |
| uv pip compile --python-version 3.12 --upgrade -o requirements.torch.cpu.txt.tmp requirements.torch.cpu.in | |
| echo "--index-url https://download.pytorch.org/whl/cpu" > requirements.torch.cpu.txt | |
| cat requirements.torch.cpu.txt.tmp | grep '^torch' >> requirements.torch.cpu.txt | |
| $(VENV)/requirements.cpu.txt: requirements.cpu.txt | $(VENV) | |
| VIRTUAL_ENV=$(VENV) uv pip install -r requirements.cpu.txt | |
| VIRTUAL_ENV=$(VENV) uv pip install -r requirements.torch.cpu.txt | |
| cp -f requirements.cpu.txt $(VENV)/requirements.cpu.txt | |
| cp -f requirements.torch.cpu.txt $(VENV)/requirements.torch.cpu.txt | |
| $(VENV): | |
| uv venv $(VENV) | |