Spaces:
No application file
No application file
| """Schemas for the chat app.""" | |
| from pydantic import BaseModel, validator | |
| class ChatResponse(BaseModel): | |
| """Chat response schema.""" | |
| sender: str | |
| message: str | |
| source_documents: list = [] | |
| chat_history: list = [] | |
| type: str | |
| def sender_must_be_bot_or_you(cls, v): | |
| if v not in ["bot", "you"]: | |
| raise ValueError("sender must be bot or you") | |
| return v | |
| def validate_message_type(cls, v): | |
| if v not in ["start", "stream", "end", "error", "info"]: | |
| raise ValueError("type must be start, stream or end") | |
| return v | |