当前位置: 首页 > news >正文

泰国浪琴手表网站网站排名优化培训课程

泰国浪琴手表网站,网站排名优化培训课程,wordpress需要php版本,企业公示信息查询系统陕西目录 一、支持中文二、自定义中文词典2.1 Redis Search设置FRISOINI参数2.2 friso.ini文件相关配置1)自定义friso UTF-8字典2)修改friso.ini配置文件 三、实测中文分词效果 一、支持中文 Redis Stack 从版本 0.99.0 开始支持中文文档的添加和分词。中文…

目录

    • 一、支持中文
    • 二、自定义中文词典
      • 2.1 Redis Search设置FRISOINI参数
      • 2.2 friso.ini文件相关配置
        • 1)自定义friso UTF-8字典
        • 2)修改friso.ini配置文件
    • 三、实测中文分词效果

一、支持中文

Redis Stack 从版本 0.99.0 开始支持中文文档的添加和分词。中文文档的索引与其他语言不同,因为中文分词是通过扫描输入文本并根据预定义词典匹配字符或字符序列来完成的,而不是简单地使用空格或标点符号进行分词。Redis Stack 使用 Friso 中文分词库来实现这一功能,通常不需要额外配置。

Friso 是使用 c 语言开发的一款开源的高性能中文分词器,使用流行的mmseg算法实现。完全基于模块化设计和实现,可以很方便的植入其他程序中, 例如:MySQL,PHP,并且提供了php5, php7, ocaml, lua的插件实现。源码无需修改就能在各种平台下编译使用,加载完 20万的词条(UTF-8字典仅为2.53MB),内存占用稳定为 14.5M.

创建索引时支持中文:

# 创建JSON索引支持中文
FT.CREATE itemIdx ON JSON PREFIX 1 item: # 使用LANGUAGE参数(默认值english)设置支持中文分词LANGUAGE chinese
SCHEMA $.name AS name TEXT $.description as description TEXT $.price AS price NUMERIC $.colors.* AS colors TAG $.location AS loc GEO# 检索时支持中文
# 若在创建索引时已设置了LANGUAGE,则检索时无需再次设置LANGUAGE参数
FT.SEARCH itemIdx 你好 LANGUAGE chinese

二、自定义中文词典

如果你希望使用自定义词典,可以在加载Redis Search模块时在模块级别进行设置。FRISOINI设置可以指向包含相关设置和词典文件路径的 friso.ini 文件。 请注意,没有默认的 friso.ini 文件位置。RediSearch 自带的 friso.ini 和词典文件在构建时已编译到模块二进制文件中。

2.1 Redis Search设置FRISOINI参数

具体设置FRISOINI参数的方式包括:

1)加载Redis Search模块时设置FRISOINI:

redis-server --loadmodule ./redisearch.so FRISOINI /opt/dict/friso.ini
# 或
MODULE LOAD redisearch.so FRISOINI /opt/dict/friso.ini

2)运行时设置FRISOINI:

# 格式: FT.CONFIG SET OPT1 VAL1
FT.CONFIG SET FRISOINI /opt/dict/friso.ini

注: 方式 2) 官网说可以,但实测在运行时修改FRISOINI配置提示不支持,提示如下:
在这里插入图片描述

3)在Docker镜像中通过环境变量设置FRISOINI:

# Redis Stack
docker run -d 
--name redis-stack 
-p 6379:6379 
# 设置Redis Search配置参数
-e REDISEARCH_ARGS="FRISOINI /opt/dict/friso.ini" 
redis/redis-stack:latest

2.2 friso.ini文件相关配置

1)自定义friso UTF-8字典

首先下载friso UTF-8字典:
https://github.com/lionsoul2014/friso/tree/master/vendors/dict/UTF-8

在该dict/UTF-8目录下新建自定义的字典,如下图新建lex-biz.lex,在该自定义文件中输入业务专属的词条及其同义词集合,lex-biz.lex文件示例内容如下:

# 格式:词条/同义词集合
# 示例格式1(无同义词): 你好/null
# 示例格式2(有同义词): 研究/琢磨,研讨,钻研
水煮鱼/水煮黑鱼,水煮清江鱼,椒盐水煮鱼,水煮鱼片,川香水煮鱼
麻辣烫/null
麻辣拌/null
麻辣香锅/null
拌面/凉拌面,炸酱面
炒面/炒河粉,炒粉,炒米粉,炒米线

之后修改dict/UTF-8目录下的friso.lex.ini文件,在__LEX_CJK_WORDS__配置下添加上面自定义的字典文件lex-biz.lex,具体配置参见下图:
在这里插入图片描述

之后即可将整个dict/UTF-8字典目录整体拷贝,如拷贝到redis-stack-server的Docker镜像(或者服务器)中,如将其拷贝到Docker镜像的/usr/local/share/friso/dict/UTF-8/目录下。

2)修改friso.ini配置文件

首先从git仓库下载friso.ini原始配置文件:
https://github.com/lionsoul2014/friso/blob/master/friso.ini

然后修改friso.ini配置文件中的friso.lex_dir为前文提到的自定义字典的存放目录/usr/local/share/friso/dict/UTF-8/
在这里插入图片描述

最后将修改后的friso.ini文件拷贝到redis-stack-server的Docker镜像(或者服务器)中,如将其拷贝到Docker镜像的/usr/local/share/friso/目录下,最后便可通过前文提到的RedisSearch设置FRISOINI参数的某一种方式进行FRISOINI的设置,如在启动Docker时设置friso.ini配置文件:

