Lassen Sie sich sagen, dass wir einen Index mit zwei Objekten haben:Objekt mit längerem Feld gegen ein Objekt mit einem kurzen Feld zurückgegeben wird
{
"name": "iPhone 6s Plus big screen, super fast, ultra responsive, blah blah"
}
und:
{
"name" : "iPhone 6s Plus"
}
Nun, wenn ich für suchen iPhone 6s Plus, gibt es das erste Objekt zurück, das keinen Sinn ergibt, da das erste Objekt mehr Wörter (oder Rauschen) als das zweite Objekt für die gegebene Abfrage enthält. Mit anderen Worten, ein Begriff, der in einem Kurznamenfeld erscheint, sollte mehr Rangpunkte tragen als der gleiche Begriff in einem Langnamenfeld.
Algolia verwendet einen TF/IDF-Algorithmus, der die Feldlängennorm berücksichtigt, also das zweite Objekt sollte eine höhere Punktzahl als das erste haben.
Warum hat das erste Objekt also eine höhere Punktzahl als das zweite? Gibt es irgendwelche Einstellungsoptionen, die ich vermisse?
Algolia verwendet einen Tiebreaking-Algorithmus mit mehreren verschiedenen Kriterien. Weitere Informationen finden Sie hier: https://www.algolia.com/doc/guides/relectivity/ranking/#ranking-formula-a-tie-breaking-algorithmus –
@JoshDzielak danke dafür! Ich habe eine Antwort geschrieben und kann sie gerne bearbeiten, da sie anderen helfen kann! Vielen Dank! – flienky