Spaces:
Build error
Build error
FROM python:3.10-slim | |
WORKDIR /app | |
# Environment variables for CPU-only operation | |
ENV CUDA_VISIBLE_DEVICES=-1 \ | |
TF_CPP_MIN_LOG_LEVEL=3 \ | |
SDL_AUDIODRIVER=disk \ | |
VLLM_TARGET_DEVICE=cpu | |
# Install system dependencies (probably more than needed) | |
RUN apt-get update && apt-get install -y \ | |
build-essential \ | |
libportaudio2 \ | |
libportaudiocpp0 \ | |
portaudio19-dev \ | |
libasound-dev \ | |
libsndfile1-dev \ | |
kmod \ | |
libomp5 \ | |
libssl3 \ | |
ca-certificates \ | |
openssl \ | |
libopenblas0-pthread \ | |
libgl1 \ | |
libglib2.0-0 \ | |
libnuma-dev \ | |
gcc-12 \ | |
g++-12 \ | |
espeak-ng \ | |
libaio-dev \ | |
git \ | |
ffmpeg \ | |
curl \ | |
&& rm -rf /var/lib/apt/lists/* | |
# Install Rust compiler | |
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | \ | |
sh -s -- -y --default-toolchain stable --profile minimal && \ | |
echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> /etc/profile.d/rust.sh | |
ENV PATH="/root/.cargo/bin:${PATH}" | |
# Verify installation | |
RUN rustc --version && cargo --version | |
# Update pip and install base requirements | |
RUN pip install --upgrade pip setuptools wheel && \ | |
pip install numpy \ | |
"cmake>=3.26" \ | |
packaging \ | |
ninja \ | |
"setuptools-scm>=8" --no-cache-dir | |
# Install Base PyTorch System - For CPU-only | |
RUN pip install \ | |
torch \ | |
torchvision \ | |
torchaudio \ | |
torchdatasets \ | |
torchtext \ | |
datasets \ | |
transformers \ | |
--extra-index-url https://download.pytorch.org/whl/cpu --no-cache-dir | |
# Install vLLM CPU version from source | |
RUN git clone https://github.com/vllm-project/vllm.git \ | |
&& cd vllm \ | |
&& pip install -v -r requirements-cpu.txt --extra-index-url https://download.pytorch.org/whl/cpu \ | |
&& python setup.py install \ | |
&& pip install --no-cache-dir -e . \ | |
&& cd .. \ | |
&& rm -rf vllm | |
# Fix networkx compatibility | |
RUN pip install --force-reinstall --no-cache-dir networkx==3.2.1 | |
# Install Python requirements with CPU-only constraints | |
COPY requirements.txt . | |
RUN pip install --no-cache-dir -r requirements.txt --no-deps | |
# Install unidic for processing Japanese texts | |
RUN python -m unidic download | |
# Copy application files | |
COPY . . | |
EXPOSE 7860 | |
CMD ["python", "app.py"] | |