搜索词拆词的问题

来源:11-1 定制化分词器之扩展词库(上)

Ryan0828

2021-04-28

老师您好,我这边版本是7.10.0 环境是docker 我今天按照您说的步骤设置了自定义词『凯悦』但是还是搜索出了『花悦』
然后我做了个测试,首先我还是添加了搜索词『凯悦』在词典中,然后我测了一下
图片描述
图片描述
从结果来看,字典是生效的。
然后我新建了个索引test,给了唯一字段"namme":{“type”: “text”,“analyzer”: “ik_max_word”,“search_analyzer”: “ik_smart”}, 并且插入了两条数据
图片描述
然后进行了搜索测试,

GET /test/_search
{
  "query": {
    "match": {
      "name": "凯悦"
    }
  }
}

结果两条数据全查出来了。

"hits" : [
      {
        "_index" : "test",
        "_type" : "_doc",
        "_id" : "2",
        "_score" : 0.8754687,
        "_source" : {
          "name" : "凯悦酒店"
        }
      },
      {
        "_index" : "test",
        "_type" : "_doc",
        "_id" : "1",
        "_score" : 0.18232156,
        "_source" : {
          "name" : "啊悦酒店"
        }
      }
    ]

不知道我有没有说明白,网上搜索无果,希望老师能帮我解答。

写回答

2回答

Ryan0828

提问者

2021-05-04

确认了一下,真的是凯和悦。

GET /test/_analyze
{
  "field": "name",
  "text": "凯悦"
}
{
  "tokens" : [
    {
      "token" : "凯",
      "start_offset" : 0,
      "end_offset" : 1,
      "type" : "<IDEOGRAPHIC>",
      "position" : 0
    },
    {
      "token" : "悦",
      "start_offset" : 1,
      "end_offset" : 2,
      "type" : "<IDEOGRAPHIC>",
      "position" : 1
    }
  ]
}

老师为什么会这样啊,我是先添加的字典,后创建的index,为什么分词没走字典呢?提交

0
0

龙虾三少

2021-04-30

确认下凯悦分出来的词是不是 凯和 悦

0
1
Ryan0828
确认了一下,真的是凯和悦。 老师为什么会这样啊,我是先添加的字典,后创建的index,为什么分词没走字典呢?
2021-05-04
共1条回复

ES7+Spark 构建高匹配度搜索服务+千人千面推荐系统

ElasticSearch实现高相关性搜索,Spark MLlib实现个性化推荐

1384 学习 · 559 问题

查看课程