This commit is contained in:
2026-08-05 11:32:05 +08:00
parent e54c3fff84
commit 13672fb217
10 changed files with 111 additions and 28 deletions
+6 -2
View File
@@ -29,7 +29,8 @@ func Tokenize(text string) string {
return strings.TrimSpace(sb.String())
}
// TokenizeQuery FTS5 查询串:每个词用双引号包裹(AND 语义),过滤 FTS5 特殊字符
// TokenizeQuery FTS5 查询串:过滤 FTS5 特殊字符与单字虚词,OR 语义。
// 中文问题分词后通常只有少数词与文档重合,AND 全命中会空召回,OR + BM25 排序更稳健。
func TokenizeQuery(text string) string {
tokens := seg.Cut(text, true)
var parts []string
@@ -41,7 +42,10 @@ func TokenizeQuery(text string) string {
if strings.ContainsAny(t, "\"*:()") {
continue
}
if len([]rune(t)) < 2 {
continue
}
parts = append(parts, "\""+t+"\"")
}
return strings.Join(parts, " ")
return strings.Join(parts, " OR ")
}