如何安装elasticsearch中文切词插件hanlp
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,这篇文章主要介绍如何安装elasticsearch中文切词插件hanlp,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!hanlp好处的,就是它的data字典比较齐全.githu
千家信息网最后更新 2025年02月02日如何安装elasticsearch中文切词插件hanlp
这篇文章主要介绍如何安装elasticsearch中文切词插件hanlp,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
hanlp好处的,就是它的data字典比较齐全.
github上有国人写hanlp支持es的插件
https://github.com/pengcong90/elasticsearch-analysis-hanlp
下载它的安装 release 包
下载发现解压按它的安装要求总找不到hanlp.properties文件
将源码git下来,发现路径有问题.
package org.elasticsearch.index.analysis;import com.hankcs.hanlp.HanLP;import com.hankcs.hanlp.utility.Predefine;import com.hankcs.lucene4.HanLPIndexAnalyzer;import org.elasticsearch.common.inject.Inject;import org.elasticsearch.common.inject.assistedinject.Assisted;import org.elasticsearch.common.settings.Settings;import org.elasticsearch.env.Environment;import org.elasticsearch.index.IndexSettings;/** */public class HanLPAnalyzerProvider extends AbstractIndexAnalyzerProvider{ private final HanLPIndexAnalyzer analyzer; private static String sysPath = String.valueOf(System.getProperties().get("user.dir")); @Inject public HanLPAnalyzerProvider(IndexSettings indexSettings, Environment env, @Assisted String name, @Assisted Settings settings) { super(indexSettings, name, settings); //原来路径 //Predefine.HANLP_PROPERTIES_PATH = sysPath.substring(0, sysPath.length()-4) + "/plugins/analysis-hanlp/hanlp.properties"; //修改后正确路径 Predefine.HANLP_PROPERTIES_PATH = sysPath + "/plugins/analysis-hanlp/hanlp.properties"; analyzer = new HanLPIndexAnalyzer(true); } public static HanLPAnalyzerProvider getIndexAnalyzerProvider(IndexSettings indexSettings, Environment env, String name, Settings settings) { return new HanLPAnalyzerProvider(indexSettings, env, name, settings); } public static HanLPAnalyzerProvider getSmartAnalyzerProvider(IndexSettings indexSettings, Environment env, String name, Settings settings) { return new HanLPAnalyzerProvider(indexSettings, env, name, settings); } @Override public HanLPIndexAnalyzer get() { return this.analyzer; }}
因为它的hanlp版本是1.2.8,最新版本是1.5.4
修改pom.xml为
com.hankcs hanlp portable-1.5.4
打包编译
在$ES_HOME下/plugins建立analysis-hanlp文件
目录下结构为
hanlp.properties属性(可以直接从 https://github.com/hankcs/HanLP 的realease下载修改root路径就行了)
#本配置文件中的路径的根目录,根目录+其他路径=完整路径(支持相对路径,请参考:https://github.com/hankcs/HanLP/pull/254)#Windows用户请注意,路径分隔符统一使用/root=/opt/elasticsearch-5.5.1/plugins/analysis-hanlp#核心词典路径CoreDictionaryPath=data/dictionary/CoreNatureDictionary.txt#2元语法词典路径BiGramDictionaryPath=data/dictionary/CoreNatureDictionary.ngram.txt#停用词词典路径CoreStopWordDictionaryPath=data/dictionary/stopwords.txt#同义词词典路径CoreSynonymDictionaryDictionaryPath=data/dictionary/synonym/CoreSynonym.txt#人名词典路径PersonDictionaryPath=data/dictionary/person/nr.txt#人名词典转移矩阵路径PersonDictionaryTrPath=data/dictionary/person/nr.tr.txt#繁简词典根目录tcDictionaryRoot=data/dictionary/tc#自定义词典路径,用;隔开多个自定义词典,空格开头表示在同一个目录,使用"文件名 词性"形式则表示这个词典的词性默认是该词性。优先级递减。#另外data/dictionary/custom/CustomDictionary.txt是个高质量的词库,请不要删除。所有词典统一使用UTF-8编码。CustomDictionaryPath=data/dictionary/custom/CustomDictionary.txt; 现代汉语补充词库.txt; 全国地名大全.txt ns; 人名词典.txt; 机构名词典.txt; 上海地名.txt ns;data/dictionary/person/nrf.txt nrf;#CRF分词模型路径CRFSegmentModelPath=data/model/segment/CRFSegmentModel.txt#HMM分词模型HMMSegmentModelPath=data/model/segment/HMMSegmentModel.bin#分词结果是否展示词性ShowTermNature=true#IO适配器,实现com.hankcs.hanlp.corpus.io.IIOAdapter接口以在不同的平台(Hadoop、Redis等)上运行HanLP#默认的IO适配器如下,该适配器是基于普通文件系统的。#IOAdapter=com.hankcs.hanlp.corpus.io.FileIOAdapter
plugin-descriptor.properties和plugin-security.policy属性按 elasticsearch-analysis-hanlp 的release包属性修改.
修改ES启动,并启动
vim /opt/elasticsearch-5.5.1config/jvm.options #新增-Djava.security.policy=/opt/elasticsearch-5.5.1/plugins/analysis-hanlp/plugin-security.policy
测试安装成功否命令
GET /_analyze?analyzer=hanlp-index&pretty=true { "text":"公安部:各地校车将享最高路权" }
data字典文件从 https://github.com/hankcs/HanLP/releases 下载,解压就行了.
以上是"如何安装elasticsearch中文切词插件hanlp"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
路径
词典
文件
词性
插件
人名
属性
根目录
适配器
适配
中文
内容
地名
字典
模型
版本
目录
篇文章
词库
参考
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
湖北电商网络安全维护管理系统
河北网络技术有限公司全部
我的世界服务器怎么堆
北京博远网络技术有限公司
创新网络安全宣传教育工作
安阳市网络安全运维
优刻得云服务器上传文件
网络安全反教材
华为 网络技术支持
无法连接专用服务器csgo
服务器电源关闭但显示器还能亮
张格网络安全
如何得到核磁数据库
汉中生活家网络技术有限公司
数据库分为网络
海南鲲鹏服务器
淘宝第三方软件开发
数据库只查询权限
关系型数据库具体名称
数据网络技术架构
镜湖医院手机软件开发
阿黑玩的方舟是哪个服务器
黑客网络安全之密码学基础
江苏定制软件开发服务电话
qgis添加个人地理数据库数据
南通大容量服务器代理厂家
软件开发 项目开发与规划
ilas数据库启动
赵县网络安全事件
网络技术人员的职责