Merge pull request #104 from Wenlin88/main

Refactor message content handling in schemas.py to add capability for images
This commit is contained in:
Timothy Jaeryang Baek 2024-06-20 03:38:09 -07:00 committed by GitHub
commit a0ec0103b0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1,14 +1,23 @@
from typing import List, Optional
from pydantic import BaseModel, ConfigDict
from typing import List, Union, Optional
from pydantic import BaseModel, RootModel, ConfigDict
class ImageContent(BaseModel):
type: str
image_url: dict
class TextContent(BaseModel):
type: str
text: str
class MessageContent(RootModel):
root: Union[TextContent, ImageContent]
class OpenAIChatMessage(BaseModel):
role: str
content: str | List
content: Union[str, List[MessageContent]]
model_config = ConfigDict(extra="allow")
class OpenAIChatCompletionForm(BaseModel):
stream: bool = True
model: str
@ -16,8 +25,7 @@ class OpenAIChatCompletionForm(BaseModel):
model_config = ConfigDict(extra="allow")
class FilterForm(BaseModel):
body: dict
user: Optional[dict] = None
model_config = ConfigDict(extra="allow")
model_config = ConfigDict(extra="allow")