Files
AIRegulation-DocAnalysis/backend/app/schemas/rag.py

40 lines
868 B
Python

"""Define schema models for rag."""
from pydantic import BaseModel
from typing import Optional
# Group related schema definitions so validation rules stay consistent.
class RagChatRequest(BaseModel):
"""Define the Rag Chat Request API model."""
query: str
top_k: int = 5
class RetrievedDoc(BaseModel):
"""Define the Retrieved Doc API model."""
id: str
doc_name: str
clause_id: Optional[str] = None
score: float
content: str
preview: str
class SourceInfo(BaseModel):
"""Define the Source Info API model."""
name: str
clause: Optional[str] = None
class QuickQuestion(BaseModel):
"""Define the Quick Question API model."""
id: str
question: str
category: str
class QuickQuestionsResponse(BaseModel):
"""Define the Quick Questions Response API model."""
questions: list[QuickQuestion]