Invision Community (IPS) 中文搜索效果差的核心在于分词 (Tokenization)。默认的英文依赖空格分词,这在中文环境中完全失效。
IPS 自带调用的 ES “CJK” 分析器(通常是标准的二元分词 Bigram)虽然能用,但对中文语义的理解依然不够理想,有时会导致“帖子”这种词汇被错误拆分而搜不到。
这下不得不搬出 Elasticsearch 了,安装专用的中文分词插件 IK Analysis 可以改善搜索中文的结果
infinilabs/analysis-ik: 🚌 The IK Analysis plugin integrates Lucene IK analyzer into Elasticsearch and OpenSearch, support customized dictionary.
# Navigate to your Elasticsearch installation directory
cd /usr/bin/elasticsearch
# Install the IK analysis plugin
# IMPORTANT: Replace "8.x.x" with your exact Elasticsearch version (e.g., 8.12.0)
bin/elasticsearch-plugin install https://get.infini.cloud/elasticsearch/analysis-ik/8.4.1
# Restart Elasticsearch service to apply changes
systemctl restart elasticsearch安装插件并重启 ES 服务后,执行重建索引,就可见效果!
By
Microcharon ·