from pydantic import BaseModel, Field class QueryRequest(BaseModel): text: str = Field(..., description="Вопрос от лица пациента") top_k: int = Field(5, ge=1, le=20, description="Количество чанков для retrieval") document_ids: list[str] | None = Field(None, description="Ограничить поиск конкретными документами") temperature: float | None = Field(None, ge=0.0, le=2.0) max_tokens: int | None = Field(None, ge=100, le=8000)