Развертывание образа контейнера в экземпляре контейнера

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

Предварительные требования

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

  • Ресурс Azure для используемой службы ИИ Azure.

  • URL-адрес конечной точки ресурса службы ИИ Azure— ознакомьтесь с разделом "Как установить" конкретной службы для контейнера, чтобы узнать, откуда находится URL-адрес конечной точки в портал Azure и как выглядит правильный пример URL-адреса. Точный формат может меняться в зависимости от службы.

  • Ключ ресурса службы ИИ Azure — ключи находятся на странице Ключи для ресурса Azure. Вам потребуется только один из двух ключей. Ключ представляет собой строку, состоящую из 32 буквенно-цифровых символов.

  • Один контейнер служб ИИ Azure на локальном узле (компьютере). Убедитесь, что вы можете выполнить следующие действия.

    • Получить изображение с помощью команды docker pull.
    • Успешно запустить локальный контейнер со всеми необходимыми параметрами конфигурации с помощью команды docker run.
    • Вызвать конечную точку контейнера, получив ответ HTTP 2xx и JSON.

Все переменные в угловых скобках (<>) необходимо заменить собственными значениями. Эта замена включает угловые скобки.

Важно!

Контейнеру LUIS требуется файл модели .gz, который извлекается во время выполнения. Контейнер должен иметь возможность получить доступ к этому файлу модели путем подключения тома из экземпляра контейнера. Чтобы отправить файл модели, выполните следующие действия.

  1. Создание файлового ресурса Azure. Запишите имя учетной записи хранения Azure, ключ и имя общей папки, так как они понадобятся вам позже.
  2. Экспортируйте модель LUIS (упакованное приложение) с портала LUIS.
  3. На портале Azure перейдите на страницу Обзор ресурса учетной записи хранения и выберите Общие папки.
  4. Выберите имя общей папки, которую вы недавно создали, а затем щелкните Отправить. Затем отправьте упакованное приложение.

Создание ресурса экземпляра контейнера Azure с помощью портала Azure

  1. Перейдите на страницу Создание для Экземпляров контейнеров.

  2. На вкладке Основные сведения введите следующие данные.

    Параметр Значение
    Подписка Выберите свою подписку.
    Группа ресурсов Выберите доступную группу ресурсов или создайте новую, например cognitive-services.
    Имя контейнера Введите имя, например cognitive-container-instance. Имя должно быть записано в нижнем регистре.
    Расположение Выберите регион для развертывания.
    Тип образа Если образ контейнера хранится в реестре контейнеров, который не требует учетных данных, выберите Public. Если для доступа к образу контейнера требуются учетные данные, выберите Private. Сведения о том, является ли образ контейнера Public или Private (общедоступная предварительная версия), см. в разделе о репозиториях и образах контейнеров.
    Имя образа Введите расположение контейнера служб ИИ Azure. Расположение используется в качестве аргумента команды docker pull. Сведения о доступных именах образов и соответствующих репозиториях см. в разделе о репозиториях и образах контейнеров.

    Имя образа должно быть полным и состоять из трех частей: реестр контейнеров, репозиторий и имя образа: <container-registry>/<repository>/<image-name>.

    Ниже приведен пример, mcr.microsoft.com/azure-cognitive-services/keyphrase представляющий образ извлечения ключевых фраз в Реестре контейнеров Майкрософт в репозитории служб ИИ Azure. Другим примером является containerpreview.azurecr.io/microsoft/cognitive-services-speech-to-text образ преобразования речи в текст в репозитории Майкрософт реестра контейнеров предварительного просмотра контейнеров.
    Тип ОС Linux
    Размер Измените размер предлагаемых рекомендаций для конкретного контейнера ИИ Azure:
    2 ядра ЦП
    4 ГБ
  3. На вкладке Сеть введите следующие сведения.

    Параметр Значение
    порты; Установите для TCP-порта значение 5000. Предоставьте контейнер через порт 5000.
  4. На вкладке Дополнительно введите необходимые переменные среды для параметров выставления счетов в контейнере для ресурса экземпляра контейнера Azure:

    Ключ Значение
    ApiKey Копируется со страницы Ключи и конечная точка ресурса. Это буквенно-цифровая строка, состоящая из 32 символов без пробелов и дефисов, xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
    Billing URL-адрес конечной точки копируется со страницы Ключи и конечная точка ресурса.
    Eula accept
  5. Выберите Просмотр и создание

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

  7. После успешного развертывания ресурс готов

Использование экземпляра контейнера.

  1. Выберите Обзор и скопируйте IP-адрес. Это будет числовой IP-адрес, например 55.55.55.55.

  2. Откройте новую вкладку браузера и используйте IP-адрес, например http://<IP-address>:5000 (http://55.55.55.55:5000. Появится домашняя страница контейнера. Это означает, что контейнер работает.

    Домашняя страница контейнера

  3. Выберите Описание API службы, чтобы просмотреть страницу Swagger для контейнера.

  4. Выберите любой из интерфейсов API POST и нажмите кнопку Попробовать. Отображаются параметры, в том числе входные данные. Заполните параметры.

  5. Выберите Выполнить, чтобы отправить запрос в экземпляр контейнера.

    Вы успешно создали и использовали контейнеры ИИ Azure в экземпляре контейнеров Azure.