Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Предупреждение
Разработка функций потока запросов закончилась 20 апреля 2026 г. Функция будет полностью прекращена 20 апреля 2027 г. В дату выхода на пенсию, Prompt Flow переходит в режим только для чтения. Существующие потоки будут продолжать работать до этой даты.
Рекомендуемое действие: Перенесите рабочие нагрузки Prompt Flow на Microsoft Agent Framework до 20 апреля 2027 г.
После сборки потока и его правильного тестирования может потребоваться развернуть его как конечную точку, чтобы можно было вызвать конечную точку для вывода в режиме реального времени.
В этой статье вы узнаете, как развернуть поток как управляемую конечную точку в сети для вывода в режиме реального времени. Ниже приведены действия, которые вы выполните:
- Тестирование потока и подготовка к развертыванию
- Создание онлайн развертывания
- Предоставление разрешений конечной точке
- Тестирование конечной точки
- Обращение к конечной точке
Важно
Элементы, помеченные (предварительная версия) в этой статье, в настоящее время находятся в общедоступной предварительной версии. Предварительная версия предоставляется без соглашения об уровне обслуживания и не рекомендуется для рабочих нагрузок. Некоторые функции могут не поддерживаться или могут иметь ограниченные возможности. Дополнительные сведения см. в разделе Supplemental Terms of Use for Microsoft Azure Previews.
Необходимые условия
Узнайте , как создать и протестировать поток в системе обработки запросов.
У вас есть базовое представление об управляемых сетевых конечных точках. Управляемые сетевые конечные точки работают с мощными компьютерами ЦП и GPU в Azure масштабируемым, полностью управляемым способом, который освобождает вас от затрат на настройку и управление базовой инфраструктурой развертывания. Дополнительные сведения об управляемых онлайн конечных точках можно найти в статье «Конечные точки онлайн и развертывания для вывода в режиме реального времени».
Ролевое управление доступом Azure (Azure RBAC) используется для предоставления доступа к операциям в Машинное обучение Azure. Чтобы развернуть конечную точку в потоке запросов, вашей учетной записи пользователя должна быть назначена роль AzureML Data scientist или роль с повышенными привилегиями для рабочей области Машинное обучение Azure.
Иметь базовое представление об управляемых удостоверениях. Дополнительные сведения об управляемых идентификациях.
Примечание
Управляемая конечная точка в Сети поддерживает только управляемую виртуальную сеть. Если рабочая область находится в пользовательской виртуальной сети, необходимо попробовать другие варианты развертывания, такие как развертывание в интернет-конечной точке Kubernetes с помощью интерфейса командной строки или пакета SDK, или развернуть на других платформах, таких как Docker.
Создание потока и подготовка к развертыванию
Если вы уже выполнили руководство по началу работы, вы уже проверили поток должным образом, выполнив пакетный запуск и оценивая результаты.
Если вы не прошли руководство, вам нужно создать последовательность действий. Правильное тестирование потока с помощью пакетного запуска и его оценка перед развертыванием является рекомендуемой наилучшей практикой.
Мы будем использовать пример потока Web Classification, чтобы показать, как развернуть поток. Этот пример потока является стандартным потоком. Развертывание потоков чата аналогично. Процесс оценки не поддерживает развертывание.
Определите среду, используемую для развертывания
При развертывании потока запроса на управляемой онлайн конечной точке в пользовательском интерфейсе развертывание по умолчанию будет использовать среду, созданную на основе самого последнего образа потока запроса и его зависимостей, указанных в requirements.txt потоке. Вы можете указать дополнительные пакеты, необходимые в requirements.txt. В корневой папке папки потока можно найти requirements.txt .
Примечание
Если вы используете частные веб-каналы в Azure devops, необходимо сначала создать образ с частными веб-каналами и выбрать настраиваемую среду для развертывания в пользовательском интерфейсе.
Создание онлайн развертывания
Теперь, когда вы создали поток и правильно проверили его, пришло время создать конечную точку в Интернете для вывода в режиме реального времени.
Поток подсказок поддерживает возможность развертывания конечных точек как из потока, так и из пакетного запуска. Рекомендуется протестировать поток перед развертыванием.
На странице разработки процесса или на странице сведений о выполнении выберите Развернуть.
Страница разработки потока:
Страница сведений о выполнении:
Мастер для настройки конечной точки предоставляет следующие этапы.
Основные параметры
Этот шаг позволяет настроить основные параметры развертывания.
| Свойство | Описание |
|---|---|
| Конечная точка | Можно выбрать, следует ли развертывать новую конечную точку или обновлять существующую конечную точку. Если выбрать "Создать", необходимо указать имя конечной точки. |
| Имя развертывания | — В той же конечной точке имя развертывания должно быть уникальным. — Если выбрать существующую конечную точку и ввести существующее имя развертывания, то это развертывание новыми конфигурациями будет перезаписано. |
| Виртуальная машина | Размер виртуальной машины, используемый для развертывания. Список поддерживаемых размеров см. в списке SKU управляемых сетевых конечных точек. |
| Число экземпляров | Количество экземпляров для использования в процессе развертывания. Укажите значение ожидаемой рабочей нагрузки. Для обеспечения высокой доступности рекомендуется задать значение не менее 3. Мы зарезервируем дополнительные 20% для выполнения обновлений. Дополнительные сведения см. в разделе квоты управляемых сетевых конечных точек |
| Сбор данных вывода | Если этот параметр включен, входные и выходные данные потока будут автоматически собираться в Машинное обучение Azure ресурсе данных и могут использоваться для последующего мониторинга. Дополнительные сведения см. в статье о мониторинге созданных приложений искусственного интеллекта. |
После завершения базовых параметров можно напрямую просмотреть и создать , чтобы завершить создание, или щелкнуть "Далее " для настройки дополнительных параметров.
Дополнительные параметры — конечная точка
Для конечной точки можно указать следующие параметры.
Тип проверки подлинности
Метод проверки подлинности для конечной точки. Проверка подлинности на основе ключей предоставляет первичный и вторичный ключ, срок действия которого не истекает. Аутентификация Машинное обучение Azure с использованием токенов предоставляет токен, который автоматически обновляется с заданной периодичностью. Дополнительные сведения о проверке подлинности см. в статье "Аутентификация в сети".
Тип идентификатора
Конечная точка должна получить доступ к ресурсам Azure, например к Реестр контейнеров Azure или подключениям рабочей области для выполнения вывода. Разрешение конечной точки на доступ к ресурсам Azure можно разрешить с помощью предоставления разрешения управляемому удостоверению.
Удостоверение, назначаемое системой, будет автоматически создано после создания конечной точки, а удостоверение, назначаемое пользователем, создается им сам. Дополнительные сведения об управляемых идентификациях.
Назначаемое системой
Вы увидите, есть ли параметр Использовать принудительный доступ к секретам подключения (предварительная версия). Если поток использует подключения, конечная точка должна получить доступ к подключениям для выполнения вывода. Параметр включен по умолчанию, и конечная точка получит роль читателя секретов подключения к рабочей области Машинное обучение Azure для автоматического доступа к подключениям, при условии, что у вас есть разрешение на чтение секретов подключений. Если этот параметр отключен, необходимо предоставить эту роль удостоверениям, назначенным системой, вручную или обратиться за помощью от администратора. Узнайте больше о том, как предоставить удостоверение конечной точки.
Примечание
Для удостоверений, назначенных системой, автоматически назначаются несколько ролей (включая AcrPull, средство чтения данных BLOB-объектов хранилища и средство записи метрик AzureML). Дополнительные сведения см. в разделе "Проверка подлинности и авторизация для сетевых конечных точек".
Назначено пользователем
При создании развертывания Azure пытается извлечь образ контейнера пользователя из рабочей области Реестр контейнеров Azure (ACR) и подключить модель пользователя и артефакты кода в контейнер пользователя из учетной записи хранения рабочей области.
Если вы создали связанную конечную точку с пользовательским назначенным удостоверением, пользовательским назначенным удостоверением должны быть предоставлены следующие роли перед созданием развертывания. В противном случае создание развертывания будет неудачным.
| Область применения | Роль | Почему это необходимо |
|---|---|---|
| Рабочая область Машинное обучение Azure | Роль чтения секретов подключения в рабочей области Машинное обучение AzureИЛИ настраиваемую роль с правами организации Microsoft "MachineLearningServices/workspaces/connections/listsecrets/action" | Получите подключения к рабочей среде |
| Реестр контейнеров рабочей области | Извлечение данных через ACR | Извлечение образа контейнера |
| Хранилище рабочей области по умолчанию | Читатель данных хранилища BLOB | Загрузка модели из хранилища |
| (Необязательно) Рабочая область Машинное обучение Azure | Модуль записи метрик рабочей области | После развертывания конечной точки, если вы хотите отслеживать связанные с конечной точкой метрики, такие как ЦП, GPU, диск или память, необходимо предоставить это разрешение идентичности. |
Подробные инструкции по предоставлению разрешений идентификатору конечной точки в Предоставление разрешений конечной точке.
Важно
Если в вашем потоке используются подключения проверки подлинности на базе Microsoft Entra ID, независимо от того, используется ли назначаемое системой удостоверение или назначаемое пользователем, необходимо всегда предоставлять управляемому удостоверению соответствующие роли соответствующих ресурсов, чтобы оно могло совершать вызовы API к этому ресурсу. Например, если подключение Azure OpenAI использует проверку подлинности на основе Microsoft Entra ID, необходимо предоставить управляемое удостоверение конечной точки роль Cognitive Services OpenAI User или Cognitive Services OpenAI Contributor для соответствующих ресурсов Azure OpenAI.
Дополнительные параметры — развертывание
На этом шаге, кроме тегов, можно также указать среду, используемую развертыванием.
Использование среды текущего определения потока
По умолчанию развертывание будет использовать среду, созданную на основе базового образа, указанного в flow.dag.yaml и зависимостях, указанных в разделе requirements.txt.
Базовый образ можно указать в
flow.dag.yaml, выбравRaw file modeпотока. Если не указано изображение, базовый образ по умолчанию — это последний базовый образ потока запроса.В корневой папке папки потока можно найти
requirements.txtи добавить в нее зависимости.
Использование настраиваемой среды
Вы также можете создать настраиваемую среду и использовать ее для развертывания.
Примечание
Настраиваемая среда должна соответствовать следующим требованиям:
- Образ docker должен быть создан на основе базового образа потока запроса.
mcr.microsoft.com/azureml/promptflow/promptflow-runtime-stable:<newest_version>Здесь можно найти последнюю версию. - Определение среды должно содержать
inference_config.
Ниже приведен пример настраиваемого определения среды.
$schema: https://azuremlschemas.azureedge.net/latest/environment.schema.json
name: pf-customized-test
build:
path: ./image_build
dockerfile_path: Dockerfile
description: promptflow customized runtime
inference_config:
liveness_route:
port: 8080
path: /health
readiness_route:
port: 8080
path: /health
scoring_route:
port: 8080
path: /score
Включение трассировки путем включения диагностики Application Insights (предварительная версия)
Если включить эту функцию, данные трассировки и системные метрики во время выполнения вывода (например, количество маркеров, задержка потока, запрос потока и т. д.) будут собираться в пространство работы, связанное с Application Insights. Дополнительные сведения см. в статье "Обслуживание данных трассировки и метрик запросов потока".
Если вы хотите указать другие Application Insights, не связанные с рабочей областью, вы можете настроить это через CLI.
Дополнительные параметры — выходные данные и подключения
На этом шаге можно просмотреть все выходные данные потока и указать, какие выходные данные будут включены в ответ развернутой конечной точки. По умолчанию выбраны все выходные данные потока.
Можно также указать подключения, используемые конечной точкой при выполнении вывода. По умолчанию они наследуются от потока.
После настройки и просмотра всех вышеуказанных действий можно выбрать «Проверка и создание», чтобы завершить создание.
Примечание
Ожидается, что создание конечной точки занимает около 15 минут, так как она содержит несколько этапов, включая создание конечной точки, регистрацию модели, создание развертывания и т. д.
Ход создания развертывания можно понять с помощью уведомления, начинаемого с развертывания потока запроса.
Предоставление разрешений конечной точке
Важно
Предоставление разрешений (добавление назначения ролей) включено только для Owner определенных ресурсов Azure. Возможно, вам потребуется обратиться за помощью к ИТ-администратору. Перед созданием развертывания рекомендуется предоставить назначенному пользователем удостоверению роли. Для принятия в силу предоставленного разрешения может потребоваться более 15 минут.
Все разрешения можно предоставить в пользовательском интерфейсе портала Azure, выполнив действия.
Перейдите на страницу обзора рабочей области Машинное обучение Azure на портале Azure.
Выберите элемент управления доступом и выберите "Добавить назначение ролей".
Выберите Машинное обучение Azure средство чтения секретов подключения к рабочей области, затем перейдите к Далее.
Примечание
Машинное обучение Azure средство чтения секретов подключения к рабочей области — это встроенная роль, которая имеет разрешение на получение подключений к рабочей области.
Если вы хотите использовать настраиваемую роль, убедитесь, что эта роль имеет разрешение "Microsoft.MachineLearningServices/workspaces/connections/listsecrets/action". Узнайте больше о создании пользовательских ролей.
Выберите Управляемая идентификация и выберите участников.
Для удостоверения, назначаемого системой, выберите конечную точку машинного обучения в разделе системного управляемого удостоверения, и выполните поиск по имени конечной точки.
Для назначенного пользователем удостоверения выберите управляемое удостоверение, назначенное пользователем и выполните поиск по имени удостоверения.
Для назначаемого пользователем удостоверения также необходимо предоставить разрешения реестру контейнеров рабочей области и учетной записи хранения. Реестр контейнеров и учетная запись хранения можно найти на странице обзора рабочей области на портале Azure.
Перейдите на страницу обзора реестра контейнеров рабочей области, выберите Управление доступом, затем выберите Добавить назначение ролей и назначьте роль ACR pull | Извлечение образа контейнера для удостоверения конечной точки.
Перейдите на страницу обзора хранилища по умолчанию рабочей области, выберите элемент "Управление доступом" и выберите "Добавить назначение роли", и назначьте роль Storage Blob Data Reader идентификатору конечной точки.
(необязательно) Для пользовательской идентичности, если вы хотите отслеживать метрики, связанные с конечной точкой, такие как нагрузка на ЦП/ГП, использование диска или памяти, необходимо предоставить роль автора метрик рабочей области данной идентичности.
Проверка состояния конечной точки
После завершения работы мастера развертывания вы получите уведомления. После успешного создания конечной точки и развертывания, вы можете выбрать сведения о развертывании в уведомлении, чтобы перейти на страницу сведений о конечной точке.
Вы также можете напрямую перейти на страницу конечных точек в студии и проверить состояние развернутой конечной точки.
Тестирование конечной точки с примерами данных
На странице сведений о конечной точке перейдите на вкладку "Тест ".
Вы можете ввести значения и нажать кнопку "Тест".
Результат теста показан следующим образом:
Тестирование конечной точки, развернутой из потока чата
Для конечных точек, развернутых из потока чата, его можно протестировать в иммерсивном окне чата.
chat_input был установлен во время разработки потока чата. В поле ввода можно ввести сообщение chat_input. Панель входных данных справа позволяет указать значения для других входных данных, кроме входных chat_inputданных. Узнайте больше о том, как разработать поток чата.
Использование конечной точки
На странице сведений о конечной точке перейдите на вкладку "Использование ". Вы можете найти конечную точку REST и ключ или токен для использования конечной точки. Существует также пример кода для использования конечной точки на разных языках.
Обратите внимание, что необходимо заполнить значения данных в соответствии с входными данными потока. Возьмите пример потока, использованный в этой статье Web Classification. Необходимо указать data = {"url": "<the_url_to_be_classified>"} и заполнить его ключом или токеном в примере кода потребления.
Мониторинг конечных точек
Просмотр общих метрик управляемых сетевых конечных точек с помощью Azure Monitor (необязательно)
Вы можете просмотреть различные метрики (номера запросов, задержку запроса, сетевые байты, загрузку ЦП/GPU/диск/память и многое другое) для сетевой конечной точки и ее развертываний, следуя ссылкам со страницы сведений конечной точки в студии. После этих ссылок перейдите на страницу точных метрик на портале Azure для конечной точки или развертывания.
Примечание
Если вы указываете удостоверение пользователя, назначенное для вашей конечной точки, убедитесь, что вы назначили роль Workspace metrics writer в Машинное обучение Azure Workspace на это удостоверение пользователя. В противном случае конечная точка не сможет регистрировать метрики.
Дополнительные сведения о том, как просматривать метрики сетевых конечных точек, см. в разделе "Мониторинг сетевых конечных точек".
Просмотр метрик и данных трассировки, относящихся к конечным точкам потока подсказок (необязательно)
Если включить диагностику Application Insights в мастере развертывания пользовательского интерфейса, данные трассировки и специфические метрики потока подсказок будут собираться в связанную рабочую область Application Insights. Дополнительные сведения о включении трассировки для развертывания.
Устранение неполадок конечных точек, развернутых с помощью prompt flow
Отсутствие авторизации для выполнения действия "Microsoft. MachineLearningService/workspaces/datastores/read"
Если поток содержит инструмент Index Look Up, после развертывания потока конечная точка должна получить доступ к хранилищу данных рабочей области для чтения yaml-файла MLIndex или папки FAISS, содержащей блоки и встраивания. Таким образом, необходимо вручную предоставить разрешение на выполнение этой операции для идентификатора конечной точки.
Вы можете предоставить удостоверение конечной точки AzureML Специалист по обработке и анализу данных в границах рабочей области или пользовательскую роль, содержащую действие MachineLearningService/workspace/datastore/reader.
Ошибка MissingDriverProgram
Если вы развертываете поток с помощью пользовательской среды и испытываете следующую ошибку, это может быть вызвано тем, что вы не указали inference_config в определении пользовательской среды.
'error':
{
'code': 'BadRequest',
'message': 'The request is invalid.',
'details':
{'code': 'MissingDriverProgram',
'message': 'Could not find driver program in the request.',
'details': [],
'additionalInfo': []
}
}
Существует 2 способа исправить эту ошибку.
(Рекомендуется) Вы можете найти URI образа контейнера на странице сведений о пользовательской среде и задать его в качестве базового образа потока в файле flow.dag.yaml. При развертывании потока в пользовательском интерфейсе вы просто выбираете Использовать среду текущего определения потока, а серверная служба создаст настраиваемую среду на основе этого базового образа и
requirement.txtдля вашего развертывания. Дополнительные сведения о среде, указанной в определении потока.Эту ошибку можно исправить, добавив
inference_configв определение пользовательской среды. Узнайте больше об использовании настраиваемой среды.Ниже приведен пример настраиваемого определения среды.
$schema: https://azuremlschemas.azureedge.net/latest/environment.schema.json
name: pf-customized-test
build:
path: ./image_build
dockerfile_path: Dockerfile
description: promptflow customized runtime
inference_config:
liveness_route:
port: 8080
path: /health
readiness_route:
port: 8080
path: /health
scoring_route:
port: 8080
path: /score
Слишком долгое время ответа модели
Иногда вы можете заметить, что развертывание занимает слишком много времени для реагирования. Существует несколько потенциальных факторов для этого.
- Модель недостаточно мощна (например, используйте gpt вместо text-ada)
- Запрос индекса не оптимизирован и занимает слишком много времени
- Поток имеет много шагов для обработки
Рекомендуется оптимизировать конечную точку подключения с учетом выше приведенных рекомендаций, чтобы повысить производительность модели.
Не удается получить схему развертывания
После развертывания конечной точки и если вы хотите проверить её на вкладке "Тест" на странице сведений о конечной точке, но вкладка "Тест" показывает "Не удается получить схему развертывания", как показано ниже, вы можете попробовать следующие 2 метода, чтобы устранить эту проблему:
- Убедитесь, что вы предоставили правильное разрешение для идентификатора конечной точки. Узнайте больше о том, как предоставить разрешение для идентификации конечной точки.
Доступ запрещен для перечисления секрета рабочей области
Если вы столкнулись с ошибкой, например, "Доступ запрещен для перечня секретов рабочей области", проверьте, предоставили ли вы правильное разрешение для идентификации конечной точки. Узнайте больше о том, как предоставить разрешение для идентификации конечной точки.
Очистка ресурсов
Если вы не собираетесь использовать конечную точку после завершения работы с этим руководством, удалите конечную точку.
Примечание
Полное удаление может занять около 20 минут.
Дальнейшие действия
- Итерация и оптимизация вашего процесса путем настройки запросов с использованием вариантов
- Включите трассировку и соберите отзывы о развертывании
- Просмотр затрат на управляемую сетью конечную точку Машинное обучение Azure
- Устранение неполадок при развертывании потока запросов.
- Развертывание потока для вывода в режиме реального времени в Foundry (классическая версия)