Spaces:
Sleeping
Sleeping
| # ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| # Selene ML APIs β Hugging Face Spaces Dockerfile | |
| # | |
| # Serves BOTH the cluster (GMM) and simulator (HistGBM) models in a single | |
| # FastAPI process on port 7860 (required by HF Spaces). | |
| # | |
| # Build & push via push_to_hf.sh β do NOT build from repo root directly. | |
| # The Dockerfile expects to run with build context = this hf_space/ directory. | |
| # | |
| # Local test: | |
| # docker build -t selene-ml-apis . | |
| # docker run -p 7860:7860 selene-ml-apis | |
| # ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| FROM python:3.12-slim | |
| WORKDIR /app | |
| # ββ System deps βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| gcc \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # ββ Python deps βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| COPY requirements.txt ./requirements.txt | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # ββ Model artifacts βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| COPY artifacts/ ./artifacts/ | |
| # ββ Pill reference database βββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| COPY drugs/ ./drugs/ | |
| # ββ Inference server ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| COPY serve.py ./serve.py | |
| # ββ HF Spaces runs as a non-root user by default β ensure writable cache ββββββ | |
| RUN chmod -R 777 /app | |
| # ββ Runtime βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| EXPOSE 7860 | |
| ENV PORT=7860 | |
| CMD ["sh", "-c", "uvicorn serve:app --host 0.0.0.0 --port ${PORT} --workers 1 --log-level info"] | |