docker run -d -t 
--restart=always 
--name redis-stack 
-p 26379:6379 -p 28001:8001 
-v /opt/redis-stack/local-data/:/data 
# 将宿主机上的friso自定义字典、配置目录拷贝到容器内
-v /opt/support/redis-stack/friso:/usr/local/share/friso
# 设置Redis Search配置参数FRISOINI
-e REDISEARCH_ARGS="FRISOINI /usr/local/share/friso/friso.ini" 
redis/redis-stack:latest

宿主机friso相关配置目录如下:
在这里插入图片描述

三、实测中文分词效果

测试文本1(关键词:咚巴拉)

“中午吃完了所谓的早茶 回去放下行李 休息了会
就来吃下午茶了[服务]两层楼 楼下只能收现金 楼上可以微信支付宝 先找座位再点单[环境]人很多
去的那时候还下雨 楼下楼上座无虚席 可见生意真是好啊「芝麻糊」其实是芝麻糊加了汤丸
我觉得这个不太腻 所以吃了挺多 「双皮奶」双皮奶第一口的味道我是很喜欢
但是吃多了有点腻 碗的分量不小 店里吃的挺多
不过不饿也就点了个招牌的尝尝咚巴拉得再有机会去的话换个别的尝尝.”

测试文本2(关键词:阿卡利巴)

“甜品一直是我的心头肉,既然来了广州,不吃甜品是不会罢休的 ,
可惜还有好几家没有办法前往。南信牛奶甜品专家,是非常火的甜品店,一万多条的评论就能看出之火爆,
到店是中午12 点左右,基本是爆满,还好三楼的时候刚好有一桌起来了,不然还真要站着等一会。
先点单付钱入座等待红豆双皮奶 15 元/ 份,等待时长大概 15分钟 ,食客实在太多了 ,
可选择冰热,夏天当然要吃冰的 !!吃的有点小恶心,又或者是自己吃不惯…
挺奇怪的杨枝甘露 20元 / 份,这家的杨枝甘露很稀,感觉没啥味道,料很少。。
游客店 … 随随便便了阿卡利巴利人均大概 20-30”

存在测试文本1和2,
且需要搜索出指定的关键词:咚巴拉阿卡利巴
则对应不同的字典定义的搜索结果命中情况见下表:

自定义字典检索:咚巴拉
FT.SEARCH my_idx '咚巴拉'
检索:阿卡利巴
FT.SEARCH my_idx '阿卡利巴'
咚巴拉/null
阿卡利巴/null
  • 测试文本1
  • 测试文本2
咚巴拉/阿卡利巴
阿卡利巴/咚巴拉
  • 测试文本1
  • 测试文本2
咚巴拉/阿卡利巴
  • 测试文本1
咚巴拉/阿卡利巴

额外执行:
FT.SYNUPDATE my_idx my_syn 咚巴拉 阿卡利巴
  • 测试文本1
  • 测试文本1
咚巴拉/null
阿卡利巴/null

额外执行:
FT.SYNUPDATE my_idx my_syn 咚巴拉 阿卡利巴
  • 测试文本1
  • 测试文本2
  • 测试文本1
  • 测试文本2

结论

  • Friso自定义字典(格式:词条/同义词集合)中的词条在Redis Search中是好用的,可以自定义分词
  • Friso自定义字典(格式:词条/同义词集合)中的同义词集合在Redis Search中不生效
  • 如果想要使用同义词功能,需借助Redis Search中的同义词FT.SYNUPDATE等相关命令
http://www.hkea.cn/news/197976/

相关文章:

  • 网站新闻模块代码网络推广有哪些常见的推广方法
  • 合肥大型网站如何推广普通话
  • 高端网站制作软件怎么样推广自己的店铺和产品
  • 无障碍浏览网站怎么做关键词seo排名优化推荐
  • wordpress 247seo推广系统
  • 做深圳门户网站起什么名字好泰州seo外包公司
  • 网站视频上传怎么做百度站长平台论坛
  • wordpress农业模板下载小时seo
  • 做网站语言排名2018发帖推广哪个平台好
  • 销氪crmseo入门讲解
  • 蒙阴哪有做淘宝网站的钓鱼网站制作教程
  • 网站如何做导航条下拉菜单怎么做百度网页
  • 网站开发都做什么平台推广精准客源
  • 网站建设共享ip宁波seo搜索引擎优化
  • 学校网站建设必要性搜索引擎排名
  • 哪里有做区块链网站的百度网址大全在哪里找
  • 加盟平台网站怎么做竞价托管多少钱一个月
  • wordpress 微信 代码网站关键词怎么优化排名
  • 网站推广维护考研培训班哪个机构比较好
  • 网站后台生成器人工智能培训班收费标准
  • 在线做app的网站武汉网络营销公司排名
  • 了解深圳网站页面设计潍坊百度关键词优化
  • 制作网站怎样找公司来帮做seo词条
  • 网络销售有哪些站长工具seo排名
  • 做房产中介网站怎么注册一个自己的网站
  • 天津网站设计成功柚米全网推广成功再收费
  • 建设公司网站靠谱吗企业网站设计制作
  • 电子商务学什么课程内容兰州搜索引擎优化
  • 沧州网站建设制作设计优化能打开的a站
  • 石家庄网站建设推广报价怎么让百度快速收录网站