gpt4 book ai didi

azure - 如何在 Azure 认知搜索中检查同一文档中的字段之间是否不相等?

转载 作者:行者123 更新时间:2023-12-03 06:43:59 25 4
gpt4 key购买 nike

我们在 Azure 认知搜索中设置了一个索引,该索引具有两个包含单独哈希值的字符串字段(hash1 和 hash2)。我们想要查询索引以查找文档中两个哈希值不相等的文档。

我尝试应用过滤器:$filter=hash1 ne hash2,期望查询返回具有不匹配哈希值的所有文档。相反,我收到了以下错误消息:

"Invalid expression: Comparison must be between a field, range variable or function call and a literal value.\r\nParameter name: $filter"

据我所知,似乎存在某种限制阻止字段之间的比较。是否可以使用不同的技术在 Azure 认知搜索中执行此类查询?

最佳答案

在这种情况下我会使用内容丰富。即使支持通过查询比较两个哈希值,与使用内容丰富技术预先计算值相比,效率也很低。

  1. 引入一个新的 bool 属性,称为 HasEqualHashes

  2. 使用适当的 bool 值填充该属性

  3. 使用 $filter 根据需要过滤您的内容

    搜索=whatever&$filter=HasEqualHashes

请注意,两种不同的场景决定了您如何丰富内容。

通过 SDK 提交的内容

当您使用 SDK 提交内容时,您可以使用常规代码以任何您想要的方式丰富您的项目。在 C# 中,填充 HasEqualHashes 属性只是一件简单的事情。

使用内置索引器提交的内容

如果您使用内置索引器之一,则必须学习并理解技能组的概念。

https://learn.microsoft.com/en-us/azure/search/cognitive-search-working-with-skillsets

Conceptual drawing of skillsets from microsoft.com

关于azure - 如何在 Azure 认知搜索中检查同一文档中的字段之间是否不相等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74269242/

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