Поделиться через


Краткое руководство по созданию индекса службы "Поиск Azure" на портале Azure

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

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

Примечание.

Мастер импорта данных включает параметры OCR, перевода текста и других обогащений ИИ, которые не рассматриваются в этом кратком руководстве. Аналогичное пошаговое руководство по применению ИИ см. в кратком руководстве по созданию набора навыков в портал Azure.

Необходимые компоненты

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

Проверка доступного пространства

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

Перейдите на вкладку "Обзор > использования" для службы, чтобы узнать, сколько индексаторов, индексаторов и источников данных уже есть.

Снимок экрана: страница

Запуск мастера

  1. Войдите в портал Azure с помощью учетной записи Azure и перейдите к служба Azure AI.

  2. На странице "Обзор" выберите "Импорт данных", чтобы запустить мастер.

    Снимок экрана: открытие мастера импорта данных в портал Azure.

Создание и загрузка индекса

В этом разделе создайте и загрузите индекс в четырех шагах.

Подключение к источникам данных

Мастер создает подключение источника данных к примеру данных, размещенных корпорацией Майкрософт в Azure Cosmos DB. Этот пример данных извлекается через общедоступную конечную точку. Для выполнения этого краткого руководства не требуется собственная учетная запись Azure Cosmos DB или исходные файлы.

  1. В раскрывающемся списке "Источник данных" разверните список "Подключение к данным" и выберите "Примеры".

  2. В списке встроенных примеров выберите hotels-sample.

    Снимок экрана, на котором показано, как выбрать источник данных из примера отелей в мастере импорта данных.

  3. Нажмите кнопку "Далее". Чтобы продолжить, добавьте когнитивные навыки (необязательно ).

Пропуск конфигурации для когнитивных навыков

Мастер импорта данных поддерживает создание набора навыков и обогащения ИИ в индексировании.

  1. В этом кратком руководстве игнорируйте параметры конфигурации обогащения ИИ на вкладке "Добавление когнитивных навыков ".

  2. Выберите "Пропустить": настройте целевой индекс для продолжения.

    Снимок экрана: переход на вкладку

Совет

Заинтересованы в обогащении ИИ? В этом кратком руководстве показано, как создать набор навыков в портал Azure

Настройка индекса

Мастер создает схему для встроенного индекса hotels-sample. Выполните следующие действия, чтобы настроить индекс:

  1. Примите системные значения для имени индекса (hotels-sample-index) и поля Key (HotelId).

  2. Примите системные значения для всех атрибутов поля.

  3. Нажмите кнопку Далее: создайте индексатор для продолжения.

Снимок экрана, на котором показано определение созданного индекса для источника данных из примеров отелей в мастере импорта данных.

Как минимум, индексу требуется имя индекса и коллекция полей. Одно поле должно быть помечено как ключ документа для уникальной идентификации каждого документа. Значение всегда является строкой. Мастер сканирует уникальные строковые поля и выбирает один для ключа.

Каждое поле имеет имя, тип данных и атрибуты , которые управляют использованием поля в индексе поиска. Флажки позволяют включить или отключить следующие атрибуты:

  • Получение: поля, возвращаемые в ответе запроса.
  • Фильтруемый: поля, принимаюющие выражение фильтра.
  • Сортировка: поля, принимаюющие выражение orderby.
  • Аспект: поля, используемые в фасетной структуре навигации.
  • Доступный для поиска: поля, используемые в полнотекстовом поиске. Строки доступны для поиска. Поиск по числовым и логическим полям часто исключается.

Строки атрибутируются как извлекаемые и доступные для поиска. Целые числа атрибутируются как извлекаемые, фильтруемые, сортируемые и фасетные.

Атрибуты влияют на хранилище. Фильтруемые поля используют дополнительное хранилище, но не извлекаемые . Дополнительные сведения см. в примере , демонстрирующего последствия хранения атрибутов и предлагаемых средств.

Если требуется автозавершение или предлагаемые запросы, укажите анализаторы языка или предложения.

Настройка и выполнение индексатора

Последний шаг настраивает и запускает индексатор. Этот объект определяет исполняемый процесс. Источник данных, индекс и индексатор создаются на этом шаге.

  1. Примите системное значение для имени индексатора (hotels-sample-indexer).

  2. В этом кратком руководстве используйте параметр по умолчанию для запуска индексатора сразу же. Размещенные данные являются статическими, поэтому для него не включено отслеживание изменений.

  3. Нажмите кнопку "Отправить ", чтобы создать и одновременно запустить индексатор.

    Снимок экрана, на котором показано, как настроить индексатор для источника данных из примеров отелей в мастере импорта данных.

Мониторинг хода выполнения индексатора

Вы можете отслеживать создание индексатора или индекса на портале. Страница "Обзор службы" содержит ссылки на ресурсы, созданные в служба ИИ Azure.

  1. Слева выберите индексаторы.

    Снимок экрана: создание индексатора в портал Azure.

    Для обновления результатов страницы в портал Azure может потребоваться несколько минут. В списке должен отображаться только что созданный индексатор с состоянием " Выполняется" или "Успешно". В списке также отображается количество индексированных документов.

