gpt4 book ai didi

java - Lucene搜索问题

转载 作者:行者123 更新时间:2023-12-01 15:46:03 27 4
gpt4 key购买 nike

我有大约 22,000 个 lucene 文档的 Lucene 索引,但在创建搜索程序时我遇到了一个独特的问题。

每个文档都有一个 Title、description 和 long_description 字段,这些字段包含与不同疾病及其症状相关的数据。现在,当我搜索如下短语时“小肠感染”我希望第一个结果是“霍乱”(顺便说一句,我将 MultiFieldQueryParser 与 StandardAnalyzer 一起使用。)

我之所以认为霍乱是第一个,是因为它在长描述字段中有确切的短语“小肠感染”。但这个结果不是出现在顶部,而是出现在底部,因为有很多其他文档在标题字段中提到了术语“感染”(其长度比描述字段小得多)。这可以在下面的屏幕截图中轻松看出。 enter image description here

因此,仅仅因为“霍乱”在“标题”字段中没有最相关的信息,它就出现在底部。我看到以下线程建议使用“~3”,但这是我应该对幕后的所有查询执行的操作吗?难道就没有更好的办法了吗?

Searching phrases in Lucene

最佳答案

让您的查询提高标题高、描述中、长描述低的命中率,如下所示:

title:intestine^100 description:intestine^10 long_description:intestine^1

此示例给出标题匹配分数“+100”,描述匹配分数“+10”,long_description 匹配分数“+1”。总提升分数较高的优先排序。您可以选择任何您喜欢的数字作为提升值。

关于java - Lucene搜索问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6979605/

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