From 81a9a7c51c9ce706cd9ebdff7fead61a8c755612 Mon Sep 17 00:00:00 2001 From: youpaishidifu Date: Wed, 19 Aug 2026 20:28:34 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20'=E5=85=B3=E4=BA=8E=E6=88=91=E4=BB=AC'?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E8=A2=AB=E6=89=93=E8=B4=9F=E5=88=86=E4=B8=A2?= =?UTF-8?q?=E5=BC=83=EF=BC=8Cindex=E5=85=B3=E4=BA=8E=E6=88=91=E4=BB=ACsect?= =?UTF-8?q?ion=E5=9B=9Etop1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 根因:导航/目录类section全局惩罚-30误伤精确答案——index.md'## 🎈关于我们'heading含'关于我们'被罚-30, base分14.29→-15.71负分,相关性检查全丢弃。 修复:惩罚列表移除'关于我们'(导航/目录/欢迎/总览/文档导航保留), '关于我们'是查询意图主体,命中即答案本体。 回归:关于我们→index 14.29 top1;服务器介绍/下载/皮肤更新/操作模式/菜单/公告全绿 --- knowledge_base.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/knowledge_base.py b/knowledge_base.py index 40616b8..c1c4bad 100644 --- a/knowledge_base.py +++ b/knowledge_base.py @@ -985,7 +985,11 @@ class KnowledgeBase: # ⭐ 导航/目录类section全局惩罚:文档导航/目录/总览表格列出全部主题词, # TF-IDF+核心名词bonus会让它们得分虚高(如index"文档导航"对"皮肤更新" # 查询得28分压过skin文档)。导航section永远不是具体问题的答案 → 重罚。 - if any(k in heading_no_links for k in ('导航', '目录', '关于我们', '欢迎', '总览', '文档导航')): + # ⚠ "关于我们"除外:它是查询意图主体(index"关于我们"=服务器简介即为 + # 精确答案),"关于我们"查询曾被该项误判-30打入-15.71负分丢弃。 + _nav_penalty_kw = ('导航', '目录', '欢迎', '总览', '文档导航') + _q_is_aboutus = '关于我们' in query_stripped and '关于我们' in heading_no_links + if any(k in heading_no_links for k in _nav_penalty_kw) and not _q_is_aboutus: bonus -= 30.0 reranked.append((idx, doc, score + bonus)) # ⭐ 否定式查询惩罚(在reranking后执行,防止被bonus覆盖)