文档说明

自定义 SCWS 词库

如之前所说,我们所有的索引分词器默认为 scws,这也是我们开发的开源分词系统, 内置的词库基本上能满足绝大多数应用。但总有例外,这也就是即将说的如何自定义词库。

1. 全局自定义词库

这是针对同一个 xunsearch 安装实例来讲,该服务端下的所有项目都将共用这个自定义词库。 严格来讲,这是 SCWS 本身就提供的功能,xunsearch 只是做了整合和规范。涉及的相关文件如下 (假设 $prefix 是您的安装目录)

$prefix/etc/dict_user.txt

打开上述文件,文件开头已经有了相关注释和说明。这个文件就是自定义词库文件, 如果您同一台机器上装有多个 xunsearch 服务端,那么每个服务端独自使用自己的自定义词典文件。

添加删除修改自定义词库只要编辑该文件即可,以下为相关规范:

  • 文件为纯文本文件,编码必须是 UTF-8,可用任何编辑器修改
  • 每行一条记录表示一个词,每行包含 1~4 个字段,字段之间用空格或制表符(\t)分隔
  • 字段含义依次表示 “词语”,“词频(TF)”,“逆词频率(IDF)”,“词性(ATTR)”
  • 后面三个字段如果省略依次使用 scws 的默认值
  • 特殊词性 ! 可用于表示删除该词
  • 自定义词典优先于内置词典加载和使用,以 # 开头的行为注释

Note: 该功能自 1.2.0 版本起方可使用,源自网友建议。

2. 项目自定义词库

某些情况下,不同的项目需要不同的特殊词库。每个搜索项目的自定义词库文件如下:

$prefix/data/项目名称/dict_user.txt

文件内容及格式与全局自定义词库是一致的,在此不再赘述。此外,这个文件还可以通过相关的 SDK API 读取和修改。

Note: 该功能自 1.3.4 版本起方可使用。

$Id$

6条评论!

#72 报告
bfeng at 2016-02-02 13:22:51
自定义词语没有啊

自定义词语没有啊

#68 报告
guojia at 2015-12-08 19:03:58
这个还有用么?为什么按照步骤做了完全看不到效果

rt

#40 报告
xxx555 at 2014-05-29 16:35:17
我搜索单字“茶”搜不出结果,搜“茶叶”才搜的出

我搜索单字“茶”搜不出结果,搜“茶叶”才搜的出,这算正常?

#38 报告
Sense at 2013-09-06 13:49:28
20万词的词库如何制作?

我们有个20万词的词库,如何生成xdb?怎么生成后老是不能用?

#15 报告
bevin1984 at 2012-06-28 10:58:08
有动态增加的方法吗?

不需要重启,且可以动态增加的方法吗?

#12 报告
moxie at 2012-05-03 14:10:55
生效需要重启服务

编辑后需要重启服务才可以生效。 sh $prefix/bin/xs-ctl.sh -b inet -s search restart

请到论坛 登录 后刷新本页面!