File size: 578 Bytes
5eec702 685f6ec 5eec702 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
from typing import List, Optional, Union
from pydantic import BaseModel, Field
class ImageResponse(BaseModel):
images: Union[str, List[str]] # Can handle both URLs and Base64 data
alt: Optional[str] = ""
class MessageContent(BaseModel):
role: str
content: Union[str, List[dict]] # Handle both text and complex structures like images
class ChatRequest(BaseModel):
model: str
messages: List[MessageContent]
stream: Optional[bool] = False
temperature: Optional[float] = 0.7
top_p: Optional[float] = 0.9
max_tokens: Optional[int] = 8192
|