gpt4 book ai didi

elasticsearch - NEST(ElasticSearch)将突出显示与文档匹配

转载 作者:行者123 更新时间:2023-12-02 22:52:37 24 4
gpt4 key购买 nike

我将C#NEST与ElasticSearch结合使用。我可以查询产品索引,并在其NameCategoryName字段中查找匹配项。我还可以使用Highlights扩展查询。

现在在IQueryResponse响应中,我有两个集合:(1).Documents和(2).Highlights

例如:考虑搜索:“cat”,其中包含3个文档结果:

{
{名称:“Cat product”,类别名称:“Category1”},
{名称:“某些产品”,类别名称:“Category2”},
{名称:“Some product2”,类别名称:“Category3”}
}

但是现在我有4个突出结果:

{
{栏位:“名称”,突出显示:['“ Cat 产品”']},
{栏位:“categoryName”,突出显示:['“ Cat egory1”']},
{栏位:“categoryName”,突出显示:['“ Cat egory2”']},
{栏位:“categoryName”,突出显示:['“ Cat egory3”']}
}

它们似乎毫无关联。 我如何知道哪个Highlight项目属于哪个Document项目?

最佳答案

IQueryResponse还公开了.DocumentsWithMetaData类型的IEnumerable<IHit<T>>,其中T是文档的类型

这基本上是结果的展开 View ,因为elasticsearch的返回IHit<T>具有许多有用的属性,例如Highlights

我已经在高亮类Highlight中添加了DocumentId结果,因此无论您如何获得高亮,都可以轻松地将其与匹配匹配。

因此,现在就使用.DocumentsWithMetaData,下一个版本将具有更符合逻辑的突出显示API。

关于elasticsearch - NEST(ElasticSearch)将突出显示与文档匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17805251/

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