会话名,修改对话多图片发送功能
This commit is contained in:
parent
3ef86bc4c1
commit
1754b0cbbf
|
|
@ -221,6 +221,9 @@ func doReceiveGenChatMessage(userId int, sessionID *uint, data *proto.WSMessageR
|
||||||
*sessionID = uint(data.SessionID)
|
*sessionID = uint(data.SessionID)
|
||||||
if *sessionID == 0 {
|
if *sessionID == 0 {
|
||||||
//创建会话
|
//创建会话
|
||||||
|
if sessionName == "" {
|
||||||
|
sessionName = "新会话"
|
||||||
|
}
|
||||||
err, *sessionID = service.CreateSession(userId, sessionName)
|
err, *sessionID = service.CreateSession(userId, sessionName)
|
||||||
log.Println("create session id:", *sessionID)
|
log.Println("create session id:", *sessionID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
||||||
|
|
@ -78,8 +78,13 @@ type IMParamContext struct {
|
||||||
IsHasImage bool `json:"is_has_image"` //是否有图片
|
IsHasImage bool `json:"is_has_image"` //是否有图片
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ImageMsgContent struct {
|
||||||
|
ImgName string `json:"img_name"` //图片名称
|
||||||
|
ImgUrl string `json:"img_url"` //图片url
|
||||||
|
}
|
||||||
|
|
||||||
// 用户向模型发送图片的消息结构
|
// 用户向模型发送图片的消息结构
|
||||||
type UserImageMsg struct {
|
type UserImageMsg struct {
|
||||||
ImgUrl string `json:"img_url"` //图片url
|
ImageContent []ImageMsgContent `json:"image_content"` //图片内容
|
||||||
Text string `json:"text"` //问题文本
|
Text string `json:"text"` //问题文本
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -185,6 +185,7 @@ func doubaoToGeneralMassageAndSendMsgQueue(data *model.ChatCompletionStreamRespo
|
||||||
worker.Publish(channel, string(wsMsgStr), time.Second*60)
|
worker.Publish(channel, string(wsMsgStr), time.Second*60)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 当前消息包含在messages中
|
||||||
func GetDouBaoSessionHistoryMsg(sessionID int, systemPrompt string, messages *[]*model.ChatCompletionMessage, prompt string) error {
|
func GetDouBaoSessionHistoryMsg(sessionID int, systemPrompt string, messages *[]*model.ChatCompletionMessage, prompt string) error {
|
||||||
var err error
|
var err error
|
||||||
//添加系统
|
//添加系统
|
||||||
|
|
@ -215,19 +216,22 @@ func GetDouBaoSessionHistoryMsg(sessionID int, systemPrompt string, messages *[]
|
||||||
return err2
|
return err2
|
||||||
}
|
}
|
||||||
//用户消息为图片类型
|
//用户消息为图片类型
|
||||||
|
listValue := []*model.ChatCompletionMessageContentPart{}
|
||||||
|
listValue = append(listValue, &model.ChatCompletionMessageContentPart{
|
||||||
|
Type: model.ChatCompletionMessageContentPartTypeText,
|
||||||
|
Text: imgMsg.Text,
|
||||||
|
})
|
||||||
|
//图片链接是可以是多个
|
||||||
|
for _, img := range imgMsg.ImageContent {
|
||||||
|
listValue = append(listValue, &model.ChatCompletionMessageContentPart{
|
||||||
|
Type: model.ChatCompletionMessageContentPartTypeImageURL,
|
||||||
|
ImageURL: &model.ChatMessageImageURL{
|
||||||
|
URL: img.ImgUrl,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}
|
||||||
message.Content = &model.ChatCompletionMessageContent{
|
message.Content = &model.ChatCompletionMessageContent{
|
||||||
ListValue: []*model.ChatCompletionMessageContentPart{
|
ListValue: listValue,
|
||||||
{
|
|
||||||
Type: model.ChatCompletionMessageContentPartTypeText,
|
|
||||||
Text: imgMsg.Text,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
Type: model.ChatCompletionMessageContentPartTypeImageURL,
|
|
||||||
ImageURL: &model.ChatMessageImageURL{
|
|
||||||
URL: imgMsg.ImgUrl,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
//用户消息为文本类型
|
//用户消息为文本类型
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue