Ich greife mit Python auf den Retreive-And-Rank-Dienst zu. Bisher habe ich meine Konfiguration und Dokumente hochgeladen und meinen Ranker in der Relevanzdatei trainiert. Alles, was übrig bleibt, ist vermutlich, einige Abfrageergebnisse (von Solr?) In die "Rang" -Methode meines R-A-R-Objekts zu übertragen.Retrieve and Rank Python: Welche Art von "Antwortdaten" wird an die Rank-Methode übergeben?
Meine Frage: Was genau sind diese Ergebnisse, und in welcher Form kommen sie? Und wie greife ich darauf zu?
Im Moment bin ich Zugriff auf das PySolr Objekt die get_pysolr_client() Methode verwendet wird, dann eine Abfrage suchen und mit den zurückgegebenen Ergebnisse:
answer_data = pysolr.search(query)
rrv1.rank(<my_ranker_id>, answer_data, top_answers=10)
Ich tue dies, weil es analog ist zu dem, was IBM hat in der rank() Methode in der Java example. Aber ich erhalte die Fehlermeldung:
Ich bekomme dies, weil PySolr ein "Ergebnisse" -Objekt zurückgibt.
Was sollte ich stattdessen an die rank() -Methode übergeben, damit es funktioniert?
Die Retrieve_and_Rank Spezifikation für den Rang Methode ist wie folgt, und ich denke, dass answer_data eine „Datei-like“ Objekt sein soll:
def rank(self, ranker_id, answer_data, top_answers=10)