Azure搜索:我如何确保我的搜索结果中包含所有性别和多元化的组合?

Azure搜索:我如何确保我的搜索结果中包含所有性别和多元化的组合?,azure,azure-cognitive-search,Azure,Azure Cognitive Search,我面临一个法语网站的业务需求,该网站需要匹配单词的阳性/阴性/单数和复数版本。描述这一点最简单的方法是在这个问题中显示需求本身 请求1-搜索chien(阳性/单数) 搜索结果中应包含以下词语: 简(男性/单数) 简氏(阳性/复数) 简(女性/单数) chiennes(女性/复数) 当我研究这个需求时,我使用带有“fr.microsoft”分析器的AnalyzeAPI来快速测试各种场景 请求#1 { “analyzer”:“fr.microsoft”, “文本”:“简” } 响应#1 简

我面临一个法语网站的业务需求,该网站需要匹配单词的阳性/阴性/单数和复数版本。描述这一点最简单的方法是在这个问题中显示需求本身

请求1-搜索chien(阳性/单数) 搜索结果中应包含以下词语:

  • 简(男性/单数)
  • 简氏(阳性/复数)
  • 简(女性/单数)
  • chiennes(女性/复数)
当我研究这个需求时,我使用带有“fr.microsoft”分析器的AnalyzeAPI来快速测试各种场景

请求#1

{ “analyzer”:“fr.microsoft”, “文本”:“简” }

响应#1

请求#2

{ “analyzer”:“fr.microsoft”, “文本”:“简” }

响应#2

  • 简氏
请求#3

{ “analyzer”:“fr.microsoft”, “文本”:“chienne” }

响应#3

  • 切纳
  • 切恩
请求#4

{ “analyzer”:“fr.microsoft”, “文本”:“chiennes” }

响应#4

  • 切纳
  • 钱内斯
请求2-搜索选择器(阳性/单数) 搜索结果中应包含以下词语:

  • 选择器(阳性/单数)
  • 选择者(阳性/复数)
  • 电气(女性/单数)
  • 电气(女性/复数)
我再次使用带有“fr.microsoft”分析器的AnalyzeAPI来快速测试各种场景

请求#1

{ “analyzer”:“fr.microsoft”, “文本”:“选择器” }

响应#1

  • 讲演者
请求#2

{ “analyzer”:“fr.microsoft”, “文本”:“简” }

响应#2

  • 讲演者
  • 议员
请求#3

{ “analyzer”:“fr.microsoft”, “文本”:“电气” }

响应#3

  • 讲演者
  • 电气
请求#4

{ “analyzer”:“fr.microsoft”, “文本”:“电气设备” }

响应#4

  • 讲演者
我的印象和问题
  • 我最初的印象是,搜索“chiennes”与包含“chienne”的文档不匹配,因为“chiennes”只分为以下几个部分:chien,chienner,chiennes

  • 这个印象正确吗?或者搜索“chiennes”仍然会返回一个包含“chienne”的文档,因为搜索词“chiennes”被标记为chien,chienner,chiennes,而文档本身将“chienne”标记为chien,chienner,chienne,所以最终会有一个匹配。注意,我将我认为匹配的搜索和索引标记斜体化

  • 请注意,上述两个示例要求可能实际上是我今天早些时候发布的femme vs femmes S.O.问题的重复:


需求示例3-搜索近战 搜索结果中应包含以下词语:

  • 混战
  • MÊLEE
  • 米莱
  • 米兰特
  • 混战
  • mêlé
  • 梅勒
请求#1

{ “analyzer”:“fr.microsoft”, “文本”:“近战” }

响应#1

  • 混战
请求#2

{ “analyzer”:“fr.microsoft”, “文本”:“MÊLEE” }

响应#2

  • 混战
  • mêlee
请求#3

{ “analyzer”:“fr.microsoft”, “文本”:“Mêlée” }

响应#3

  • 梅勒
  • 梅勒
  • 梅勒
  • 梅尔
  • 混战
  • mêlee
请求#3

{ “analyzer”:“fr.microsoft”, “文本”:“mêlant” }

响应#3

  • 梅勒
  • 梅勒
  • 梅兰特
  • 米兰特
在本例中,我可以继续分析API调用,但这里我可以与现有网站(我们需要复制其功能)和新网站进行比较。现有的网站允许我搜索“近战”,它会找到带有“mêlant”的文档

但是根据Analyze API的结果,我可以看到搜索“melee”不会找到“mêlant”,因为“melee”只会标记为“melee”,而“mêlant”只会标记为meler、mêler、melant和mêlant。这里没有对手

我的印象和问题
  • 我使用谷歌翻译,可以看到“混战”的意思是“混战”或“打架”
  • 我使用谷歌翻译,可以看出“mêlant”的意思是“混合”
  • 这就是为什么搜索“近战”与搜索“mêlant”不匹配的原因吗
  • 如果符合业务需求,我有哪些选择?我必须使用同义词吗?如果没有,我的选择是什么
  • 请注意,现有网站使用SOLR,我们无权访问任何现有代码或SOLR的使用方式。我们不得不对一切进行逆向工程
  • 我成功地掌握了SOLR配置,看起来这就是他们当前的法语SOLR配置的设置方式。看起来他们用的是某种字典



请告知。

我想我回答了你另一个帖子中的第一个和第二个要求:,如果我遗漏了什么,请告诉我

关于第三个要求,我怀疑发生的情况是,您所指的网站正在使用积极的阻止策略。是我