我使用的是Solr 7.6,文档结构如下:
{
"source_ln":"en",
"source_text":"the sky is blue",
"target_ln":"hi",
"target_text":"आसमान नीला है",
},
{
"source_ln":"en",
"source_text":"the sky is also called the celestial sphere",
"target_ln":"hi",
"target_text":"आकाश को आकाशीय क्षेत्र भी कहा जाता है",
}所有字段都是使用StandardTokenizerFactory标记器定义的。
当我查询“source_text”:“天空”时,
结果集应该只包含第一个文档。
在第二个文档中,字段“source_text”:“天空也称为天球”包含8个术语,而查询字段“source_text”:“天空”仅包含2个术语,因此不满足至少50%的匹配条件,因此第二个文档将不在结果集中。
有没有办法获得匹配至少50%的查询字段术语/标记的文档?
提前谢谢。
发布于 2020-01-10 21:18:33
您可以将请求处理程序设置为使用(e)dismax查询解析器,例如使用defTypeparameter,例如。?q=...&defType=dismax。
使用dismax解析器,只需设置mm=50%,就可以根据需要使用mm (Minimum Should Match)参数。
发布于 2020-01-10 17:17:41
您可以通过执行以下步骤来实现这些功能。
https://stackoverflow.com/questions/59677988
复制相似问题