Веб-приложение Python Flask с интеграцией Azure OpenAI
В этом руководстве описывается развертывание минималистичного приложения Flask с интеграцией GPT Azure OpenAI в веб-приложение Azure.
Шаг 1. Предоставьте модель GPT в Azure OpenAI:
- В Azure OpenAI/AI Studio разверните необходимую модель GPT-x;
- Запишите конечную точку ресурса Azire OpenAI, имя развертывания модели GPT и версию API, которую вы планируете использовать.
Шаг 2. Подготовьте ресурс веб-приложения Azure:
- В Azure создайте новое веб-приложение и выберите Python в качестве целевой языковой платформы;
- В настройках переменных среды веб-приложения создайте следующие переменные и присвойте им значения, полученные на шаге 1:
AZURE_OPENAI_API_BASE
, AZURE_OPENAI_API_DEPLOY
и AZURE_OPENAI_API_VERSION
; - В настройках переменных среды веб-приложения создайте переменную
SCM_DO_BUILD_DURING_DEPLOYMENT
и установите для нее значение « true »;
Примечание. Параметр SCM_DO_BUILD_DURING_DEPLOYMENT гарантирует, что веб-приложение загрузит необходимые пакеты Python, перечисленные в предоставленном файле require.txt .
- Если все настроено правильно, настройки вашего веб-приложения должны выглядеть примерно так:
Шаг 3. Настройте аутентификацию:
- В настройках удостоверения веб-приложения установите для статуса управляемого удостоверения, назначенного системой, значение «ВКЛ» ;
Примечание. В этой демонстрации показано, как пройти аутентификацию с помощью управляемого удостоверения. Подробности реализации других потенциальных вариантов можно найти здесь.
- В настройках управления доступом (IAM) Azure OpenAI назначьте управляемому удостоверению веб-приложения роль пользователя Cognitive Services OpenAI .
Шаг 4. Разверните веб-приложение Flask:
- Заархивируйте предоставленные файлы
app.py
, requirements.txt
и содержимое папок static
и templates
(всего 4 файла); - Разверните ZIP-файл с помощью следующей команды Azure CLI. Убедитесь, что вы используете правильные имена групп ресурсов, веб-приложений и ZIP-файлов:
az webapp deploy --resource-group < Web_App_RG > --name < Web_App_Name > --src-path < Source_ZIP_file >
- Поскольку на шаге 2 мы включили «сборку во время развертывания», вы можете проверить из журнала веб-приложения, что оно извлекло необходимые пакеты Python в целевую виртуальную среду Python:
Шаг 5. Пользовательский интерфейс веб-приложения:
- Домашняя страница веб-приложения Flask очень минималистична. Вы вводите свой вопрос, нажимаете кнопку «Спросить» , и веб-приложение добавляет на свою веб-страницу новую пару вопросов/ответов: