# 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"]