更新时间:2024-03-18 GMT+08:00

配置自定义词库

云搜索服务的自定义词库功能,支持对文本进行分词,使得一些特殊词语在分词的时候能够被识别出来,便于根据关键词搜索文本数据。例如,根据公司名称来查询,如“华为”;或者根据网络流行词来查询,如“喜大普奔”。

  • 自定义词库功能上线之前(即2018年3月10日之前)创建的集群,无法使用自定义词库功能。
  • 自定义词库支持热更新,不需要重启集群即可生效。
  • 自定义词库一般用于中文分词,如果用于英文分词,会按照除#&+-.@_外的特殊符号进行切分。

背景信息

自定义词库使用的分词器包括IK分词器和同义词分词器。

IK分词器配备主词词库和停词词库;同义词分词器配备同义词词库。配置自定义词库需要提前准备词库文件并上传至OBS,详情请见上传词库文件至OBS

其中,IK分词器包含ik_max_word和ik_smart分词策略。同义词分词器使用的是ik_synonym分词策略。

  • ik_max_word:会将文本做最细粒度的拆分,比如会将“昨夜西风吹折千林梢”拆分为“昨夜西风,昨夜,西风,吹折千林梢,吹折,千林梢,千,林,折千林,千林,吹”,会穷尽各种可能的分词组合。
  • ik_smart:会做最粗粒度的拆分,比如会将“昨夜西风吹折千林梢”拆分为“昨夜西风,吹折千林梢”

前提条件

  • 登录云搜索服务管理控制台的账号或IAM用户必须同时具备如下两个权限才能使用自定义词库功能。
    • “全局服务”“对象存储服务”项目的“OBS Administrator”权限。
    • 当前所属区域的“Elasticsearch Administrator”权限。
  • 按要求在本地提前准备词库文件,详情请见上传词库文件至OBS

上传词库文件至OBS

配置自定义词库需要提前将词库上传至OBS桶。

  1. 表1要求准备词库文件。
    表1 词库说明

    词库类型

    概述

    文件要求

    主词词库

    主词为用户希望进行分词的特殊词语,如上文场景中的“智能手机”“喜大普奔”。主词库则是这些特殊词语的集合。

    UTF-8无BOM格式编码的文本文件,且文件中每一行为一个分词。若涉及单词,必须改成小写字母。主词库文件最大支持100M。

    停词词库

    停词为用户不希望进行分词或者关注的词语,如“的”“什么”“怎么”等。停词词库是停词词语的集合。

    UTF-8无BOM格式编码的文本文件,且文件中每一行为一个分词。停词词库文件最大支持20M。

    同义词词库

    同义词为意义相同的一组词语,如“开心”“高兴”。同义词词库是同义词词语的集合。

    UTF-8无BOM格式编码的文本文件,且文件中每一行为一组同义词,同义词之间用英文逗号隔开。同义词词库文件最大支持20MB。

  2. 上传词库文件至OBS桶,详细操作步骤请参见上传文件。上传的OBS桶必须和集群所在“区域”相同。

配置自定义词库

  1. 在云搜索服务管理控制台,在左侧菜单栏选择对应的集群类型,进入集群管理页面。
  2. “集群管理”页面,单击需要配置自定义词库的集群名称,进入集群基本信息页面。
  3. 选择“自定义词库”
  4. “自定义词库”页面,您可以单击开关来开启或关闭自定义词库功能。
    • OBS桶:主词库、停词词库和同义词词库文件存储的OBS桶位置。如果当前没有可用OBS桶,您可以单击“创建桶”进行创建,并将词库导入OBS桶中,详细操作步骤请参见创建桶。创建的OBS桶必须和集群所在“区域”相同。
    • 主词词库对象:主词词库文件必须是UTF-8无BOM格式编码的文本文件,且文件中每一行为一个分词。若涉及单词,必须改成小写字母。主词库文件最大支持100M。
    • 停词词库对象:停词词库文件必须是UTF-8无BOM格式编码的文本文件,且文件中每一行为一个分词。停词词库文件最大支持20M。
    • 同义词词库对象:同义词词库文件必须是UTF-8无BOM格式编码的文本文件,且文件中每一行为一组同义词,同义词之间用英文逗号隔开。同义词词库文件最大支持20MB。
    图1 配置自定义词库
  5. 单击“保存”,在“确认”对话框中,单击“确定”。词库信息在下方呈现,此时词库状态为“更新中”。请耐心等待1分钟左右,当词库配置完成后,词库状态变更为“成功”,此时,配置的词库信息已在此集群中生效。
    图2 词库信息

修改自定义词库

云搜索服务支持单独更新主词库对象、停词词库对象或者同义词词库的对象信息。

在自定义词库页面,选择新的“OBS桶”“主词库对象”“停词词库对象”“同义词词库对象”,修改后单击“保存”,在弹出的提示框中单击“确定”。当词库状态由“更新中”变为“成功”时,表示自定义词库修改完成。

删除自定义词库

如果您的词库已不再需要,您可以删除词库释放资源。

在自定义词库页面,关闭开关,在弹出的提示框中单击“确定”。词库信息删除后,自定义词库界面将不再呈现自定义词库配置信息。