Руководство. Добавление Поиск с использованием ИИ Azure в веб-приложение C# на Контейнеры приложений Azure

Note

Поиск с использованием ИИ Azure доступна через портал Azure, REST API и Azure SDKs. Он также лежит в основе Foundry IQ — управляемого слоя знаний, который преобразует корпоративный контент в многократно используемые базы знаний с учетом разрешений доступа для агентов на портале Microsoft Foundry.

В этом руководстве создается веб-сайт, который выполняет поиск по каталогу книг и развертывает веб-сайт в Контейнеры приложений Azure. Развертывание использует интерфейс командной строкиazd разработчика Azure и управляемое удостоверение в качестве метода проверки подлинности по умолчанию для Поиск с использованием ИИ Azure.

Изучив это руководство, вы:

  • Развертывание Поиск с использованием ИИ Azure и автоматическое заполнение индекса с помощью интерфейса командной строки разработчика Azure.
  • Интеграция поисковых запросов, предложений, аспектов, разбиения на страницы и поиска документов в приложении C#.
  • Разверните приложение для Контейнеры приложений Azure с управляемым удостоверением в качестве метода проверки подлинности по умолчанию.

Как работает пример?

Этот пример веб-сайта предоставляет доступ к каталогу, содержащему 10 000 книг. Вы можете выполнить поиск по каталогу, введя текст в строке поиска. При вводе текста веб-сайт использует функцию предложения индекса поиска для автозавершения текста.

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

Снимок экрана: пример приложения в окне браузера.

Возможности поиска включают в себя:

  • Поиск — предоставляет функции поиска для приложения.
  • Предложение . Предоставляет предложения в качестве типов пользователей в строке поиска.
  • Аспекты и фильтры — предоставляет фасетную структуру навигации, которая фильтрует по автору или языку.
  • Результаты с разбивкой на страницы — предоставляет элементы управления разбиением на страницы для прокрутки результатов.
  • Поиск документа — ищет документ по идентификатору, чтобы получить все его содержимое для страницы сведений.

Какова структура примера?

Пример кода включает следующие компоненты:

Приложение Цель расположение репозитория GitHub
client Приложение React (уровень презентации) для отображения книг с помощью поиска. Он вызывает API. /azure-search-static-web-app/client
api API Функции Azure C# (бизнес-уровень), размещенный в контейнере на Контейнеры приложений Azure, который вызывает API Поиск с использованием ИИ Azure с пакетом SDK .NET. /azure-search-static-web-app/api
bulk-insert .NET проект, который создает индекс и загружает документы. Развертывание azd выполняется автоматически с помощью postprovision перехватчика. /azure-search-static-web-app/bulk-insert
infra Bicep инфраструктуру, используемую azd для развертывания Поиск с использованием ИИ Azure, Контейнеры приложений Azure и вспомогательных ресурсов. Azure-Samples/azure-search-static-web-app

Настройка среды разработки

Установите следующее программное обеспечение для локальной среды разработки. Команда azd up подготавливает все Azure ресурсы, в том числе Поиск с использованием ИИ Azure, поэтому вам не нужно создавать их заранее.

В этом руководстве не выполняется api Функции Azure локально. Если вы хотите запустить его локально, установите Функции Azure Core Tools.

Клонирование примера поиска с помощью Git

Пример можно развернуть из локального клона. Команда azd up считывает файлы приложения и инфраструктуры из локального репозитория, создает контейнеры, подготавливает Azure ресурсы и развертывает клиент и API для Контейнеры приложений Azure.

  1. В терминале Bash клонируйте пример приложения на локальный компьютер.

    git clone https://github.com/Azure-Samples/azure-search-static-web-app.git
    
  2. В том же терминале Bash перейдите в каталог репозитория для этого примера поиска.

    cd azure-search-static-web-app
    
  3. Используйте команду Visual Studio Code, code .чтобы открыть репозиторий. Если иное не указано, остальные задачи выполняются в Visual Studio Code.

    code .
    

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