| from typing import Dict, Any, List, Optional | |
| from pydantic import BaseModel | |
| class ChatRequest(BaseModel): | |
| message: str | |
| feedback: Optional[str] = None | |
| class NLUResult(BaseModel): | |
| intent: str | |
| confidence: float | |
| class ActionResponse(BaseModel): | |
| type: str | |
| parameters: Optional[Dict[str, Any]] = {} | |
| class ChatResponse(BaseModel): | |
| response: str | |
| context: str | |
| nlu: NLUResult | |
| action: Optional[ActionResponse] = None | |
| images: Optional[List[str]] = None | |