49 lines
1.6 KiB
Python
49 lines
1.6 KiB
Python
"""
|
|
app/main.py — mindnet API bootstrap
|
|
"""
|
|
from __future__ import annotations
|
|
from fastapi import FastAPI
|
|
from .config import get_settings
|
|
from .routers.embed_router import router as embed_router
|
|
from .routers.qdrant_router import router as qdrant_router
|
|
|
|
from .routers.query import router as query_router
|
|
from .routers.graph import router as graph_router
|
|
from .routers.tools import router as tools_router
|
|
from .routers.feedback import router as feedback_router
|
|
from .routers.chat import router as chat_router
|
|
|
|
# NEU: Ingest Router (WP-11)
|
|
from .routers.ingest import router as ingest_router
|
|
|
|
try:
|
|
from .routers.admin import router as admin_router
|
|
except Exception:
|
|
admin_router = None
|
|
|
|
def create_app() -> FastAPI:
|
|
app = FastAPI(title="mindnet API", version="0.6.0") # Version bump WP-11
|
|
s = get_settings()
|
|
|
|
@app.get("/healthz")
|
|
def healthz():
|
|
return {"status": "ok", "qdrant": s.QDRANT_URL, "prefix": s.COLLECTION_PREFIX}
|
|
|
|
app.include_router(embed_router)
|
|
app.include_router(qdrant_router)
|
|
|
|
app.include_router(query_router, prefix="/query", tags=["query"])
|
|
app.include_router(graph_router, prefix="/graph", tags=["graph"])
|
|
app.include_router(tools_router, prefix="/tools", tags=["tools"])
|
|
app.include_router(feedback_router, prefix="/feedback", tags=["feedback"])
|
|
app.include_router(chat_router, prefix="/chat", tags=["chat"])
|
|
|
|
# NEU: Registrierung des Ingest-Routers
|
|
app.include_router(ingest_router, prefix="/ingest", tags=["ingest"])
|
|
|
|
if admin_router:
|
|
app.include_router(admin_router, prefix="/admin", tags=["admin"])
|
|
|
|
return app
|
|
|
|
app = create_app() |