-1

파이썬을 사용하여 Retreive-And-Rank 서비스에 액세스하고 있습니다. 지금까지 구성 및 문서를 업로드하고 관련성 파일에서 내 순위를 교육했습니다. 내가 남긴 것 중 하나는 내 R-A-R 객체의 "순위"메소드에 일부 쿼리 결과 (Solr?)를 전달하는 것입니다.파이썬 검색 및 순위 지정 : 메소드를 평가하기 위해 어떤 종류의 "응답 데이터"를 전달합니까?

내 질문 : 그 결과는 정확히 무엇이며 어떤 형식입니까? 그리고 어떻게 접근 할 수 있습니까?

answer_data = pysolr.search(query) 
rrv1.rank(<my_ranker_id>, answer_data, top_answers=10) 

는 IBM이에 무엇 유사한이기 때문에이 일을 해요 :

는 지금은 다음 쿼리를 검색 및 반환 된 결과를 사용하여 get_pysolr_client() 메소드를 사용하여 PySolr 객체에 접근하고 rank() 메서드는 Java example에 있습니다. 하지만 오류 메시지가 나타납니다.

AttributeError: 'Results' object has no attribute 'read' 

PySolr이 "결과"개체를 반환하기 때문에이 문제가 발생합니다.

작동 시키려면 rank() 메서드 대신 전달해야하는 것은 무엇입니까? 다음과 같이

순위 방법에 대한 Retrieve_and_Rank 사양이고, 나는 answer_data는 "파일과 같은"개체 있어야하고 있다고 생각 :

def rank(self, ranker_id, answer_data, top_answers=10) 

답변

0

한 가지 해결 방법은 pysolr의 _send_request 메소드를 호출하는 것입니다

results = pysolr._send_request("GET", path="/fcselect?q=%s&ranker_id=%s&wt=json" % 
           (query_string, ranker_id)) 
for doc in json.loads(results)["response"]["docs"]: 
    print doc 

rishavc에게 dW Answers에게 감사드립니다.