hins111's picture
Upload 4 files
0cbb38a verified
raw
history blame contribute delete
916 Bytes
from typing import List, Optional, Union
from pydantic import BaseModel
from config import MODEL_NAME
class FunctionCall(BaseModel):
name: str
arguments: str
class ToolCall(BaseModel):
id: str
type: str = "function"
function: FunctionCall
class MessageContentItem(BaseModel):
type: str
text: Optional[str] = None
class Message(BaseModel):
role: str
content: Union[str, List[MessageContentItem], None] = None
name: Optional[str] = None
tool_calls: Optional[List[ToolCall]] = None
tool_call_id: Optional[str] = None
class ChatCompletionRequest(BaseModel):
messages: List[Message]
model: Optional[str] = MODEL_NAME
stream: Optional[bool] = False
temperature: Optional[float] = None
max_output_tokens: Optional[int] = None
stop: Optional[Union[str, List[str]]] = None
top_p: Optional[float] = None