|
@@ -16,47 +16,6 @@ from app.schemas.tool.authentication import Authentication
|
|
|
# from typing_extensions import Literal, Required, TypedDict, TypeAlias
|
|
|
|
|
|
|
|
|
-class ChatCompletionAudioParam(BaseModel):
|
|
|
- # format: Required[Literal["wav", "mp3", "flac", "opus", "pcm16"]]
|
|
|
- format: str = Field(
|
|
|
- sa_column=Column(Enum("wav", "mp3", "flac", "opus", "pcm16"), nullable=False)
|
|
|
- )
|
|
|
- """Specifies the output audio format.
|
|
|
-
|
|
|
- Must be one of `wav`, `mp3`, `flac`, `opus`, or `pcm16`.
|
|
|
- """
|
|
|
-
|
|
|
- # voice: Required[
|
|
|
- # Literal["alloy", "ash", "ballad", "coral", "echo", "sage", "shimmer", "verse"]
|
|
|
- # ]
|
|
|
- voice: str = Field(
|
|
|
- sa_column=Column(
|
|
|
- Enum(
|
|
|
- "alloy",
|
|
|
- "ash",
|
|
|
- "ballad",
|
|
|
- "coral",
|
|
|
- "echo",
|
|
|
- "sage",
|
|
|
- "shimmer",
|
|
|
- "verse",
|
|
|
- ),
|
|
|
- nullable=False,
|
|
|
- )
|
|
|
- )
|
|
|
- """The voice the model uses to respond.
|
|
|
-
|
|
|
- Supported voices are `ash`, `ballad`, `coral`, `sage`, and `verse` (also
|
|
|
- supported but not recommended are `alloy`, `echo`, and `shimmer`; these voices
|
|
|
- are less expressive).
|
|
|
- """
|
|
|
-
|
|
|
-
|
|
|
-# class ChatCompletionModality(BaseModel):
|
|
|
-# text = str = Field(sa_column=Column(Enum("text"), nullable=False))
|
|
|
-# audio = str = Field(sa_column=Column(Enum("audio"), nullable=False))
|
|
|
-
|
|
|
-
|
|
|
class RunBase(BaseModel):
|
|
|
instructions: Optional[str] = Field(
|
|
|
default=None, max_length=32768, sa_column=Column(TEXT)
|
|
@@ -115,7 +74,7 @@ class RunBase(BaseModel):
|
|
|
temperature: Optional[float] = Field(default=None) # 温度
|
|
|
top_p: Optional[float] = Field(default=None) # top_p
|
|
|
# parallel_tool_calls: bool = Field(default=False) # parallel_tool_calls
|
|
|
- # audio: Optional[ChatCompletionAudioParam] = Field(default=None) # audio
|
|
|
+ # audio: Optional[dict] = Field(default=None, sa_column=Column(JSON)) # audio
|
|
|
# modalities: Optional[List[Literal["text", "audio"]]] = Field(
|
|
|
# default=None, sa_column=Column(JSON)
|
|
|
# )
|
|
@@ -156,7 +115,7 @@ class RunCreate(BaseModel):
|
|
|
temperature: Optional[float] = Field(default=None) # 温度
|
|
|
top_p: Optional[float] = Field(default=None) # top_p
|
|
|
# parallel_tool_calls: bool = Field(default=False) # parallel_tool_calls
|
|
|
- # audio: Optional[ChatCompletionAudioParam] = Field(default=None) # audio
|
|
|
+ # audio: Optional[dict] = Field(default=None, sa_column=Column(JSON)) # audio
|
|
|
# modalities: Optional[List[Literal["text", "audio"]]] = Field(
|
|
|
# default=None, sa_column=Column(JSON)
|
|
|
# )
|