我在 Azure 搜索中使用 Hit Highlighting 功能,并注意到它与文档的行为方式存在差异。在文档中它说,当您使用命中突出显示时,它将返回带有突出显示的字段片段,但它始终返回整个字段(具有适当的突出显示)。
有没有办法让 Azure 搜索只返回一个包含突出显示的片段(比如大约 200 个字符)?
我在 Azure 搜索中使用 Hit Highlighting 功能,并注意到它与文档的行为方式存在差异。在文档中它说,当您使用命中突出显示时,它将返回带有突出显示的字段片段,但它始终返回整个字段(具有适当的突出显示)。
有没有办法让 Azure 搜索只返回一个包含突出显示的片段(比如大约 200 个字符)?
目前,答案是否定的,你不能。该字段根据(英语)句子规则中断,即。它在“。”,“!”,“?”上中断。
另请参阅此问题以获取有关中断的示例以及与分隔符相关的更多信息。
根据字段的性质,您也许可以添加上述分隔符之一来“模拟”您想要完成的任务(如 Nate Ko 所建议的那样)。
除了 Nate 所说的内容之外,我还想提出其他建议。当您查看文档响应时,还要查看结果的 Highlights 部分(与 Document 相对)。例如,您当前可能通过检索以下内容来获取字段结果:
结果[i].Document.DESCRIPTION
如果为该字段找到了一个亮点,则会在此处找到剪辑:
结果[i].Highlights.DESCRIPTION
我喜欢做的是首先检查是否有有效的 Highlight ,如果有则显示它。如果没有,我会显示实际的字段内容。
利亚姆
我们最近引入了一项更改,可提高荧光笔在大字段和 NLP 体验上的性能。更改的一个副作用是新的荧光笔会根据句子生成片段,从而破坏“。”上的文本字段。(时期)。
解决此问题的一种方法是将“。”放在该字段中。我们正在努力强制执行代码段大小,并在可用时通知您。