Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Important
В новых вариантах использования Databricks рекомендует развертывать агенты в Databricks Apps для полного контроля над кодом агента, конфигурацией сервера и рабочим процессом развертывания. См . статью "Создание агента ИИ" и его развертывание в приложениях Databricks. Сведения о переносе существующего агента см. в статье "Миграция агента из службы моделей в приложения Databricks".
Разверните агент ИИ в службе модели ИИ Мозаики с помощью функции deploy() из API Agent Framework Python API. Развертывание создает конечную точку обслуживания со встроенными средствами масштабируемости, мониторинга и совместной работы.
Развернутый агент автоматически интегрируется с возможностями оценки и мониторинга MLflow 3, включая трассировку в режиме реального времени, приложение проверки для отзывов заинтересованных лиц и мониторинга.
Requirements
MLflow 3
- Зарегистрируйте агент в каталоге Unity.
- Установите MLflow 3.1.3 или более поздней версии, чтобы развернуть агенты с помощью
deploy()API изdatabricks.agents. - Для развертывания агентов вне ноутбука Databricks требуется пакет SDK версии 1.1.0 или выше.
Установите необходимые компоненты:
# Install prerequisites
%pip install mlflow>=3.1.3 databricks-agents>=1.1.0
# Restart Python to make sure the new packages are picked up
dbutils.library.restartPython()
MLflow 2.x
Important
Databricks рекомендует использовать MLflow 3 для развертывания агентов, так как некоторые функции ведения журнала MLflow 2 будут устаревшими. См. подробные действия развертывания.
- Зарегистрируйте агент в каталоге Unity.
- Установите MLflow 2.13.1 или более поздней версии для развертывания агентов с помощью
deploy()API изdatabricks.agents. - Для развертывания агентов вне ноутбука Databricks требуется
databricks-agentsпакет SDK версии 0.12.0 или выше.
Установите необходимые компоненты:
# Install prerequisites
%pip install mlflow>=2.13.1 databricks-agents>=0.12.0
# Restart Python to make sure the new packages are picked up
dbutils.library.restartPython()
Развертывание агентов с помощью deploy()
Разверните агент в конечной точке обслуживания модели:
from databricks import agents
deployment = agents.deploy(uc_model_name, uc_model_info.version)
# Retrieve the query endpoint URL for making API requests
deployment.query_endpoint
При вызове deploy()Databricks автоматически настраивает рабочую инфраструктуру и интегрирует агент с функциями ИИ поколения MLflow, выполнив следующие действия:
Предупреждение
Если вы развертываете агент из записной книжки, хранящейся в папке Databricks Git, трассировка MLflow 3 в режиме реального времени не будет работать по умолчанию.
Чтобы включить трассировку в режиме реального времени, перед запуском mlflow.set_experiment(), переключите эксперимент на состояние, не связанное с Git, используя agents.deploy().
Функция deploy() выполняет следующие действия по умолчанию:
- Создает конечную точку обслуживания модели для размещения агента с автоматическим масштабированием и балансировкой нагрузки
- Обеспечение безопасной аутентификации для агента, чтобы получить доступ к базовым ресурсам
- Обеспечивает мониторинг в режиме реального времени с помощью трассировки экспериментов MLflow и автоматической оценки качества на производственном трафике
- Организует совместную работу заинтересованных лиц с помощью Review App для сбора отзывов
Дополнительные сведения см. в разделе "Подробные действия развертывания".
Настройка развертывания
Передайте дополнительные аргументы в deploy(), чтобы настроить развертывание. Например, можно включить масштабирование до нуля для неактивных конечных точек путем передачи scale_to_zero_enabled=True. Это снижает затраты, но увеличивает время обслуживания начальных запросов.
Дополнительные параметры см. в разделе Databricks Agent Python API.
Получение и удаление развертываний агентов
Получение существующих развертываний агента или управление ими. См. раздел Databricks Agent Python API.
from databricks.agents import list_deployments, get_deployments, delete_deployment
# Print all current deployments
deployments = list_deployments()
print(deployments)
# Get the deployment for a specific agent model name and version
agent_model_name = "" # Set to your Unity Catalog model name
agent_model_version = 1 # Set to your agent model version
deployment = get_deployments(model_name=agent_model_name, model_version=agent_model_version)
# List all deployments
all_deployments = list_deployments()
# Delete an agent deployment
delete_deployment(model_name=agent_model_name, model_version=agent_model_version)
Проверка подлинности для зависимых ресурсов
Агенты часто должны проходить проверку подлинности в других ресурсах для выполнения задач при развертывании. Например, агенту может потребоваться доступ к индексу векторного поиска для запроса неструктурированных данных.
Сведения о методах проверки подлинности, в том числе о том, когда они используются и как их настроить, см. в разделе "Проверка подлинности для агентов ИИ" (служба моделей).
Сеть для развертываний агента
Если в рабочей области используются Private Link или ограниченные политики сети исходящего трафика, необходимо настроить сетевой доступ для успешного развертывания агента. Для конечных точек обслуживания моделей требуется исходящий доступ для скачивания зависимостей во время процесса сборки контейнера. Агенты могут также обращаться к внешним API во время выполнения.
Сведения об агентах, развернутых в приложениях Databricks, см. в разделе Развертывание приложений в средах Private Link, где вы найдете подробные инструкции по настройке политик DNS или исходящего трафика.
Для агентов, развернутых в службе моделей, проверьте следующее:
-
Зависимости на этапе сборки: Сетевая политика должна разрешить доступ к репозиториям пакетов, необходимым для среды агента, например
pypi.orgилиfiles.pythonhosted.orgдля пакетов Python. Azure Databricks фиксирует ошибки сборки, вызванные блокировкой сетевого доступа, с помощьюnetwork_source_type: ML Buildв системной таблицеsystem.access.outbound_network. См. статью "Проверка с помощью службы моделей". - Зависимости среды выполнения: Если агент вызывает внешние API или службы во время вывода, добавьте эти домены в список разрешений политики сети.
- DNS resolution: В средах Private Link убедитесь, что ваш агент может разрешать имена узлов любых служб Azure Databricks, от которых зависят такие конечные точки, как Vector Search или хранилища данных SQL.
Подробные действия развертывания
В следующей таблице deploy() перечислены подробные действия развертывания, которые выполняются в результате вызова. Развертывание может занять до 15 минут.
MLflow 3
deploy() действие |
Description |
|---|---|
| Создание конечной точки обслуживания модели | Создает масштабируемую конечную точку REST API, которая обслуживает ваши приложения, взаимодействующие с пользователями, с автоматической балансировкой нагрузки. |
| Обеспечение безопасной аутентификации | Автоматически предоставляют короткие учетные данные, позволяющие агенту получать доступ к ресурсам, управляемым Databricks (индексы векторного поиска, функции каталога Unity и т. д.) с минимальными необходимыми разрешениями. Databricks проверяет, что владелец конечной точки имеет соответствующие разрешения перед выдачой учетных данных, предотвращая несанкционированный доступ. Для ресурсов, отличных от Databricks, передайте переменные среды с секретами deploy(). См. раздел "Настройка доступа к ресурсам из конечных точек обслуживания модели". |
| Включение приложения проверки | Предоставляет веб-интерфейс, где заинтересованные лица могут взаимодействовать с агентом и предоставлять отзывы. Смотрите Сбор отзывов и ожиданий путем маркировки существующих трассировок. |
| Включение трассировки в режиме реального времени | Регистрирует все взаимодействия агента в эксперимент MLflow в режиме реального времени, обеспечивая немедленную видимость для мониторинга и отладки.
|
| Включение рабочего мониторинга (бета-версия) | Настраивает автоматическую оценку качества, которая запускает счётчики на рабочем трафике. См. мониторинг рабочей среды. |
| Включение таблиц вывода | Создает таблицы, которые регистрируют входные данные и ответы для аудита и анализа.
|
| Логирование запросов REST API и анализ отзывов о приложении | Записывает запросы API и отзывы в таблицу вывода. Предупреждение: Модель обратной связи устарела и будет удалена в будущем выпуске. Обновите до MLflow 3 и используйте log_feedback API. См. Collect user feedback.
|
MLflow 2
deploy() действие |
Description |
|---|---|
| Создание конечной точки обслуживания модели | Создает масштабируемую конечную точку REST API, которая обслуживает ваши приложения, взаимодействующие с пользователями, с автоматической балансировкой нагрузки. |
| Обеспечение безопасной аутентификации | Автоматически предоставляют короткие учетные данные, позволяющие агенту получать доступ к ресурсам, управляемым Databricks (индексы векторного поиска, функции каталога Unity и т. д.) с минимальными необходимыми разрешениями. Databricks проверяет, что владелец конечной точки имеет соответствующие разрешения перед выдачой учетных данных, предотвращая несанкционированный доступ. Для ресурсов, отличных от Databricks, передайте переменные среды с секретами deploy(). См. раздел "Настройка доступа к ресурсам из конечных точек обслуживания модели". |
| Включение приложения проверки | Предоставляет веб-интерфейс, где заинтересованные лица могут взаимодействовать с агентом и предоставлять отзывы. Смотрите Сбор отзывов и ожиданий путем маркировки существующих трассировок. |
| Включение таблиц вывода | Создает таблицы, которые регистрируют входные данные и ответы для аудита и анализа. Предупреждение: Журналы запросов и журналы оценки устарели и будут удалены в будущем выпуске. Посмотрите устаревание журналов запросов и журналов оценки для получения рекомендаций по миграции.
|
| Журнал запросов REST API и отзывы в приложении Review App (устарело) | Записывает запросы API и отзывы в таблицу вывода. Предупреждение: Модель обратной связи устарела и будет удалена в будущем выпуске. Обновите до MLflow 3 и используйте log_feedback API. См. Collect user feedback.
|