Spaces:
Runtime error
Runtime error
FROM nvidia/cuda:11.8.0-cudnn8-devel-ubuntu22.04 as builder | |
ENV DEBIAN_FRONTEND=noninteractive | |
ENV PYTHONUNBUFFERED=1 | |
# Install system dependencies as root | |
RUN apt-get update && apt-get install -y --no-install-recommends \ | |
git \ | |
git-lfs \ | |
wget \ | |
curl \ | |
ca-certificates \ | |
build-essential \ | |
libsndfile1 \ | |
&& rm -rf /var/lib/apt/lists/* \ | |
&& git lfs install --system | |
# Create non-root user first | |
RUN useradd -m -u 1000 user | |
# Set environment variables | |
ENV CONDA_DIR=/home/user/conda | |
ENV PATH=$CONDA_DIR/bin:$PATH | |
ENV HOME=/home/user | |
ENV PATH=/home/user/.local/bin:$PATH | |
# Switch to user immediately | |
USER user | |
WORKDIR $HOME | |
# Install Miniconda in user's home directory | |
RUN wget --quiet https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh && \ | |
/bin/bash ~/miniconda.sh -b -p $CONDA_DIR && \ | |
rm ~/miniconda.sh && \ | |
conda clean -a -y | |
# Create conda environment | |
RUN conda create -n yue python=3.8 -y | |
SHELL ["conda", "run", "-n", "yue", "/bin/bash", "-c"] | |
# Install PyTorch with CUDA support | |
RUN conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia -y | |
# Install flash-attention | |
RUN pip install flash-attn --no-build-isolation | |
# First clone repositories and create directories | |
WORKDIR $HOME/app | |
RUN git lfs install && \ | |
git clone --recursive https://github.com/multimodal-art-projection/YuE.git && \ | |
cd YuE && \ | |
git lfs pull && \ | |
cd inference && \ | |
git lfs checkout && \ | |
cd .. && \ | |
pip install -r requirements.txt | |
WORKDIR $HOME/app/YuE/inference | |
RUN git clone https://huggingface.co/m-a-p/xcodec_mini_infer | |
# Create output directory | |
RUN mkdir -p $HOME/app/output | |
# Copy only the necessary additional files | |
COPY --chown=user:user run.sh $HOME/app/ | |
COPY --chown=user:user wrapper.py $HOME/app/YuE/inference/ | |
RUN chmod +x $HOME/app/run.sh | |
# Set final working directory | |
WORKDIR $HOME/app | |
# ENTRYPOINT ["./run.sh"] |