本文阐述了查询中每个词在文本中的重要性,并将其量化为权重。权重较低的词可能不参与召回,以避免当用户输入包含此类低权重词的查询时,仍受这些词的限制而导致召回结果过少。
功能介绍
示例:查询词:“OpenSearch好不好”:
未使用词权重改写前的query为:query=default:'opensearch' AND default:'好不好'
经过词权重处理后改写query为:query=default:'opensearch' RANK default:'好不好'
因此,只要包含“opensearch”的文档都可以被召回。
功能使用流程
-
开放搜索控制台选择左侧导航栏中的“召回配置”下方对应的“查询分析配置”,选择对应的应用名和应用类型(线上/线下)点击创建。
-
输入“规则名称”,选择“索引范围”,选择“行业类型”,功能选择选中“词权重”,点击“确定”:
Query改写策略选择AND,在词权重配置面板中,词典使用勾选系统内置词典。
-
规则创建完毕后,可以进行搜索效果测试:
在查询分析配置列表中,找到目标查询分析规则,单击其操作列的搜索测试。测试效果:在搜索测试页面,选择应用(如
changyu3)和线上应用,输入查询语句(例如default:'OpenSearch好不好'),单击搜索。页面底部显示实际查询词解析结果,例如(default:'opensearch' RANK default:'好不好'),表明原始查询经分词后被拆分为opensearch和好不好两个词并以 RANK 算子连接。在弹窗中可查看原始查询词、索引名称、Query改写结果,以及分析过程各步骤(包括拼写纠错、归一化、分词、停用词、同义词、类目预测)的处理结果。如需调整分析结果,可单击查询分析有误?前往干预进行干预配置。
-
调试无误后,在查询分析界面,切换到“索引视角”,将对应的自定义查询分析设置为默认查询分析:
单击右上角查询分析视角链接切换至索引视角,在展开的查询分析列表中找到目标规则,单击其操作列的设置默认查询分析即可;已设为默认的规则可单击取消默认规则进行取消。
-
设置默认自定义查询分析后的界面效果:
被设为默认的自定义查询分析名称前会自动添加[默认]标记,例如[默认]test_weight,在查询分析配置列表中可直观识别当前默认配置项。
词权重干预词典
业务场景不一样,query分词后的term其权重也会有所差异,会存在系统内置词典对词权重的设定与用户需求有差异的情况出现。因此,提供了干预功能,供用户自定义词权重。通过创建词权重干预词典,并在查询分析中生效该干预词典,就可以起到词权重的干预效果。具体词权重干预词典配置及原理,请点击此处。