Spaces:
Sleeping
Sleeping
File size: 620 Bytes
458ecfb |
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 26 27 28 |
from typing import List, Literal, Optional, Union
from gradio.data_classes import FileData, GradioModel, GradioRootModel
from pydantic import Field
class ThoughtMetadata(GradioModel):
tool_name: Optional[str] = None
error: bool = False
class Message(GradioModel):
role: Literal["user", "assistant"]
thought_metadata: ThoughtMetadata = Field(default_factory=ThoughtMetadata)
class ChatMessage(Message):
content: str
class ChatFileMessage(Message):
file: FileData
alt_text: Optional[str] = None
class ChatbotData(GradioRootModel):
root: List[Union[ChatMessage, ChatFileMessage]]
|