File size: 726 Bytes
b325aad
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from typing import List, Dict, Any, Optional
from pydantic import BaseModel

class QueryRequest(BaseModel):
    """Request schema for query processing"""
    query: str
    session_id: Optional[str] = None
    metadata: Optional[Dict[str, Any]] = None

class QueryResponse(BaseModel):
    """Response schema for query processing"""
    query: str
    upgraded_query: str
    route_taken: str
    response: str
    metadata: Dict[str, Any]
    processing_time: float

class ProcessingMetadata(BaseModel):
    """Metadata for processing steps"""
    upgrade_success: bool = False
    routing_success: bool = False
    path_success: bool = False
    errors: List[str] = []
    processing_time: float = 0.0