Ich experimentiere mit Azure Search. Ich habe einen Index mit einem Edm.Double
Feld. Ich erstelle ein Bewertungsprofil, um dieses Feld über die Azure Search-REST-API zu erweitern. Derzeit habe ich:Wie ändere ich die Reichweite eines Feldes?
"scoringProfiles": [
{
"name":"myProfile",
"functions": [
{
"type":"magnitude",
"fieldName":"cost",
"boost": 2.5,
"magnitude": {
"boostingRangeStart":0,
"boostingRangeEnd":50
}
}
]
}
]
Meine Herausforderung ist, ich weiß wirklich nicht, was die Reichweite meiner Daten sein. Ich möchte immer nur das Feld cost
anheben. In C# weiß ich, dass ich die Werte Double.MinValue
und Double.MaxValue
verwenden könnte, um meine Reichweite zu erfassen. Ich bin mir jedoch nicht sicher, ob Azure Search solche Konstanten zur Verfügung hat. Ich bin mir auch nicht sicher, ob ich negative Zahlen in meinem Scoring-Profilbereich verwenden kann.
Gibt es eine Möglichkeit, ein Scoring-Profil über einen unbekannten Bereich von Werten zu definieren?
danke für Ihre Antwort. Ich habe versucht das 'constantBoostBeyondRange'-Flag, aber ich verstehe es nicht. Sagen wir, ich setze diese Flagge auf "wahr" und ich habe Gegenstände mit Kosten von 1,00, 3,00, 5,00, 7,00 und 10,00. Nun tu so, als wäre mein 'boostingRangeStart' 3.00 und mein' boostingRangeEnd' ist 7.00. Ich gehe davon aus, dass die Ergebnisse mit Kosten von 3,00 $, 5,00 $ und 7,00 $ erhöht werden. Aber was ist mit den Ergebnissen mit den Kosten von 1,00 und 10,00? Werden sie beim Boosten ignoriert? Werden $ 1,00 und $ 10,00 immer noch erhöht? Ist der eine mehr aufgeladen als der andere? Werden die $ 10,00 erhöht, aber nicht die $ 1,00? –
Kurz gesagt, ich verstehe nicht, was die Auswirkungen der "constantBoostBeyondRange" -Flag für was ist oder was es tut. Danke für Ihre Hilfe. –
[Aus den Dokumenten] (https://msdn.microsoft.com/en-us/library/azure/dn798928.aspx): * Wenn der Wert auf "true" gesetzt ist, wird der volle Boost weiterhin auf Dokumente angewendet, die einen Wert haben für das Zielfeld, das höher als das obere Ende des Bereichs ist. Wenn false, wird der Boost dieser Funktion nicht auf Dokumente mit einem Wert für das Zielfeld angewendet, der außerhalb des Bereichs liegt. * –