Spaces:
Running
Running
File size: 1,977 Bytes
0870595 619a500 1e83e64 be06c80 1d5f2e4 619a500 1e83e64 0870595 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | FROM python:3.10-slim
# Install system dependencies
RUN apt-get update && apt-get install -y \
curl \
ffmpeg \
git \
build-essential \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /code
# Copy requirements and install python packages
COPY ./requirements.txt /code/requirements.txt
RUN pip install --upgrade pip "setuptools<70" wheel && \
pip install "cython<3.0" "numpy>=1.26.3,<2.0" && \
pip install --no-build-isolation madmom && \
pip install --no-cache-dir --upgrade -r /code/requirements.txt
# Pre-descargar pesos del modelo BTC de acordes en la imagen
RUN mkdir -p /code/models && \
curl -L -o /code/models/btc_chord.pth https://huggingface.co/amaai-lab/music2emo/resolve/main/inference/data/btc_model.pt
# Separación HQ (igual que los workers privados): voz MDX Voc FT, especialistas de htdemucs_ft y karaoke para los coros de 7 pistas.
# Los modelos quedan en la imagen para no descargarlos en cada reinicio del Space.
ENV SEPARACION_HQ=true \
SEPARATOR_MODELS_DIR=/code/models/separator \
TORCH_HOME=/code/models/torch
# La config del karaoke va en el repo: audio-separator la baja de GitHub y si falla rompe el build
COPY modelos/ /code/models/separator/
RUN python -c "from demucs.pretrained import get_model; get_model('htdemucs_6s'); [get_model(m) for m in ('f7e0c4bc', 'd12395a8', '92cfc3b6')]" && \
python -c "from audio_separator.separator import Separator; s = Separator(model_file_dir='/code/models/separator'); s.load_model('UVR-MDX-NET-Voc_FT.onnx'); s.load_model('mel_band_roformer_karaoke_aufr33_viperx_sdr_10.1956.ckpt')"
# Copy application files
COPY . .
# Create writable folders with permissions for Hugging Face user 1000
RUN mkdir -p /code/processed /code/uploads /code/logs /code/models && chmod -R 777 /code
# Grant execution rights to start script (and strip any Windows carriage returns)
RUN sed -i 's/\r$//' /code/start.sh && chmod +x /code/start.sh
# Run start script
CMD ["/code/start.sh"]
|