File size: 1,495 Bytes
4820f79
59e123e
102926c
4820f79
dca8957
 
4820f79
b5c2272
92ff09a
b5c2272
4820f79
b5c2272
dca8957
 
4662e37
b5c2272
 
4662e37
dca8957
4820f79
ef8f674
9edd46d
4662e37
 
 
 
 
 
 
 
4820f79
9edd46d
 
4662e37
4820f79
92ff09a
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
# Usa uma imagem base mais recente e suportada
FROM python:3.9-slim-bookworm

# Define o diretório de trabalho
WORKDIR /app

# --- ETAPA 1: INSTALAR O GIT E CLONAR O SEU DATASET COMPLETO ---
RUN apt-get update && apt-get install -y git git-lfs && git-lfs install
RUN git clone https://huggingface.co/spaces/Finish-him/prometheus-embedding-generator ./dados && cd dados && git lfs pull

# --- ETAPA 2: CONFIGURAR O AMBIENTE PYTHON E PRÉ-AQUECER O CACHE ---
COPY requirements.txt .
RUN pip install --no-cache-dir --upgrade -r requirements.txt

# Define o caminho da cache
ENV HF_HOME=/app/cache/huggingface
ENV SENTENCE_TRANSFORMERS_HOME=/app/cache/torch
RUN mkdir -p $HF_HOME && mkdir -p $SENTENCE_TRANSFORMERS_HOME

# Pré-aquece o cache com o modelo e5-large
RUN python -c "import os; from sentence_transformers import SentenceTransformer; SentenceTransformer('intfloat/multilingual-e5-large', cache_folder=os.environ.get('SENTENCE_TRANSFORMERS_HOME', '/app/cache/torch'))"

# --- ETAPA 3: PREPARAR DIRETÓRIOS E COPIAR SCRIPT ---

# *** A CORREÇÃO ESTÁ AQUI ***
# Cria os diretórios necessários e dá permissão ao usuário padrão (1000)
RUN mkdir -p /app/dados_extraidos && \
    mkdir -p /app/output && \
    chown -R 1000:1000 /app/dados_extraidos /app/output /app/cache

# Copia o script de treinamento
COPY train.py .

# --- ETAPA 4: EXECUTAR O SCRIPT ---
# Executa o script e, após o término, mantém o contêiner a correr.
CMD ["sh", "-c", "python train.py && sleep infinity"]