From 36f395c680ac50d5506fd772fe330a2ab5429579 Mon Sep 17 00:00:00 2001 From: youpaishidifu Date: Wed, 16 Sep 2026 16:40:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=9F=A5=E8=AF=86=E5=BA=93?= =?UTF-8?q?=E6=90=9C=E7=B4=A2=EF=BC=9A=E7=A7=BB=E9=99=A4'=E7=8E=A9?= =?UTF-8?q?=E5=AE=B6'=E4=BB=8E=E5=81=9C=E7=94=A8=E8=AF=8D=E5=88=97?= =?UTF-8?q?=E8=A1=A8=EF=BC=8C=E8=A7=A3=E5=86=B3'=E7=8E=A9=E5=AE=B6?= =?UTF-8?q?=E6=9D=83=E5=88=A9'=E6=9F=A5=E8=AF=A2=E5=8C=B9=E9=85=8D?= =?UTF-8?q?=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 从auto_reply.py的_STOPWORDS集合中移除'玩家' - 添加注释说明原因:Minecraft服务器场景中'玩家'是高频核心词 - 验证:查询'玩家有哪些权利?'现在正确返回'玩家权利'section - Task #1732 和 #1733 --- auto_reply.py | 4 +++- knowledge_base.py | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/auto_reply.py b/auto_reply.py index 7be8af4..d4bbcf1 100644 --- a/auto_reply.py +++ b/auto_reply.py @@ -103,7 +103,9 @@ class AutoReply: # 通用连词/代词(避免污染核心词) "那么", "那个", "这些", "那些", "这个", "那些", # 通用名词,出现在太多文档中导致误匹配 - "服务器","玩家","游戏","世界","地图","技能","装备","物品","命令","指令", + # ⭐ 修复(2026-09-16):移除"玩家"——这是Minecraft服务器场景的核心词, + # 如"玩家有哪些权利"应匹配"玩家权利"而非"版权归属" + "服务器","游戏","世界","地图","技能","装备","物品","命令","指令", # ⭐ 保留"插件"在停用词中(2026-09-16):防止"插件"成为泛化核心词导致误匹配 # 但"兑换码插件"应整体视为领域词组,需在知识库搜索中特殊处理 "插件", diff --git a/knowledge_base.py b/knowledge_base.py index bb7aa4c..9513b45 100644 --- a/knowledge_base.py +++ b/knowledge_base.py @@ -540,8 +540,10 @@ class KnowledgeBase: # ⭐ 检测安装意图:查询包含"安装/怎么装/如何安装"等词 has_install_keyword = any(w in query_stripped for w in ('安装', '怎么装', '如何安装', '安装方法', '安装步骤', '安装教程')) - # ⭐ 过滤查询停用词:通用名词(服务器、玩家、游戏等)会导致TF-IDF虚高 + # ⭐ 过滤查询停用词:通用名词(服务器、游戏等)会导致TF-IDF虚高 # 修复"服务器的公告"被player.md"运营方权利"压过index.md"近期公告"的问题 + # ⭐ 注意:已从停用词移除"玩家"(2026-09-16修复),因为"Minecraft服务器玩家协议" + # 场景下"玩家"是核心词,如"玩家有哪些权利"应匹配"玩家权利"而非"版权归属" from auto_reply import AutoReply query_tokens_filtered = [t for t in tokens if t not in AutoReply._STOPWORDS] if not query_tokens_filtered: