azure - Azure 搜索:在前缀搜索中将最接近的完全匹配优先于其他匹配
问题描述
我目前正在进行前缀搜索,Azure Cognitive Search
如下所示:
docs?api-version=2019-05-06&search=Do*
假设我的索引包含Dog
、Big Dog
和Small Dog
。结果集似乎默认按字母顺序排序,如下所示:
Big Dog
Dog
Small Dog
如何更改我的查询字符串,以便最接近的完全匹配首先出现,其余的按字母顺序排序?这是我想要的输出:
Dog
Big Dog
Small Dog
因此,如果用户键入D
、Do
或Dog
,我想先显示Dog
以帮助他们缩短键入时间。
解决方案
你能分享一下你的确切文件是什么样的吗?正如 Thiago 提到的,Azure 认知搜索返回一个相关性分数,该分数显示了与输入查询相对应的整个文档的相对相关性。
如果您的文档只有 1 个与您共享的确切文本匹配的字段,它应该返回得分最高的“Dog”,因为它与查询更相关。
推荐阅读
- javascript - 在 useEffect() 钩子中从父级传递的子级调用函数,React
- wordpress - 如何使用 CSS 和 HTML 为我的 WordPress 主题添加视频背景?
- sql - 如何为三个表编写此查询
- haskell - 安装 glpk-hs
- reactjs - 有没有办法让 SearchBar 失去焦点?
- sql - pl/sql 游标错误 ORA-06550 ORA-00905 由于缺少关键字,游标无法编译。我真的不知道我缺少哪个关键字
- javascript - React Native - 如何实现 Instagram 之类的自动完成搜索输入标签?
- sql - 仅返回一个表中位于另一个表中的时间范围之外的记录的查询
- javascript - 未选择选项值时删除 div
- c# - C# 中的动态字符串模板