Files
st/server/model/app/request/chat.go

46 lines
1.6 KiB
Go

package request
// CreateChatRequest 创建对话请求
type CreateChatRequest struct {
CharacterID uint `json:"characterId" binding:"required"` // 角色卡ID
Title string `json:"title"` // 对话标题(可选,默认使用角色名)
}
// ChatListRequest 对话列表请求
type ChatListRequest struct {
Page int `form:"page" binding:"min=1"`
PageSize int `form:"pageSize" binding:"min=1,max=50"`
}
// SendMessageRequest 发送消息请求
type SendMessageRequest struct {
ChatID uint `json:"chatId" binding:"required"` // 对话ID
Content string `json:"content" binding:"required"` // 消息内容
ProviderID *uint `json:"providerId"` // 指定提供商(可选,默认使用用户默认)
ModelName string `json:"modelName"` // 指定模型(可选)
}
// RegenerateRequest 重新生成请求
type RegenerateRequest struct {
ChatID uint `json:"chatId" binding:"required"` // 对话ID
MessageID uint `json:"messageId" binding:"required"` // 要重新生成的消息ID
ModelName string `json:"modelName"` // 可选,指定其他模型
}
// EditMessageRequest 编辑消息请求
type EditMessageRequest struct {
MessageID uint `json:"messageId" binding:"required"`
Content string `json:"content" binding:"required"`
}
// DeleteMessageRequest 删除消息请求
type DeleteMessageRequest struct {
MessageID uint `json:"messageId" binding:"required"`
}
// ChatMessagesRequest 获取对话消息请求
type ChatMessagesRequest struct {
Page int `form:"page" binding:"min=1"`
PageSize int `form:"pageSize" binding:"min=1,max=100"`
}