Z User
v3.1.0: Part B architecture migration — eliminate Hugging Face inference credit dependency
6c516b6 Download Dockerfile from sitcod3/modul-x: direct link, hf CLI and curl.
- Browser
- Download file 1.53 kB
-
https://huggingface.co/spaces/sitcod3/modul-x/resolve/main/Dockerfile
- Command line
-
hf download hf://spaces/sitcod3/modul-x/Dockerfile
-
curl -L -o Dockerfile https://huggingface.co/spaces/sitcod3/modul-x/resolve/main/Dockerfile
1.53 kB
| FROM python:3.11-slim | |
| WORKDIR /app | |
| # Install system dependencies + redis-server for sidecar | |
| RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| curl \ | |
| git \ | |
| build-essential \ | |
| redis-server \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # Install Python dependencies | |
| # torch CPU FIRST (the PyPI default wheel is the CUDA build, ~2.5 GB) — the | |
| # risk-scorer and advisory layers run on PyTorch (the ONNX export was unreliable). | |
| RUN pip install --no-cache-dir torch --index-url https://download.pytorch.org/whl/cpu | |
| COPY requirements.txt . | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # Part B Change 4 — persistent local-model cache. | |
| # Model weights are downloaded ONCE at build time from the public HF Hub | |
| # (free, unmetered — Hub downloads are NOT Inference API calls) into | |
| # /app/models, and HF_HOME points there for the runtime. A running container | |
| # therefore makes ZERO network calls for scoring: no Inference API, no token, | |
| # no credits. If AI_SCORER_MODEL is changed at runtime without a rebuild, the | |
| # pipeline transparently downloads the new checkpoint on first use. | |
| ENV HF_HOME=/app/models | |
| RUN python3 -c "from transformers import pipeline; pipeline('zero-shot-classification', model='typeform/distilbert-base-uncased-mnli', device=-1)" \ | |
| && echo "[BUILD] local scorer checkpoint baked into image" | |
| # Copy app source AND entrypoint | |
| COPY app/ ./app/ | |
| COPY entrypoint.py . | |
| EXPOSE 7860 | |
| # Use the entrypoint that starts redis + celery worker + uvicorn | |
| CMD ["python3", "entrypoint.py"] | |