Проверка результатов индекса поиска

  1. Слева выберите индексы.

  2. Выберите hotels-sample-index.

    Дождитесь обновления страницы портал Azure. Индекс должен отображаться с количеством документов и размером хранилища.

    Снимок экрана: список индексов на панели мониторинга azure AI служба  в портал Azure.

  3. Перейдите на вкладку "Поля", чтобы просмотреть схему индекса.

    Проверьте, какие поля можно отфильтровать или сортировать, чтобы узнать, какие запросы следует записывать.

    Снимок экрана: определение схемы для индекса в служба  ИИ Azure в портал Azure.

Добавление или изменение полей

На вкладке "Поля" можно создать новое поле с помощью поля Add с именем, поддерживаемым типом данных и атрибутами.

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

Чтобы четко понять, что можно и не удается изменить во время проектирования индекса, просмотрите параметры определения индекса. Серые параметры в списке полей указывают на значения, которые нельзя изменить или удалить.

Подача запросов с использованием обозревателя поиска

Теперь у вас есть индекс поиска, который можно запросить с помощью обозревателя поиска. Обозреватель поиска отправляет вызовы REST, соответствующие REST API search POST. Это средство поддерживает простой синтаксис запросов и полный синтаксис запроса Lucene.

  1. На вкладке обозревателя поиска введите текст для поиска.

    Снимок экрана, на котором показано, как ввести и запустить запрос в средстве обозревателя поиска.

  2. Используйте мини-карту, чтобы быстро перейти к невидимым областям выходных данных.

    Снимок экрана: длинные результаты запроса в средстве обозревателя поиска и мини-карте.

  3. Чтобы указать синтаксис, переключитесь в представление JSON.

    Снимок экрана: селектор представления JSON.

Примеры запросов для примера индекса отелей

В следующих примерах предполагается представление JSON и версия REST API 2024-05-01-preview.

Совет

Теперь представление JSON поддерживает intellisense для завершения имени параметра. Поместите курсор в представление JSON и введите пробел, чтобы отобразить список всех параметров запроса, или введите одну букву, например "s", чтобы отобразить только параметры запроса, начиная с "s". Intellisense не исключает недопустимые параметры, поэтому используйте лучшее решение.

Примеры выражений фильтрации

Парковка, теги, дата обновления, оценка и расположение можно фильтровать.

{
    "search": "beach OR spa",
    "select": "HotelId, HotelName, Description, Rating",
    "count": true,
    "top": 10,
    "filter": "Rating gt 4"
}

Логические фильтры предполагают значение true по умолчанию.

{
    "search": "beach OR spa",
    "select": "HotelId, HotelName, Description, Rating",
    "count": true,
    "top": 10,
    "filter": "ParkingIncluded"
}

Геопространственный поиск основан на фильтрах. Функция geo.distance фильтрует все результаты для позиционных данных на основе указанных Location и geography'POINT координат. Запрос ищет отели, которые находятся в пределах 5 километров от координат широты -122.12 47.67долготы, который является "Редмонд, Вашингтон, США". В запросе отображается общее количество совпадений &$count=true с именами отелей и расположениями адресов.

{
    "search": "*",
    "select": "HotelName, Address/City, Address/StateProvince",
    "count": true,
    "top": 10,
    "filter": "geo.distance(Location, geography'POINT(-122.12 47.67)') le 5"
}

Полные примеры синтаксиса Lucene

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

{
    "queryType": "full",
    "search": "seatle~",
    "select": "HotelId, HotelName,Address/City, Address/StateProvince",
    "count": true
}

По умолчанию термины запроса с ошибкой, такие как seatle Seattle сбой возврата совпадений в обычном поиске. Параметр queryType=full вызывает полный синтаксический анализатор запросов Lucene, который поддерживает операнду тильды ~ . При наличии этих параметров запрос выполняет нечеткий поиск указанного ключевого слова. Запрос ищет соответствующие результаты вместе с результатами, которые похожи на не точные совпадения с ключевым словом.

Выполните минуту, чтобы попробовать несколько из этих примеров запросов для индекса. Дополнительные сведения о запросах см. в статье "Запросы" в службе "Поиск ИИ Azure".

Очистка ресурсов

При работе с собственной подпиской рекомендуется определить, нужны ли созданные ресурсы. Ресурсы, которые продолжат работать, могут быть платными. Вы можете удалить ресурсы по отдельности либо удалить всю группу ресурсов.

Ресурсы службы можно найти и управлять ими в портал Azure в разделе "Все ресурсы" или "Группы ресурсов" в левой области.

Если вы используете бесплатную службу, помните, что ограничение равно трем индексам, индексаторам и источникам данных. Вы можете удалить отдельные элементы в портал Azure, чтобы остаться в пределах ограничения.

Следующие шаги

Попробуйте запустить мастер портал Azure, чтобы создать готовое веб-приложение, которое выполняется в браузере. Используйте этот мастер для небольшого индекса, созданного в этом кратком руководстве, или используйте один из встроенных наборов данных для более расширенного поиска.