Files
Practical_Training_Assignment/backend/app/schemas/chat.py
2025-07-01 01:27:29 +08:00

53 lines
927 B
Python

from enum import Enum
from pydantic import BaseModel
from typing import List
class Message(BaseModel):
role: str
content: str
class ChatRequest(BaseModel):
model: str
messages: List[Message]
class ModelType(str, Enum):
text = "text" # 文字对话
image = "image" # 文生图
audio = "audio" # 语音模型
reasoning = "reasoning" # 深度思考模型
class ModelInfo(BaseModel):
model_id: str
model_name: str
model_type: ModelType
class VendorModelList(BaseModel):
vendor: str
models: List[ModelInfo]
class VendorModelResponse(BaseModel):
data: List[VendorModelList]
# Speaker相关模型
class Speaker(BaseModel):
speaker_id: str
speaker_name: str
language: str
platforms: List[str]
class CategorySpeakers(BaseModel):
category: str
speakers: List[Speaker]
class SpeakerResponse(BaseModel):
data: List[CategorySpeakers]