from pydantic import BaseModel from typing import List, Optional, Dict, Any from datetime import datetime class SearchRequest(BaseModel): query: str limit: Optional[int] = 5 class SearchResponse(BaseModel): status: str results: Optional[List[Dict[str, Any]]] = None message: Optional[str] = None class ChatSession(BaseModel): session_id: str created_at: datetime history: List[Dict[str, Any]] = [] metadata: Dict[str, Any] = {}