Files
2026-07-31 12:27:41 +08:00

27 lines
834 B
Python

from fastapi import APIRouter
from app.config import get_settings
from app.schemas.models import HealthResponse
from app.services.llm_client import get_llm
from app.services.monai_preprocess import monai_available
from app.services.rag_pipeline import get_rag, langchain_available
from app.services.yolo_detector import yolo_available
router = APIRouter(tags=["health"])
@router.get("/health", response_model=HealthResponse)
def health() -> HealthResponse:
settings = get_settings()
rag = get_rag()
llm = get_llm()
return HealthResponse(
status="ok",
yolo_available=yolo_available(),
monai_available=monai_available(),
langchain_available=langchain_available(),
llm_configured=llm.enabled,
demo_mode=settings.demo_mode,
knowledge_docs=rag.doc_count(),
)