LS8's picture
Upload folder using huggingface_hub
847db01 verified
raw
history blame contribute delete
886 Bytes
from pydantic import BaseModel, Field
from src.api.schemas.common import SourceCitation
class AskRequest(BaseModel):
question: str = Field(..., min_length=3, description="The question to ask")
model: str | None = Field(None, description="LiteLLM model string (e.g. claude-sonnet-4-20250514)")
max_sources: int = Field(5, ge=1, le=20, description="Maximum source chunks to retrieve")
author: str | None = Field(None, description="Filter by author name")
era: str | None = Field(None, description="Filter by era (pre_1900, 1900_1930, 1930_1950, post_1950)")
class AskResponse(BaseModel):
answer: str
sources: list[SourceCitation]
model_used: str
class SearchRequest(BaseModel):
query: str = Field(..., min_length=2, description="Search query")
n_results: int = Field(10, ge=1, le=50)
author: str | None = None
era: str | None = None