| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- from typing import List, Optional, Literal
- from pydantic import BaseModel, Field
- Role = Literal["system", "user", "assistant"]
- class ChatMessage(BaseModel):
- role: Role
- content: str
- class ChatRequest(BaseModel):
- messages: List[ChatMessage] = Field(min_length=1)
- model: Optional[str] = None
- temperature: Optional[float] = Field(default=None, ge=0, le=2)
- max_tokens: Optional[int] = Field(default=None, gt=0)
- class Usage(BaseModel):
- prompt_tokens: int
- completion_tokens: int
- total_tokens: int
- class ChatResponse(BaseModel):
- content: str
- model: Optional[str] = None
- usage: Optional[Usage] = None
- class TextToSpeechPayload(BaseModel):
- audio_url: str
- class CopywritingEvaluationPayload(BaseModel):
- content: bool
- reason: str
- corrected_msg: str
- class DataResponse(BaseModel):
- code: int
- data: object
- msg: Optional[str] = None
- class TextToSpeechRequest(BaseModel):
- volume: int = 1
- pitch: float = 1
- rate: float = 1
- filename: str
- text: str
- model: str
- class UnderstandImageRequest(BaseModel):
- image_url: str
- model: str
- class CopywritingEvaluationRequest(BaseModel):
- image_url: str
- text: str
- model: str
|