Запрос данных в индексе поиска ИИ Azure
Индекс и структура запросов тесно взаимосвязаны. После создания индекса можно выполнять запросы. Важно понимать, что схема индекса определяет тип запросов, на которые можно ответить.
Запросы поиска ИИ Azure могут быть отправлены в виде ЗАПРОСА HTTP или REST API, при этом ответ возвращается в формате JSON. Запросы могут указывать, какие поля используются при поиске, и возвращают данные о том, как формируются результаты поиска и как следует отфильтровать или отсортировать результаты. Запрос, который не указывает поле для поиска, будет выполняться относительно всех полей, доступных для поиска в индексе.
Поиск ИИ Azure поддерживает два типа синтаксиса: простой и полный Lucene. Во всех общих сценариях запросов используется простой синтаксис, а в более сложных случаях следует применять полный синтаксис Lucene.
Простые запросы
Запрос представляет собой список или слова (условия поиска) и операторы запроса (простые или полные) того, что вы хотите получить в результирующем наборе. Давайте посмотрим, из каких компонентов состоит поисковый запрос. Рассмотрим этот пример простого поиска:
coffee (-"busy" + "wifi")
Этот запрос пытается найти содержимое о кофе, исключая слово "busy" и включая слово "wifi".
Разбиение запроса на компоненты состоит из терминов поиска (coffee
), плюс две подробные фразы, "busy"
а также "wifi"
операторы (, а также операторы (-
, +
и ( )
). Условия поиска могут быть сопоставлены в индексе поиска в любом порядке или расположении в содержимом. Для двух фраз будет выполняться поиск точного соответствия, поэтому wi-fi
не будет в результатах. Наконец, запрос может содержать несколько операторов. В приведенном выше примере оператор -
сообщает поисковой системе, что этих фраз НЕ должно быть в результатах. Скобки объединяют условия и задают их приоритет.
По умолчанию поисковая система будет искать совпадение с любыми условиями запроса. Содержимое, содержащее только coffee
, будет считаться совпадением. В этом примере использование -"busy"
может привести к тому, что в результаты поиска войдет все содержимое, в которых нет точной строки "busy".
Простой синтаксис запросов в поиске ИИ Azure исключает некоторые из более сложных функций полного синтаксиса запросов Lucene, и это синтаксис поиска по умолчанию для запросов.
Дополнительные сведения о синтаксисе запросов см. в документации.