使用Azure搜索,我很难将模糊搜索和自定义评分配置文件结合起来。
如果我在没有模糊的情况下搜索,就可以正确地计算分数。如果我在搜索查询中添加了模糊性,那么我的自定义规则似乎就不适用了。
示例场景(api-version=2015-02-28)
创建新索引(C# SDK1.1):
Name = "SomeName",
Fields = new[]
{
new Field("Title", DataType.String) { IsSearchable = true},
new Field("Author", DataType.String) { IsSearchable = true}
}
ScoringProfiles = new List<ScoringProfile>
{
new ScoringProfile()
{
Name = "SomeScoringProfile",
TextWeights = new TextWeights()
{
Weights = new Dictionary<string, double>
{
["Title"] = 200,
["Author"] = 10
}
}
}
}查询(在Azure中,我使用Lucene语法)我创建了两个文档,一个是Title=矩阵,另一个是Author=矩阵。
无模糊查询
&queryType=full&search=Title:Matrix OR Author:Matrix&scoringProfile=SomeScoringProfile
评分结果:带标题的文档: 0.11,文献作者: 0.011
带有模糊性的质疑
&queryType=full&search=Title:Matrix~2 OR Author:Matrix~2&scoringProfile=SomeScoringProfile
评分结果:带标题的文档: 0.15,与作者的文档: 0.15 (相同!)
你能帮我找出这个例子有什么问题吗?这个功能能用不同的技术来实现吗?
发布于 2016-06-01 17:14:18
不幸的是,在与你进行了一次离线交流之后,我证实了在模糊搜索中应用增强权重有一个错误。我会尽快更新线程,只要我们有一个修复。
给您带来的不便,我深表歉意。谢谢你的详细报道。
内特
https://stackoverflow.com/questions/37207900
复制相似问题