research-agent / Dockerfile
abhid1234's picture
upload research agent app
056cefb verified
Raw
History Blame Contribute Delete
967 Bytes
# Research Agent web service — runs the full Python agent on Cloud Run.
FROM python:3.11-slim
ENV PYTHONUNBUFFERED=1 \
PIP_NO_CACHE_DIR=1 \
HF_HOME=/app/.hf \
TOKENIZERS_PARALLELISM=false
WORKDIR /app
# CPU-only torch first so sentence-transformers doesn't drag in CUDA wheels.
RUN pip install --index-url https://download.pytorch.org/whl/cpu "torch>=2.2"
# Project + web deps (installs all runtime dependencies from pyproject).
COPY pyproject.toml README.md ./
COPY src ./src
RUN pip install ".[server]"
# Bake the embedding model into the image so cold starts don't fetch it.
RUN python -c "from sentence_transformers import SentenceTransformer; \
SentenceTransformer('all-MiniLM-L6-v2')"
COPY server ./server
# Default to 7860 (Hugging Face Spaces' expected port). Cloud Run overrides
# $PORT to 8080 at runtime, so this image runs on both unchanged.
ENV PORT=7860
EXPOSE 7860
CMD exec uvicorn server.app:app --host 0.0.0.0 --port ${PORT}