Spaces:
Runtime error
Runtime error
| from datetime import datetime | |
| from typing import List, Optional | |
| from pydantic import UUID4, BaseModel | |
| class LogSchema(BaseModel): | |
| id: int | |
| date_created: datetime | |
| user_request: Optional[str] = None | |
| qe_result: Optional[str] = None | |
| search_result: Optional[str] = None | |
| llm_result: Optional[str] = None | |
| llm_settings: Optional[str] = None | |
| user_name: Optional[str] = None | |
| chat_id: Optional[str] = None | |
| error: Optional[str] = None | |
| class LogCreateSchema(BaseModel): | |
| user_request: Optional[str] = None | |
| qe_result: Optional[str] = None | |
| search_result: Optional[str] = None | |
| llm_result: Optional[str] = None | |
| llm_settings: Optional[str] = None | |
| user_name: Optional[str] = None | |
| error: Optional[str] = None | |
| chat_id: Optional[str] = None | |
| class SortParam(BaseModel): | |
| field: str | |
| direction: str # "asc" | "desc" | |
| class LogFilterSchema(BaseModel): | |
| user_name: Optional[str] = None | |
| chat_id: Optional[str] = None | |
| date_from: Optional[datetime] = None | |
| date_to: Optional[datetime] = None | |
| page: int = 1 # Номер страницы, по умолчанию 1 | |
| page_size: int = 50 # Размер страницы, по умолчанию 50 | |
| sort: Optional[List[SortParam]] = None # Список параметров сортировки | |
| class Config: | |
| json_schema_extra = { | |
| "example": { | |
| "user_name": "demo", | |
| "date_from": "2024-01-01T00:00:00", | |
| "date_to": "2026-12-31T23:59:59", | |
| "page": 1, | |
| "page_size": 50, | |
| "sort": [ | |
| {"field": "date_created", "direction": "desc"} | |
| ] | |
| } | |
| } | |
| class PaginatedLogResponse(BaseModel): | |
| data: List[LogSchema] | |
| total: int | |
| page: int | |
| page_size: int | |
| total_pages: int | |