Использование more_like_this для отдельных полей - PullRequest
0 голосов
/ 14 мая 2019

У меня есть запрос эластичного поиска, который дает мне оценку документа на основе всех полей, которые я включаю.Мне нужно изменить его так, чтобы я мог получить оценку каждого поля, не смешивая их, чтобы я мог получить оценку каждого поля и сравнить, что более актуально.Я думаю, мне нужно сделать несколько вложенных more_like_this, но я не знаю, как на самом деле.Кроме того, я получаю только 10 результатов, и мне нужно больше.Я пытался использовать размер, но он не работает.Спасибо за вашу помощь.

def search_similar (self, id_caso):
    return self._es_buscar({ "size": 100, "query": { "more_like_this": {
        "like": [ { "_id": id_caso} ],
        "fields": self.conf.get('campos'),
        "max_query_terms": 100,
        "min_term_freq": 0,
        "minimum_should_match": 0
} } })

def _es_buscar (self, query):
    res = self._es.search(index="historiales",
                          doc_type="historial",
                          body=query)
    return [{ 'id': r['_id'], 'doc': r['_source'], 'score' : r['_score']}
            for r in res['hits']['hits']]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...