gpt4 book ai didi

azure - 以特定方式自定义 Azure 搜索评分

转载 作者:行者123 更新时间:2023-12-02 23:20:17 25 4
gpt4 key购买 nike

考虑一个场景,其中所有文档都有以下字段

enter image description here

要求是,对于电子邮件,分数应为 100(如果完全匹配)或 0。对于其余字段,根据编辑距离为 0 到 100。

假设索引中的记录如下

<强> [email protected] ,彼得·帕克,开发人员 [email protected] ,史蒂夫·史密斯,经理

查询是对所有字段进行模糊搜索,参数如下<强> [email protected] ,宠物,Par,开发

搜索结果应该有第一个记录的分数,例如

电子邮件得分 + 姓氏得分 + 名字得分 + 头衔得分

=100+50(“Peterr and Pet”的大约编辑距离)+50(“Peterr and Parker”的大约编辑距离)+44(“Devl and Developer”的大约编辑距离)

=244

同样,搜索结果也应该有类似的分数。

我刚刚检查了 Azure 搜索评分有权重,但我认为这些权重在这样的场景中没有多大帮助。我们正在寻找的主要内容是找到一种方法,让 Azure 返回每条记录的搜索分数搜索将根据我上面讨论的分数

最佳答案

为了澄清,您似乎需要的是评分公式是查询术语和索引术语之间的编辑距离的函数 - 距离越短,得分越高。不幸的是,这在 Azure 搜索中是不可能的。

Azure 搜索引擎分两个阶段执行搜索查询:检索和评分。

在检索期间,lexical analyzer 处理搜索查询词。在倒排索引中查找。包含这些条款的文档将被返回。当您使用模糊搜索时,我们通过添加 edit distance 范围内的倒排索引中的术语来扩展您的搜索查询。来自给定查询项的模糊扩展。这样您的查询就可以匹配更多文档。

在评分过程中,我们使用 Lucene scoring formula 为检索到的文档分配相关性分数。该公式基于TF/IDF 。实际上,这意味着与罕见术语匹配的文档将在结果集中排名靠前。

需要注意的是,Lucene 评分公式仅适用于与原始查询术语和通过模糊扩展添加的术语相匹配的文档。与通过前缀扩展或正则表达式/通配符扩展添加的术语相匹配的文档将获得恒定分数 1。这样,这些文档将出现在结果集中,但不会影响基于术语频率的排名。

希望有帮助

关于azure - 以特定方式自定义 Azure 搜索评分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42010142/

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