用于 Solr 7.x-8.x 的 ik-analyzer
ik-analyzer for solr 7.x-8.x
适配最新版本solr 7&8;
扩展IK原有词库:
| 分词工具 | 词库中词的数量 | 最后更新时间 |
|---|---|---|
| ik | 27.5万 | 2012年 |
| mmseg | 15.7万 | 2017年 |
| word | 64.2万 | 2014年 |
| jieba | 58.4万 | 2012年 |
| jcesg | 16.6万 | 2018年 |
| sougou词库 | 115.2万 | 2020年 |
将以上词库进行整理后约187.1万条词汇;
添加动态加载词典表功能,在不需要重启solr服务的情况下加载新增的词典。
关闭默认主词典请在
IKAnalyzer.cfg.xml配置文件中设置use_main_dict为false。
将jar包放入Solr服务的Jetty或Tomcat的webapp/WEB-INF/lib/目录下;
将resources目录下的5个配置文件放入solr服务的Jetty或Tomcat的webapp/WEB-INF/classes/目录下;
① IKAnalyzer.cfg.xml
② ext.dic
③ stopword.dic
④ ik.conf
⑤ dynamicdic.txt配置Solr的managed-schema,添加ik分词器,示例如下;
启动Solr服务测试分词;
IKAnalyzer.cfg.xml配置文件说明:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
| use_main_dict | boolean | 是否使用默认主词典 | true |
| ext_dict | String | 扩展词典文件名称,多个用分号隔开 | ext.dic; |
| ext_stopwords | String | 停用词典文件名称,多个用分号隔开 | stopword.dic; |
ik.conf文件说明:
files=dynamicdic.txt
lastupdate=0files为动态词典列表,可以设置多个词典表,用逗号进行分隔,默认动态词典表为dynamicdic.txt;lastupdate默认值为0,每次对动态词典表修改后请+1,不然不会将词典表中新的词语添加到内存中。lastupdate采用的是int类型,不支持时间戳,如果使用时间戳的朋友可以把源码中的int改成long即可; 2018-08-23 已将源码中lastUpdate改为long类型,现可以用时间戳了。dynamicdic.txt 为动态词典
在此文件配置的词语不需重启服务即可加载进内存中。
以#开头的词语视为注释,将不会加载到内存中。
8.5.08.4.08.3.18.3.0IKAnalyzer.cfg.xml增加配置项use_main_dict,用于配置是否启用默认主词典8.2.08.1.18.1.08.0.0,并支持Solr8使用7.7.17.7.07.6.0zookeeper进行管理#开头的行将视为注释magese.dic7.5.07.4.0如果您在使用过程中遇到了BUG,或者有不清楚的地方,请挂ISSUE或者联系作者:
如果您觉得该项目对您有帮助,请别忘记给这个项目一个star
暂无开放 Issues,或尚未同步最近议题。