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


Руководство по развертыванию корпоративного веб-приложения чата

Внимание

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

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

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

Последовательность действий будет следующей:

  • Настройте ресурсы.
  • Добавьте данные.
  • Проверьте модель с данными.
  • Разверните веб-приложение.

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

  • Подписка Azure — создайте бесплатную учетную запись.

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

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

  • Локальная копия данных продукта. Репозиторий Azure-Samples/rag-data-openai-python-promptflow на GitHub содержит примеры сведений о розничном продукте, которые относятся к этому сценарию руководства. В частности, product_info_11.md файл содержит сведения о продукте о походной обуви TrailWalker, которая относится к этому примеру руководства. Скачайте пример данных о розничных продуктах Contoso Trek в ZIP-файле на локальный компьютер.

  • Поставщик ресурсов Microsoft.Web , зарегистрированный в выбранной подписке, чтобы иметь возможность развертывания в веб-приложении. Дополнительные сведения о регистрации предоставления ресурса см. в разделе "Регистрация поставщика ресурсов".

  • Необходимые разрешения для добавления назначений ролей в подписку Azure. Предоставление разрешений по назначению ролей разрешено только владельцем определенных ресурсов Azure.

Портал Azure AI Foundry и портал Azure

В этом руководстве вы выполняете некоторые задачи на портале Azure AI Foundry и некоторые задачи в портал Azure.

Портал Azure AI Foundry — это веб-среда для создания, обучения и развертывания моделей ИИ. В качестве разработчика вы создадите и развернете веб-приложение чата.

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

Настройка ресурсов

Внимание

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

Чтобы ресурсы работали правильно в веб-приложении, необходимо настроить их с правильными разрешениями. Эта работа выполняется в портал Azure.

Чтобы начать, определите ресурсы, которые необходимо настроить на портале Azure AI Foundry.

  1. Откройте портал Azure AI Foundry и выберите проект, используемый для развертывания модели чата Azure OpenAI.

  2. Выберите центр управления в левой области.

  3. Выберите подключенные ресурсы в проекте.

  4. Определите три ресурса, которые необходимо настроить: Azure OpenAI, поиск ИИ Azure и хранилище BLOB-объектов Azure, соответствующее вашему рабочему объекту workspaceblobstore.

    Снимок экрана: подключенные ресурсы, которые необходимо настроить.

    Совет

    Если у вас несколько ресурсов Azure OpenAI , используйте тот, который содержит развернутую модель чата.

  5. Для каждого ресурса выберите ссылку, чтобы открыть сведения о ресурсе. На странице сведений выберите имя ресурса, чтобы открыть ресурс в портал Azure. (Для хранилища рабочих областей выберите Просмотр на портале Azure).

  6. После открытия вкладки браузера вернитесь на портал Azure AI Foundry и повторите процесс для следующего ресурса.

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

Включение управляемого удостоверения

На вкладке браузера для ресурса служба в портал Azure включите управляемое удостоверение:

  1. В области слева в разделе "Параметры" выберите "Удостоверение".
  2. Переключение состояния на Вкл.
  3. Выберите Сохранить.

На вкладке браузера для ресурса служб искусственного интеллекта Azure в портал Azure включите управляемое удостоверение:

  1. В области слева в разделе "Управление ресурсами" выберите "Удостоверение".
  2. Переключение состояния на Вкл.
  3. Выберите Сохранить.

На вкладке браузера для ресурса служба в портал Azure задайте политику доступа к API:

  1. В области слева в разделе "Параметры" выберите "Ключи".
  2. В разделе "Управление доступом к API" выберите "Оба".
  3. При появлении запроса нажмите кнопку "Да" , чтобы подтвердить изменение.

Назначение ролей

Этот шаблон повторяется несколько раз в маркированных элементах ниже.

Общий шаблон назначения управления доступом на основе ролей (RBAC) для любого ресурса:

  1. Перейдите к портал Azure для данного ресурса.
  2. На левой странице в портал Azure выберите элемент управления доступом (IAM).
  3. Выберите + Добавить>Добавить назначение ролей.
  4. Найдите нужную роль и выберите ее. Затем выберите Далее.
  5. При назначении роли себе:
    1. Выберите "Пользователь", "Группа" или "Субъект-служба".
    2. Выберите Выбрать участников.
    3. Найдите имя и выберите его.
  6. При назначении роли другому ресурсу:
    1. Выберите Управляемое удостоверение.
    2. Щелкните Выбор членов.
    3. Используйте раскрывающийся список, чтобы найти тип ресурса, который вы хотите назначить. Например, службы ИИ Azure или служба .
    4. Выберите ресурс из отображаемого списка. Может быть только один, но вам все равно нужно выбрать его.
  7. Перейдите к мастеру и выберите "Проверить и назначить" , чтобы добавить назначение роли.

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

  • Назначьте следующие роли на вкладке браузера для служба в портал Azure:

    • Средство чтения данных индексов поиска в управляемом удостоверении служб ИИ Azure
    • Участник службы поиска в управляемом удостоверении служб искусственного интеллекта Azure
    • Участник самостоятельно (чтобы найти участника, перейдите на вкладку "Роли привилегированного администратора" в верхней части страницы. Все остальные роли находятся на вкладке "Роли функции задания".)
  • Назначьте следующие роли на вкладке браузера для служб ИИ Azure в портал Azure:

    • Участник OpenAI Cognitive Services для управляемого удостоверения служба
    • Участник себя.
  • Назначьте следующие роли на вкладке браузера для хранилища BLOB-объектов Azure в портал Azure:

    • Участник данных BLOB-объектов хранилища в управляемом удостоверении служб искусственного интеллекта Azure
    • Средство чтения данных BLOB-объектов хранилища для управляемого удостоверения служба
    • Участник самостоятельно

Вы закончите настройку ресурсов. Если вы хотите, закройте вкладки браузера портал Azure.

Добавьте данные и повторите попытку модели чата

В кратком руководстве по игровой площадке Azure AI Foundry (это обязательное условие для этого руководства), обратите внимание на то, как модель реагирует без данных. Теперь добавьте данные в модель, чтобы ответить на вопросы о продуктах.

Для выполнения этого раздела потребуется локальная копия данных продукта. Репозиторий Azure-Samples/rag-data-openai-python-promptflow на GitHub содержит примеры сведений о розничном продукте, которые относятся к этому сценарию руководства. В частности, product_info_11.md файл содержит сведения о продукте о походной обуви TrailWalker, которая относится к этому примеру руководства. Скачайте пример данных о розничных продуктах Contoso Trek в ZIP-файле на локальный компьютер.

Выполните следующие действия, чтобы добавить данные на площадку чата, чтобы помочь помощнику ответить на вопросы о продуктах. Вы не изменяете развернутую модель. Данные хранятся отдельно и безопасно в подписке Azure.

  1. Перейдите к проекту в Azure AI Foundry.

  2. Выберите игровые площадки.

  3. Выберите "Попробовать игровую площадку чата".

  4. Выберите развернутую модель чата в раскрывающемся списке развертывания .

    Снимок экрана: игровая площадка чата с выбранным режимом чата и выбранной моделью.

  5. В левой части игровой площадки чата нажмите кнопку "Добавить данные (предварительная версия)>+ Добавить новый источник данных.

    Снимок экрана: игровая площадка чата с параметром добавления источника данных.

  6. В раскрывающемся списке источника данных выберите " Отправить файлы".

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

  7. Выберите "Отправить>файлы", чтобы просмотреть локальные файлы.

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

  9. Выберите " Отправить ", чтобы отправить файл в учетную запись хранения BLOB-объектов Azure. Затем выберите Далее.

    Снимок экрана: диалоговое окно для выбора и отправки файлов.

  10. Выберите службу поиска ИИ Azure.

  11. В поле "Векторный индекс" введите сведения о продукте и нажмите кнопку "Далее".

  12. На странице параметров поиска в разделе "Векторные параметры" установите флажок "Добавить векторный поиск" в этот ресурс поиска. Этот параметр помогает определить, как модель реагирует на запросы. Затем выберите Далее.

    Примечание.

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

  13. Просмотрите параметры и выберите "Создать векторный индекс".

  14. На детской площадке вы увидите, что прием данных выполняется. Этот процесс может занять несколько минут. Прежде чем продолжить, подождите, пока не увидите имя источника данных и индекса вместо состояния.

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

  15. Теперь вы можете общаться с моделью, задавая тот же вопрос, что и раньше ("Сколько это походная обувь TrailWalker"), и на этот раз он использует информацию из данных для создания ответа. Чтобы просмотреть используемые данные, можно развернуть кнопку ссылок .

Развертывание веб-приложения

Когда вы удовлетворены интерфейсом на портале Azure AI Foundry, вы можете развернуть модель как автономное веб-приложение.

Поиск группы ресурсов в портал Azure

В этом руководстве веб-приложение развертывается в той же группе ресурсов, что и центр Azure AI Foundry. Позже вы настроите проверку подлинности для веб-приложения в портал Azure.

Выполните следующие действия, чтобы перейти к группе ресурсов в портал Azure:

  1. Перейдите к проекту в Azure AI Foundry. Затем выберите центр управления в левой области.

  2. В разделе "Заголовок проекта" выберите "Обзор".

  3. Выберите имя группы ресурсов, чтобы открыть группу ресурсов в портал Azure. В этом примере группа ресурсов называется rg-sdg-ai.

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

  4. Теперь вы должны находиться в портал Azure, просматривая содержимое группы ресурсов, в которой вы развернули концентратор. Обратите внимание, что имя и расположение группы ресурсов будут использоваться в следующем разделе.

  5. Откройте эту страницу на вкладке браузера. Позже вы вернетесь к нему.

Развертывание веб-приложения

Публикация создает службу приложение Azure в подписке. Это может привести к затратам в зависимости от выбранного плана ценообразования. После завершения работы с приложением его можно удалить из портал Azure.

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

Внимание

Перед развертыванием в веб-приложении необходимо зарегистрировать Microsoft.Web в качестве поставщика ресурсов.

  1. Выполните действия, описанные в предыдущем разделе, чтобы добавить данные на игровую площадку. (Вы можете развернуть веб-приложение с собственными данными или без нее, но, по крайней мере, вам нужна развернутая модель, как описано в разделе Краткое руководство по игровой площадке для Azure AI Foundry).

  2. Выберите " Развернуть > ... в качестве веб-приложения.

    Снимок экрана: кнопка развертывания нового веб-приложения.

  3. На странице развертывания в веб-приложении введите следующие сведения:

    • Имя: уникальное имя веб-приложения.
    • Подписка. Ваша подписка Azure. Если вы не видите доступных подписок, сначала зарегистрируйте Microsoft.Web в качестве поставщика ресурсов.
    • Группа ресурсов: выберите группу ресурсов, в которой необходимо развернуть веб-приложение. Используйте ту же группу ресурсов, что и концентратор.
    • Расположение. Выберите расположение, в котором будет развернуто веб-приложение. Используйте то же расположение, что и концентратор.
    • Тарифный план: выберите план ценообразования для веб-приложения.
    • Включить журнал чата в веб-приложении: в этом руководстве не выбрано поле журнала чата. Если вы включите эту функцию, у пользователей есть доступ к отдельным предыдущим запросам и ответам. Дополнительные сведения см . в примечаниях журнала чатов.
  4. Выберите Развернуть.

  5. Дождитесь развертывания приложения, которое может занять несколько минут.

  6. Когда он будет готов, кнопка "Запустить " включена на панели инструментов. Но не запускайте приложение еще и не закрывайте страницу игровой площадки чата - вы вернетесь к нему позже.

Настройка проверки подлинности веб-приложения

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

  1. Вернитесь на вкладку браузера, содержащую портал Azure (или снова откройте портал Azure на новой вкладке браузера) и просмотрите содержимое группы ресурсов, в которой развернуто веб-приложение (может потребоваться обновить представление веб-приложения).

  2. Выберите Служба приложений ресурс из списка ресурсов в группе ресурсов.

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

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

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

  5. Добавьте поставщика удостоверений со следующими параметрами:

    • Поставщик удостоверений: выберите Корпорацию Майкрософт в качестве поставщика удостоверений. Параметры по умолчанию на этой странице ограничивают приложение только вашим клиентом, поэтому вам не нужно ничего другого здесь изменить.
    • Тип клиента: Рабочая сила
    • Регистрация приложений: создание регистрации приложения
    • Имя: имя службы веб-приложения
    • Поддерживаемые типы учетных записей: текущий клиент — один клиент
    • Ограничение доступа: требуется проверка подлинности
    • Запросы, не прошедшие проверку подлинности: HTTP 302 Найден перенаправление — рекомендуется для веб-сайтов

Использование веб-приложения

Почти все сделано. Теперь вы можете протестировать веб-приложение.

  1. Если вы изменили параметры, подождите 10 минут или около того, чтобы параметры проверки подлинности вступают в силу.

  2. Вернитесь на вкладку браузера, содержащую страницу игровой площадки чата на портале Azure AI Foundry.

  3. Выберите "Запустить ", чтобы запустить развернутый веб-приложение. При появлении запроса примите запрос разрешений.

    Если параметры проверки подлинности еще не ввели силу, закройте вкладку браузера для веб-приложения и вернитесь на площадку чата на портале Azure AI Foundry. Затем подождите немного дольше и повторите попытку.

  4. В веб-приложении вы можете задать тот же вопрос, что и раньше ("Сколько это походная обувь TrailWalker"), и на этот раз он использует информацию из данных для создания ответа. Чтобы просмотреть используемые данные, можно развернуть кнопку ссылки .

    Снимок экрана: интерфейс чата с помощью развернутого веб-приложения.

Общие сведения об журнале чата

С помощью функции журнала чата пользователи имеют доступ к отдельным предыдущим запросам и ответам.

Журнал чатов можно включить при развертывании веб-приложения. Установите флажок "Включить журнал чата" в веб-приложении.

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

Внимание

Включение журнала чата приведет к созданию экземпляра Cosmos DB в группе ресурсов и повлечет за собой дополнительные расходы на используемое хранилище. Удаление веб-приложения не удаляет экземпляр базы данных Cosmos автоматически. Чтобы удалить экземпляр базы данных Cosmos вместе со всеми сохраненными чатами, вам необходимо перейти к связанному ресурсу на портале Azure и удалить его.

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

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

Обновление веб-приложения

Используйте игровую площадку для добавления дополнительных данных или тестирования модели с различными сценариями. Когда вы будете готовы обновить веб-приложение с помощью новой модели, нажмите кнопку "Развернуть > ... как веб-приложение снова. Выберите "Обновить существующее веб-приложение" и выберите существующее веб-приложение из списка. Новая модель развертывается в существующем веб-приложении.

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

Чтобы избежать ненужных затрат Azure, следует удалить ресурсы, созданные в этом кратком руководстве, если они больше не нужны. Для управления ресурсами можно использовать портал Azure.