修复下载类查询匹配错误:相关性检查阶段应用同义词映射(Task #1604)

This commit is contained in:
youpaishidifu
2026-08-25 15:44:48 +08:00
parent 35171d193b
commit 12f269acaf
+10
View File
@@ -136,6 +136,16 @@ class AutoReply:
"""
import re
q_mean = AutoReply._meaningful_tokens(query)
# ⭐ 同义词扩展(2026-08-25):将查询中的同义词变体也加入核心词集合
# 修复"登陆"不匹配"登录"导致下载类查询匹配错误的问题
# 例:查询"登陆的哪个插件" → "登陆"映射到"登录" → "登录"也加入q_mean
from knowledge_base import KnowledgeBase
for src, dests in KnowledgeBase.SYNONYMS.items():
if src in query:
for dest in dests:
# 将同义词变体加入核心词集合(小写化,与_meaningful_tokens一致)
q_mean.add(dest.lower())
if not q_mean:
# 极短/纯停用词查询:要求整个 query 子串命中文档
stripped = re.sub(r'[??!!。,,\s]', '', query).lower()