Julia-Amadio commited on
Commit ·
bb17546
1
Parent(s): 33b7f26
Tentativa com nova bib de segmentação.
Browse files- Dockerfile +5 -15
- download_models.py +24 -0
Dockerfile
CHANGED
|
@@ -16,21 +16,11 @@ COPY requirements.txt .
|
|
| 16 |
RUN pip install --upgrade pip
|
| 17 |
RUN pip install --no-cache-dir -r requirements.txt
|
| 18 |
|
| 19 |
-
#PRÉ-BAIXA OS MODELOS
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
#
|
| 23 |
-
RUN python
|
| 24 |
-
import backgroundremover
|
| 25 |
-
from PIL import Image
|
| 26 |
-
print('Downloading backgroundremover model (u2net)...')
|
| 27 |
-
img = Image.new('RGB', (1, 1), 'black')
|
| 28 |
-
try:
|
| 29 |
-
backgroundremover.remove(img)
|
| 30 |
-
except Exception:
|
| 31 |
-
pass
|
| 32 |
-
print('Model download triggered.')
|
| 33 |
-
"""
|
| 34 |
|
| 35 |
#Copia o código da aplicação
|
| 36 |
COPY . .
|
|
|
|
| 16 |
RUN pip install --upgrade pip
|
| 17 |
RUN pip install --no-cache-dir -r requirements.txt
|
| 18 |
|
| 19 |
+
#PRÉ-BAIXA OS MODELOS
|
| 20 |
+
#Copia o script de download para a imagem
|
| 21 |
+
COPY download_models.py .
|
| 22 |
+
#Executa o script de download
|
| 23 |
+
RUN python download_models.py
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 24 |
|
| 25 |
#Copia o código da aplicação
|
| 26 |
COPY . .
|
download_models.py
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
import sys
|
| 3 |
+
from huggingface_hub import snapshot_download
|
| 4 |
+
import backgroundremover
|
| 5 |
+
from PIL import Image
|
| 6 |
+
|
| 7 |
+
#1. Baixa o modelo ConvNext
|
| 8 |
+
print("Downloading ConvNext-LARGE model (snapshot)...")
|
| 9 |
+
snapshot_download(repo_id='facebook/convnext-large-22k-1k')
|
| 10 |
+
print("ConvNext-LARGE model downloaded.")
|
| 11 |
+
|
| 12 |
+
#2. Baixa o modelo backgroundremover
|
| 13 |
+
print("Downloading backgroundremover model (u2net)...")
|
| 14 |
+
#Usa o truque da imagem falsa de 1x1 para forçar o download
|
| 15 |
+
img = Image.new('RGB', (1, 1), 'black')
|
| 16 |
+
try:
|
| 17 |
+
backgroundremover.remove(img)
|
| 18 |
+
except Exception as e:
|
| 19 |
+
# A execução vai falhar na imagem 1x1, o que é esperado.
|
| 20 |
+
# Nós não nos importamos, contanto que o download tenha sido disparado.
|
| 21 |
+
print(f"Disparado o download (ignora erro esperado: {e})")
|
| 22 |
+
pass
|
| 23 |
+
|
| 24 |
+
print("Model downloads finished.")
|