esandorfi's picture
Domain features first reorganisation
68f48a7
.PHONY: help docker-build docker-run local-install local-run local-test local-test-integration eval-photo eval-dance eval-photo-matrix eval-dance-matrix eval-photo-hf eval-dance-hf eval-photo-matrix-hf eval-dance-matrix-hf data-photos data-dance
help:
@echo "---------------------------------------------------"
@echo "Targets:"
@echo " "
@echo " docker-build Build Docker image"
@echo " docker-run Run Docker image on :7860"
@echo " docker-stop Stop Docker image"
@echo " "
@echo " local-install Sync deps with uv"
@echo " local-run Run API locally on :7860"
@echo " local-test Run unit tests"
@echo " local-test-integration Run integration tests"
@echo " "
@echo " eval-photo Run eval on personal-photos-lite-v1"
@echo " eval-dance Run eval on scene-dance-formation-group-v1"
@echo " eval-photo-matrix Run eval for all personal-photos label sets"
@echo " eval-dance-matrix Run eval for all dance label sets"
@echo " "
@echo " eval-photo-hf Run eval on HF Space (photo)"
@echo " eval-dance-hf Run eval on HF Space (dance)"
@echo " eval-photo-matrix-hf Run matrix eval on HF Space (photo)"
@echo " eval-dance-matrix-hf Run matrix eval on HF Space (dance)"
@echo " "
@echo " data-photos Download + normalize photo eval dataset"
@echo " data-dance Download + normalize dance eval dataset"
docker-build:
docker build -t photo-classification .
docker-run:
docker run --rm -p 7860:7860 photo-classification
docker-stop:
docker stop photo-classification
local-install:
uv sync --extra dev --python 3.12
local-run:
uv run uvicorn api.app:app --host 0.0.0.0 --port 7860 --reload
local-test:
uv run pytest -q
local-test-integration:
uv run pytest -q -m integration
eval-photo:
uv run photo-eval single \
--label-set label-dataset/personal-photos-lite-v1.json \
--images data_eval/photos/normalized \
--summary
eval-dance:
uv run photo-eval single \
--label-set label-dataset/scene-dance-formation-group-v1.json \
--images data_eval/dance/normalized \
--summary
eval-photo-matrix:
uv run photo-eval matrix \
--label-sets "label-dataset/personal-photos-*.json" \
--images data_eval/photos/normalized \
--summary
eval-dance-matrix:
uv run photo-eval matrix \
--label-sets "label-dataset/scene-dance-*.json" \
--images data_eval/dance/normalized \
--summary
eval-hf-photo:
uv run photo-eval single \
--api https://esandorfi-photo-classification.hf.space \
--label-set label-dataset/personal-photos-lite-v1.json \
--images data_eval/photos/normalized \
--summary
eval-hf-dance:
uv run photo-eval single \
--api https://esandorfi-photo-classification.hf.space \
--label-set label-dataset/scene-dance-formation-group-v1.json \
--images data_eval/dance/normalized \
--summary
eval-hf-photo-matrix:
uv run photo-eval matrix \
--api https://esandorfi-photo-classification.hf.space \
--label-sets "label-dataset/personal-photos-*.json" \
--images data_eval/photos/normalized \
--summary
eval-hf-dance-matrix:
uv run photo-eval matrix \
--api https://esandorfi-photo-classification.hf.space \
--label-sets "label-dataset/scene-dance-*.json" \
--images data_eval/dance/normalized \
--summary
data-photos:
uv run photo-eval prep --out data_eval --target photos --n 50 --normalize
data-dance:
uv run photo-eval prep --out data_eval --target dance --n 50 --normalize