mirror of
https://github.com/open-webui/pipelines
synced 2025-05-12 16:40:45 +00:00
Merge pull request #104 from Wenlin88/main
Refactor message content handling in schemas.py to add capability for images
This commit is contained in:
commit
a0ec0103b0
18
schemas.py
18
schemas.py
@ -1,14 +1,23 @@
|
|||||||
from typing import List, Optional
|
from typing import List, Union, Optional
|
||||||
from pydantic import BaseModel, ConfigDict
|
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):
|
class OpenAIChatMessage(BaseModel):
|
||||||
role: str
|
role: str
|
||||||
content: str | List
|
content: Union[str, List[MessageContent]]
|
||||||
|
|
||||||
model_config = ConfigDict(extra="allow")
|
model_config = ConfigDict(extra="allow")
|
||||||
|
|
||||||
|
|
||||||
class OpenAIChatCompletionForm(BaseModel):
|
class OpenAIChatCompletionForm(BaseModel):
|
||||||
stream: bool = True
|
stream: bool = True
|
||||||
model: str
|
model: str
|
||||||
@ -16,7 +25,6 @@ class OpenAIChatCompletionForm(BaseModel):
|
|||||||
|
|
||||||
model_config = ConfigDict(extra="allow")
|
model_config = ConfigDict(extra="allow")
|
||||||
|
|
||||||
|
|
||||||
class FilterForm(BaseModel):
|
class FilterForm(BaseModel):
|
||||||
body: dict
|
body: dict
|
||||||
user: Optional[dict] = None
|
user: Optional[dict] = None
|
||||||
|
Loading…
Reference in New Issue
Block a user