remove-bg-api / Dockerfile
zgrafic's picture
Upload 4 files
2bacef8 verified
Raw
History Blame Contribute Delete
1.48 kB
FROM python:3.10-slim
WORKDIR /app
RUN apt-get update && apt-get install -y --no-install-recommends libgl1 libglib2.0-0 wget \
&& rm -rf /var/lib/apt/lists/*
COPY requirements.txt .
# PyTorch CPU-only por separado (lo necesitan easyocr y simple-lama-inpainting).
RUN pip install --no-cache-dir torch==2.0.1 torchvision==0.15.2 \
--index-url https://download.pytorch.org/whl/cpu
RUN pip install --no-cache-dir -r requirements.txt
# Descarga el modelo BiRefNet durante el build, para que el servidor
# quede autocontenido. Apunta a tu propio repo de Hugging Face en vez de
# GitHub, para no depender de que un tercero mantenga el link activo.
RUN mkdir -p /root/.u2net && \
wget -q -O /root/.u2net/birefnet-general.onnx \
https://huggingface.co/zgrafic/r/resolve/main/BiRefNet-general-epoch_244.onnx
# Descarga los modelos de OCR y de reconstrucción de fondo (LaMa),
# para el endpoint /extract-text.
RUN python -c "import easyocr; easyocr.Reader(['es', 'en'], gpu=False)"
RUN python -c "from simple_lama_inpainting import SimpleLama; SimpleLama()"
# Descarga el modelo de identificación de fuentes (licencia MIT).
RUN python -c "from transformers import AutoImageProcessor, AutoModelForImageClassification; AutoImageProcessor.from_pretrained('gaborcselle/font-identifier'); AutoModelForImageClassification.from_pretrained('gaborcselle/font-identifier')"
COPY app.py bot.py .
EXPOSE 7860
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]