From ffc73605e8eb71b6bda5e7f9183c585b08823f4a Mon Sep 17 00:00:00 2001 From: lixiangwuxian Date: Thu, 9 Jan 2025 03:04:51 +0800 Subject: [PATCH] refactor: enhance headmasterHandler to include group nickname in JSON responses for better user context and improve message formatting consistency --- handler/headmaster/headmaster.go | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/handler/headmaster/headmaster.go b/handler/headmaster/headmaster.go index 10064fa..466a870 100644 --- a/handler/headmaster/headmaster.go +++ b/handler/headmaster/headmaster.go @@ -33,13 +33,13 @@ func headmasterHandler(msg model.Message) (reply model.Reply) { } if len(msg.RawMsg) > 7 && msg.RawMsg[0:7] == "校长 " { return model.Reply{ - ReplyMsg: ask(from, fmt.Sprintf("{\"qqid\":%d,\"nickname\":\"%s\",\"referid\":%d,\"msg\":\"%s\"}", msg.UserId, msg.UserNickName, msg.OriginMsgId, msg.RawMsg[7:])), + ReplyMsg: ask(from, fmt.Sprintf("{\"qqid\":%d,\"nickname\":\"%s\",\"group_nickname\":\"%s\",\"referid\":%d,\"msg\":\"%s\"}", msg.UserId, msg.UserNickName, msg.GroupInfo.UserCard, msg.OriginMsgId, msg.RawMsg[7:])), ReferOriginMsg: false, FromMsg: msg, } } return model.Reply{ - ReplyMsg: ask(from, fmt.Sprintf("{\"qqid\":%d,\"nickname\":\"%s\",\"referid\":%d,\"msg\":\"%s\"}", msg.UserId, msg.UserNickName, msg.OriginMsgId, msg.RawMsg)), + ReplyMsg: ask(from, fmt.Sprintf("{\"qqid\":%d,\"nickname\":\"%s\",\"group_nickname\":\"%s\",\"referid\":%d,\"msg\":\"%s\"}", msg.UserId, msg.UserNickName, msg.GroupInfo.UserCard, msg.OriginMsgId, msg.RawMsg)), ReferOriginMsg: false, FromMsg: msg, } @@ -55,6 +55,22 @@ func ask(from string, question string) (reply string) { openai.ChatCompletionRequest{ Model: config.ConfigManager.GetProperty("openai_model_name"), Messages: GenRequestFromUsr(from, question), + // Tools: []openai.Tool{ + // { + // Type: openai.ToolTypeFunction, + // Function: &openai.FunctionDefinition{ + // Name: "try_get_qqid_by_nickname", + // Description: "尝试在群内获取昵称对应的qq号", + // Parameters: json.RawMessage(`{"type": "object", "properties": {"nickname": {"type": "string", "description": "用户的昵称"}}}`), + // }, + // }, + // }, + // ToolChoice: &openai.ToolChoice{ + // Type: openai.ToolTypeFunction, + // Function: openai.ToolFunction{ + // Name: "try_get_qqid_by_nickname", + // }, + // }, }, )