Elasticsearch - Как объединить предложения терминов из нескольких полей? - PullRequest
0 голосов
/ 14 июня 2019

Документация для подсказчиков терминов излагает основы термина "подсказчик терминов", но меня удивляет, как я могу найти предложения из нескольких полей и объединить их. Я, вероятно, могу придумать какую-то реализацию после этого, но мне интересно, есть ли какие-то настройки, которые мне не хватает.

Например, допустим, я хочу получить предложения из трех разных полей

GET product-search-product/_search
{
  "suggest": {
    "text": "som typu here",
    "my-suggest-1": {
      "term": {
        "size": 1,
        "max_edits": 1,
        "prefix_length": 3,
        "field": "field_one"
      }
    },
    "my-suggest-2": {
      "term": {
        "size": 1,
        "max_edits": 1,
        "prefix_length": 3,
        "field": "field_two"
      }
    },
    "my-suggest-3": {
      "term": {
        "size": 1,
        "max_edits": 1,
        "prefix_length": 3,
        "field": "field_three"
      }
    }
  }
}

Это возвращает результаты, которые я могу использовать, но я должен выяснить, в каком поле было «лучшее» предложение.

"suggest": {
"my-suggest-1": [
  {
    "text": "som",
    ...
    "options": [
      {
        "text": "somi"
        ...
      }
    ]
  },
  {
    "text": "typu",
    ...
    "options": [
      {
        "text": "typo"
        ...
      }
    ]
  },
  {
    "text": "here",
    ...
    "options": []
  }
],
"my-suggest-2": [
  {
    "text": "som",
    ...
    "options": [
      {
        "text": "some"
        ...
      }
    ]
  },
  {
    "text": "typu",
    ...
    "options": []
  },
  {
    "text": "here",
    ...
    "options": []
  }
],
"my-suggest-3": [
  {
    "text": "som",
    ...
    "options": []
  },
  {
    "text": "typu",
    ...
    "options": [
      {
        "text": "typa"
        ...
      }
    ]
  },
  {
    "text": "here",
    ...
    "options": []
  }
]

}

Мне кажется, что мне нужно что-то реализовать, чтобы определить, в какой области были предложены лучшие предложения. Нет ли способа объединить их в подсказчике, чтобы он сделал это для меня?

1 Ответ

0 голосов
/ 28 июня 2019

Подсказка фразы была подходящей для моего случая, и с предложением фразы существует генераторы кандидатов , которые, кажется, решают мою проблему.

...