- scripts/taxonomy.py: shared taxonomy with 14 categories, keyword scorer and classify_text() function - scripts/classify_server.py: FastAPI service — forwards to kreuzberg /extract, applies taxonomy, returns category/subcategory/confidence alongside full kreuzberg response - Dockerfile.classify: lightweight Python image for classify service - classify.nomad: Nomad job → classify.i80.dk - .gitea/workflows/classify.yml: CI/CD pipeline (build + deploy) - analyse_familie.py: refactored to import from taxonomy.py (no duplication) - .gitignore: exclude dokumenter_keywords.* and extract_all.log
14 lines
295 B
Docker
14 lines
295 B
Docker
FROM python:3.12-slim
|
|
|
|
WORKDIR /app
|
|
|
|
RUN pip install --no-cache-dir fastapi uvicorn[standard] httpx
|
|
|
|
COPY scripts/taxonomy.py .
|
|
COPY scripts/classify_server.py .
|
|
|
|
ENV KREUZBERG_URL=https://check.i80.dk
|
|
ENV PORT=8000
|
|
|
|
CMD ["sh", "-c", "uvicorn classify_server:app --host 0.0.0.0 --port ${PORT}"]
|