FROM node:20-alpine AS frontend-builder WORKDIR /app/frontend COPY frontend/package*.json ./ RUN npm ci COPY frontend . RUN npm run build FROM python:3.11-slim AS runtime ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ PORT=7860 \ MSAI_ROOT=/app/MSAI_Text_Generation \ VANILLA_CHECKPOINT=/app/models/best.pt \ VANILLA_TOKENIZER=/app/models/tokenizer \ VANILLA_DEVICE=auto WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY backend backend COPY Archive Archive COPY models models COPY MSAI_Text_Generation MSAI_Text_Generation COPY scripts scripts COPY README.md README.md COPY --from=frontend-builder /app/frontend/dist frontend/dist EXPOSE 7860 CMD ["uvicorn", "backend.main:app", "--host", "0.0.0.0", "--port", "7860"]