gpt4 book ai didi

elasticsearch - 分词器与分词过滤器

转载 作者:行者123 更新时间:2023-11-29 02:43:54 26 4
gpt4 key购买 nike

我正在尝试使用 Elasticsearch 实现自动完成,我认为我了解如何去做......

我正在尝试在索引爬网数据时使用 ES 的 edge_n_grams 构建多词(短语)建议。

tokenizertoken_filter 之间有什么区别 - 我已经阅读了关于这些的文档,但仍然需要更多地了解它们....

例如,ES 用来搜索用户输入的是一个 token_filter 吗? ES用来制作 token 的是分词器吗?什么是 token ?

ES 是否有可能使用这些东西创建多词建议?

最佳答案

标记器会将整个输入拆分为标记,标记过滤器会对每个标记应用一些转换。

例如,假设输入是 The quick brown fox。如果您使用 edgeNGram tokenizer,您将获得以下标记:

  • T
  • Th
  • The(最后一个字符是空格)
  • q
  • 问题
  • 快速
  • 快速
  • quick(最后一个字符是空格)
  • 快速b
  • 快速 br
  • 快哥
  • 快速浏览
  • 快速棕色
  • The quick brown(最后一个字符是空格)
  • 快速棕色 f
  • 快速棕色 fo
  • 敏捷的棕色狐狸

但是,如果您使用标准分词器将输入拆分为单词/分词,然后使用 edgeNGram 分词过滤器,您将获得以下分词

  • T, Th, The
  • q, qu, qui, quic, quick
  • b, br, bro, brow, brown
  • f, fo, fox

如您所见,在 edgeNgram tokenizertoken filter 之间进行选择取决于您希望如何对文本进行切片和切 block 以及如何搜索它。

我建议看看优秀的 elyzer该工具提供了一种可视化分析过程并查看每个步骤(标记化和标记过滤)产生的内容的方法。

从 ES 2.2 开始,_analyze 端点还支持 explain feature它显示了分析过程中每个步骤的详细信息。

关于elasticsearch - 分词器与分词过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37168764/

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