Поиск с несколькими условиями

Добрый день, необходимо осуществить поиск по фразе, если ничего не найдено, то c оператором сопоставления кворума и так далее до поиска всех слов в документах. Для каждого типа поиска необходимо установить весовой коэффициент. Возможно ли это сделать одним запросом?

нет так не получится сделать - у нас есть boost modifier но он только работает с индивидуальными термами - если бы работал с группами то можно было бы написать

("test me up to here")^100 | ("test me up to here"/0.5)^10 | ("test me up to here"/1)

но с группами или внутри комплексных выражений этот оператор не работает и других вариантов объединить несколько условий или скомбинировать с разными весами пока нет

Окей, а если что-то типа такого

{
“index”: “docs_120g”,
“query”: {
“match_phrase”: { “_all”: “ST.PETERSBURG INDIA CHINA SERV” },
“match”: { “_all”: “ST.PETERSBURG INDIA CHINA SERV” },
“match”: { “_all”: “ST.PETERSBURG INDIA CHINA SERV” },
“index_exact_words”: 1
}
}

В данном примере ошибка в последнем слове (должно быть service), поэтому по фразе ничего не находится.

Вообще, есть возможность настроить какой-то пайплайн или необходимо сделать несколько запросов, а потом анализировать ответы уже на стороне ПО?

Да, нужно решать в приложении устраивает ли предыдущий результат поиска. Если нет, то модифицировать, ослаблять условия и т.п. и делать ещё одну попытку.