gpt4 book ai didi

ruby - 我如何在 ElasticSearch 中索引这个字段?

转载 作者:太空宇宙 更新时间:2023-11-03 16:30:04 25 4
gpt4 key购买 nike

我想索引以下字段:

quick brown fox

因此,以任何顺序搜索所有 3 个词都会命中,但只搜索其中的几个词(如“brown fox”)会失败。

换句话说,我想创建一个索引/查询,因此满足以下条件:

# input for field
quick brown fox

# hits
brown fox quick
fox quick brown
quick brown fox
...

# misses
quick brown
fox
quick brown fox red
...

看来我必须制作一个自定义分词器才能执行此操作。将输入流分解为这些关键字排列的分词器。我不知道从哪里开始。我正在使用 ruby /轮胎。这是正确的想法吗?我如何着手制作自己的分词器?

最佳答案

我会按字母顺序对这些单词进行排序,使用一些不会出现在单词中的分隔符将它们组合在一起,并将它们作为一个未分析的标记进行索引。因此,quick brown fox 将被索引为 brown-fox-quick。您需要在索引和搜索期间执行此操作。理想情况下,这将由分析器完成,但我不知道有任何分析器会为您做这样的事情。因此,您需要编写自己的自定义分析器(作为 java 插件)或在 elasticsearch 之外的代码中实现此逻辑。

关于ruby - 我如何在 ElasticSearch 中索引这个字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17698895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com