[ "tokeniz-6ren">
gpt4 book ai didi

elasticsearch - Elastic : startOffset must be non-negative, 和 endOffset 必须 >= startOffset,并且 offsets 不能倒退

转载 作者:行者123 更新时间:2023-12-05 06:32:11 25 4
gpt4 key购买 nike

我已经使用 elastic 实现了搜索。下面是我的分析配置

 $aAnalizerArray = [
"edgeTokenizer" => [
"tokenizer"=>"edgeTokenizer",
"filter" => [
"word_delimiter_graph",
"lowercase",
"unique"
]
],
];

$wbTokenizer = [
"edgeTokenizer"=>[
"type"=> "nGram", //edgeNGram
"min_gram"=>"2",
"max_gram"=> "8",
"token_chars"=> [
"letter",
"digit"
]
]
];

但是,当我插入 SeaShell Inc 时,出现如下错误:

{"error":{"root_cause":[{"type":"illegal_argument_exception","re​​ason":"startOffset 必须是非负数,endOffset 必须 >= startOffset,offsets 不能倒退 startOffset=1,endOffset=3,lastStartOffset=3 for field 'company_name'"}],"type":"illegal_argument_exception","re​​ason":"startOffset 必须是非负数,endOffset 必须 >= startOffset,并且偏移量不能向后移动 startOffset=1,endOffset=3,lastStartOffset=3 for field 'company_name'"},"status":400}

但是如果是Sea Shell Inc,那就没有问题了。我的elastic版本是6.X

有解决办法吗?

最佳答案

由于 word_delimiter_graph 的配置参数,可能会出现此问题,因为一些word_delimiter_graph 中的设置可以产生多位置标记,索引不支持。下面列出了可能导致此问题的配置参数:

adjust_offsets:设置为“false”时

catenate_all:当设置为“true”时

catenate_numbers:当设置为“true”时

catenate_words:当设置为“true”时

preserve_original:设置为“true”时

有关更多信息,您可以查看 Elastic 搜索的文档 here .

关于elasticsearch - Elastic : startOffset must be non-negative, 和 endOffset 必须 >= startOffset,并且 offsets 不能倒退,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51424058/

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