Spaces:
Runtime error
Runtime error
| # βββββββββββββββββββββββββββββββββββββββββββββ | |
| # Dockerfile for Hugging Face Spaces (Docker SDK) | |
| # Free tier: 2 vCPU Β· 16 GB RAM Β· port 7860 | |
| # βββββββββββββββββββββββββββββββββββββββββββββ | |
| FROM python:3.11-slim | |
| # System packages needed by faiss-cpu / pdf parsing / openpyxl | |
| RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| build-essential \ | |
| curl \ | |
| git \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # HF Spaces requirement: run as uid 1000 | |
| RUN useradd -m -u 1000 user | |
| USER user | |
| ENV HOME=/home/user \ | |
| PATH=/home/user/.local/bin:$PATH | |
| WORKDIR $HOME/app | |
| # Install uv | |
| RUN pip install --no-cache-dir uv | |
| # Copy dependency manifest & install | |
| COPY --chown=user pyproject.toml . | |
| RUN uv sync --no-dev | |
| # Copy application source | |
| COPY --chown=user chatbot_final.py . | |
| # Create data directories (ephemeral on free tier; use HF Storage for persistence) | |
| RUN mkdir -p /home/user/app/data/pdfs \ | |
| /home/user/app/data/embeddings \ | |
| /home/user/app/data/users | |
| # Default env vars (can be overridden via HF Space Settings β Variables / Secrets) | |
| ENV PDF_STORE_DIR=/home/user/app/data/pdfs \ | |
| EMBEDDINGS_STORE_DIR=/home/user/app/data/embeddings \ | |
| USER_XL_PATH=/home/user/app/data/users/users.xlsx \ | |
| LLM_BACKEND=huggingface \ | |
| HF_MODEL_ID=mistralai/Mistral-7B-Instruct-v0.3 | |
| EXPOSE 7860 | |
| HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \ | |
| CMD curl --fail http://localhost:7860/_stcore/health || exit 1 | |
| CMD ["/home/user/app/.venv/bin/streamlit", "run", "chatbot_final.py", \ | |
| "--server.port=7860", \ | |
| "--server.address=0.0.0.0", \ | |
| "--server.headless=true"] | |