什么是语义排名?
语义排名是 Azure AI 搜索中的一项功能,旨在提升搜索结果的排名。 语义排名使用语言理解来更准确地匹配原始查询的上下文,从而提升搜索结果的排名。
BM25 排名函数
默认情况下,Azure AI 搜索使用 BM25 排名函数。 BM25 排名函数根据搜索词在文档中出现的频率对搜索结果进行排名。 BM25 排名函数通常会实现出色的排名结果,因为频繁包含某个搜索词的文档通常是最相关的,但情况并非始终如此。 BM25 排名不会对查询语义施加任何相关性,有时可以通过添加语言理解来提高排名。
语义排名
语义排名有两个函数;它根据语言理解改进查询结果的排名,并通过在结果中提供描述文字和答案来改进对查询的响应。
语义排名使用 BM25 排名,并使用原始 BM25 排名以及语言理解模型来提取查询的上下文和含义,以计算新的相关性评分。
语义说明文字和答案
语义说明文字和答案提供其他结果以及可以显示的排名搜索结果,使用户能够更好地理解结果。
语义说明文字从文档中逐字提取摘要句子,并突出显示摘要句子中最相关的文本。
语义答案是语义排名的一个可选附加功能,可提供问题的答案。 如果搜索查询看似为问题并且搜索结果包含看似为相关答案的文本,则返回语义答案。
语义排名的工作原理
语义排名取 BM25 排名结果中的前 50 个结果。 结果将拆分为由语义配置定义的多个字段。 这些字段已转换为文本字符串并修剪为 256 个唯一标记。 一个标记大致相当于文档中的一个单词。
准备好字符串后,会将它们传递给机器阅读理解模型,以查找与查询最匹配的短语和句子。 此摘要短语的结果是语义说明文字,有时是语义答案。
现在,会根据说明文字的语义相关性对语义说明文字进行排名。 然后按相关性降序返回结果。
语义排名功能
请观看以下视频来大致了解 AI 搜索的功能:
语义排名的优势
与传统搜索结果相比,语义排名有两个关键优势:
- 语义排名可以对结果进行排名,以更密切地匹配原始查询的语义。 这样,最有用的文档更有可能出现在搜索结果的顶部。
- 语义排名可以在结果中查找字符串,以便在搜索结果页上呈现为说明文字并提供问题的答案。
语义排名限制
语义排名将应用于 BM25 排名函数返回的结果。 尽管语义排名可以对 BM25 排名函数提供的结果重新排名,但它不会提供 BM25 排名函数没有返回的任何其他文档。
语义排名使用 BM25 排名函数返回的前 50 个结果。 如果返回的结果超过 50 个,将仅考虑前 50 个结果。
语义排名定价
每月免费提供多达 1000 个语义排名查询。
如果每月查询数超过 1000 个,应选择标准定价。 标准定价的成本基于搜索量、搜索类型和搜索区域。
有关语义排名定价的详细信息,请参阅 Azure AI 搜索定价