rtc-voice-chat/backend/schemas/chat.py
2026-04-02 09:40:23 +08:00

29 lines
1.0 KiB
Python

"""
聊天相关的请求模型
"""
from pydantic import BaseModel, Field
class ChatMessage(BaseModel):
role: str = Field(default="user", description="消息角色: user / assistant / system")
content: str = Field(default="你好,请介绍一下你自己", description="消息内容")
class ChatCallbackRequest(BaseModel):
"""Custom LLM 回调请求体(带默认值方便 Swagger 调试)"""
messages: list[ChatMessage] = Field(
default=[
ChatMessage(role="user", content="你好,请介绍一下你自己"),
],
description="对话消息列表,最后一条必须是 user 角色",
)
temperature: float | None = Field(default=None, description="采样温度")
max_tokens: int | None = Field(default=None, description="最大生成 token 数")
top_p: float | None = Field(default=None, description="Top-P 采样")
class DebugChatRequest(BaseModel):
history: list[ChatMessage] = Field(default_factory=list)
question: str = Field(default="你好", description="用户问题")