Spaces:
Sleeping
Sleeping
| # Используем легкий Python 3.10 | |
| FROM python:3.10-slim | |
| # Рабочая директория | |
| WORKDIR /app | |
| # Создаем кэш директорию для моделей, чтобы они не скачивались каждый раз (если подключить persistent storage) | |
| # Или просто разрешаем запись, так как трансформеры захотят скачать модели | |
| RUN mkdir -p /app/ml_cache && chmod 777 /app/ml_cache | |
| ENV TRANSFORMERS_CACHE=/app/ml_cache | |
| # Копируем зависимости | |
| COPY requirements.txt . | |
| # Устанавливаем зависимости | |
| # --no-cache-dir уменьшает размер образа | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # Копируем код приложения | |
| COPY . . | |
| # Скачиваем NLTK данные при сборке (чтобы не качать в рантайме) | |
| RUN python -c "import nltk; nltk.download('punkt'); nltk.download('stopwords')" | |
| # Открываем порт 7860 (стандарт для Hugging Face) | |
| EXPOSE 7860 | |
| # Запускаем приложение | |
| # host 0.0.0.0 обязателен для Docker | |
| CMD ["uvicorn", "api:app", "--host", "0.0.0.0", "--port", "7860"] |