FROM nvidia/cuda:12.6.3-cudnn-devel-ubuntu24.04 ENV DEBIAN_FRONTEND=noninteractive \ PYTHONUNBUFFERED=1 \ PIP_NO_CACHE_DIR=1 \ HF_HUB_ENABLE_HF_TRANSFER=1 \ VCW_MODEL_MODE=real \ VCW_LLAMA_N_GPU_LAYERS=0 \ GRADIO_SERVER_NAME=0.0.0.0 \ GRADIO_SERVER_PORT=7860 ENV VIRTUAL_ENV=/opt/venv \ PATH="/opt/venv/bin:$PATH" RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential \ ca-certificates \ cmake \ ffmpeg \ git \ libsndfile1 \ ninja-build \ python3 \ python3-dev \ python3-pip \ python3-venv \ && rm -rf /var/lib/apt/lists/* WORKDIR /app COPY requirements.txt /tmp/requirements.txt RUN python3 -m venv "$VIRTUAL_ENV" \ && python -m pip install --upgrade pip setuptools wheel \ && python -m pip install torch==2.6.0+cu124 torchaudio==2.6.0+cu124 --index-url https://download.pytorch.org/whl/cu124 \ && python -m pip install llama-cpp-python==0.3.29 --extra-index-url https://abetlen.github.io/llama-cpp-python/whl/cpu \ && grep -v '^llama-cpp-python' /tmp/requirements.txt > /tmp/requirements-no-llama.txt \ && python -m pip install -r /tmp/requirements-no-llama.txt COPY . /app EXPOSE 7860 CMD ["python", "app.py", "--host", "0.0.0.0", "--port", "7860"]