From cfeaa6e201126885585b7f0e32340a14e45b8987 Mon Sep 17 00:00:00 2001 From: fuzhongyun <15339891972@163.com> Date: Wed, 4 Feb 2026 16:53:35 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=8B=86=E5=88=86=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E5=88=A4=E6=96=AD=E4=B8=8E=E9=97=AE=E9=A2=98=E5=88=86=E7=B1=BB?= =?UTF-8?q?=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/biz/ding_talk_bot.go | 2 +- internal/biz/do/handle.go | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/internal/biz/ding_talk_bot.go b/internal/biz/ding_talk_bot.go index 0a74b22..a10907f 100644 --- a/internal/biz/ding_talk_bot.go +++ b/internal/biz/ding_talk_bot.go @@ -292,7 +292,7 @@ func (d *DingTalkBotBiz) resolveSystemAndIssueType(ctx context.Context, requireD return nil, err } // 问题类型 - classificationIssueType, err := d.handle.ClassifyIssueType(ctx, issueTypeNames, requireData.Req.Text.Content, userHist) + classificationIssueType, err := d.handle.ClassifyIssueType(ctx, issueTypeNames, sysNames, requireData.Req.Text.Content, userHist) if err != nil { return nil, err } diff --git a/internal/biz/do/handle.go b/internal/biz/do/handle.go index 4adda02..844c004 100644 --- a/internal/biz/do/handle.go +++ b/internal/biz/do/handle.go @@ -188,7 +188,7 @@ func (r *Handle) ClassifyIssueSystem(ctx context.Context, systems []string, user } // ClassifyIssueType 问题分类分析 -func (r *Handle) ClassifyIssueType(ctx context.Context, issueTypes []string, userInput string, userHist []model.AiBotChatHi) (*IssueClassification, error) { +func (r *Handle) ClassifyIssueType(ctx context.Context, issueTypes []string, systems []string, userInput string, userHist []model.AiBotChatHi) (*IssueClassification, error) { systemPrompt := fmt.Sprintf(`## 角色 你是一个业务问题类型分析专家。你的任务是基于多轮对话识别用户讨论的**问题类型(issue_type_name)**,问题类型必须严格来自可用问题类型列表 [%s]。 @@ -213,13 +213,14 @@ func (r *Handle) ClassifyIssueType(ctx context.Context, issueTypes []string, use ## 背景数据 可用问题类型列表:[%s] +系统名称列表参考:[%s] ## 输出格式 { "issue_type_name": "问题类型名称", "summary": "15字内问题标题", "reason": "说明问题类型是基于哪句话判断,或说明继承自历史,继承自哪条历史" -}`, strings.Join(issueTypes, ", "), strings.Join(issueTypes, ", ")) +}`, strings.Join(issueTypes, ", "), strings.Join(issueTypes, ", "), strings.Join(systems, ", ")) historyStr := strings.Builder{} historyStr.WriteString("### 历史对话:\n")