"""自然语言查询 API(R4/R20)。""" from __future__ import annotations from fastapi import APIRouter, Depends from sqlalchemy.orm import Session from app.api.schemas import NLQRequest, NLQResponse from app.db import get_session from app.nlq import service as nlq router = APIRouter(prefix="/nlq", tags=["nlq"]) @router.post("", response_model=NLQResponse) def ask(req: NLQRequest, session: Session = Depends(get_session)) -> NLQResponse: ans = nlq.ask(req.question, session=session) return NLQResponse( question=ans.question, answer=ans.answer, provider=ans.provider, model=ans.model, egress=ans.egress, )