服务对象与地域限制
PuppyIP 仅面向海外合规企业及其授权人员提供服务,不面向中国大陆地区开放或提供代理服务。本服务仅限用于中国大陆境外的合法业务活动,严禁在中国大陆境内使用本服务。
代理 IP 或服务器位于境外,不改变上述限制。不得通过中转、转接、共享或转售向中国大陆境内的最终使用者提供本服务。使用前请阅读用户服务协议。
本文要点
- Cloudflare 10 月 16 日更新说明,AI Search 的 trigram 关键词检索可匹配日文、中文和韩文,包括自然语言问题。
- 要改的是 indexing_options.keyword_tokenizer;默认值是 porter,CJK 内容可改为 trigram。
- trigram 按连续三个字符生成重叠片段;少于三个字符的词不能单独匹配。
- 更改分词器会完整重建索引。官方文档没有给出这项重建的固定耗时或费用。
10 月 16 日更新了什么?
Cloudflare 的更新记录称,AI Search 的 trigram 关键词分词现在支持日文、中文和韩文查询,也包括完整的自然语言问题。更新解释说,过去没有空格的查询会被当作一个完整短语,通常得不到关键词结果;porter 分词对这些语言也不理想。
这是一项关键词检索更新,不是对所有 AI Search 问题的统一修复。Cloudflare 没有承诺每个中文问题都会命中,也没有说明这会改变向量检索或答案生成效果。
先确认问题出在关键词检索
关键词检索文档把关键词与向量检索分开说明:实例可以用关键词、向量,或将两者组合。tokenizer 决定关键词部分如何切分文本,因此纯向量流程不会因为更改这个字段而改变。
如果你使用混合检索,trigram 影响的是其中的关键词部分;它不会替换嵌入模型,也不能代替检查索引状态、源文件或查询本身。先看当前调用是否包含关键词检索,再决定是否需要调整。
中文内容要改哪个字段?
Cloudflare 将关键词分词器设在 indexing_options.keyword_tokenizer。默认值 porter 更适合按空格分词的自然语言;官方文档建议日文、中文或韩文内容使用 trigram。
trigram 会把文本切成重叠的三字符片段。举例来说,示意文本“账单到期日”会形成“账单到”“单到期”“到期日”等片段;这只是解释分词方式的例子,并非检索实测。
文档也提醒,少于三个字符的词不能独立匹配。只有两字的缩写或词语不要指望 trigram 单独找到;请用包含上下文的完整查询,并用你自己的资料测试命中与误命中。
切换前要安排一次完整重建
修改 keyword_tokenizer 会触发完整索引重建。已有较大知识库应先确认可接受的重建窗口,并留意当前实例的索引状态;不要把改字段当成即时生效、无需等待的开关。
Cloudflare 当前这两份公开页面没有列出该重建的固定时长或单独费用,也没有替你的数据规模做估算。先用代表性中文问题制定验收清单,再按当前文档和账户实际情况安排变更;本文没有操作真实账户或运行检索。
trigram 与 AND/OR 是两个不同选择
分词方式解决文本如何切片;keyword_match_mode 则决定多个查询词要全部匹配(and,默认)还是任意词匹配(or)。后者能放宽匹配条件,也可能带来更多无关结果。
遇到中文关键词无结果时,先核对检索路径与 tokenizer。只有当内容分词正确、但多个查询条件仍过严时,再单独评估 and 或 or;不要把两项设置混成一个“中文开关”。
资料来源
常见问题
改成 trigram 后,中文问题一定能搜到吗?
不保证。Cloudflare 说明 trigram 可匹配中文等 CJK 关键词查询,但实际结果仍取决于已索引内容和查询。请用代表性问题检查命中、漏检和无关结果。
这个设置会改变向量检索吗?
文档将 keyword_tokenizer 放在关键词索引设置中。它影响关键词部分;混合检索中的向量部分仍由向量检索配置决定。
两个字的词能用 trigram 单独匹配吗?
官方文档指出,短于三个字符的词不能单独匹配。查询应包含更长的上下文,并通过你的内容样本验证。
修改 tokenizer 后要做什么?
Cloudflare 文档明确说更改会触发完整索引重建。安排变更前先确认可接受的重建窗口,并在索引完成后重新验收关键词查询。
还要把 keyword_match_mode 改成 or 吗?
不一定。它与 tokenizer 分开设置:and 要求所有查询词匹配,or 允许任一词匹配。只有确实需要更宽松结果时再评估 or,并检查新增的无关结果。