MLflow для агента генеративного ИИ и жизненного цикла модели машинного обучения
В этой статье описывается, как MLflow в Databricks используется для разработки высококачественных агентов ИИ и моделей машинного обучения.
Заметка
Если вы только начинаете работу с Azure Databricks, попробуйте MLflow на Databricks Community Edition.
Что такое MLflow?
MLflow — это платформа с открытым исходным кодом для разработки моделей и создания приложений ИИ. Она содержит следующие основные компоненты:
- Отслеживание. Позволяет отслеживать эксперименты для записи и сравнения параметров и результатов.
- Модели. Позволяет управлять и развертывать модели из различных библиотек машинного обучения на различных платформах обслуживания и вывода моделей.
- Реестр моделей: позволяет управлять процессом развертывания модели от тестирования до рабочей среды, с возможностями управления версиями моделей и аннотациями.
- Оценка и трассировка агента ИИ: позволяет разрабатывать высококачественные агенты ИИ, помогая сравнивать, оценивать и устранять неполадки агентов.
MLflow поддерживает API Java, Python, R и REST.
MLflow под управлением Databricks
Databricks предоставляет полностью управляемую и размещенную версию MLflow, опираясь на интерфейс с открытым кодом, чтобы сделать его более надежным и масштабируемым для корпоративного использования.
На следующей схеме показано, как Databricks интегрируется с MLflow для обучения и развертывания моделей машинного обучения.
Управляемый Databricks MLflow основан на каталоге Unity и Cloud Data Lake для объединения всех ваших данных и ресурсов ИИ в жизненном цикле машинного обучения:
- хранилище компонентов: автоматический поиск функций Databricks упрощает интеграцию и снижает ошибки.
- Обучение моделей: использовать мозаичный ИИ для обучения моделей или точной настройки базовых моделей.
- отслеживание: MLflow отслеживает обучение с помощью регистрации параметров, метрик и артефактов, для оценки и сравнения производительности модели.
- Реестр моделей: Реестр моделей MLflow, интегрированный с Каталогом Unity, централизует модели ИИ и артефакты.
- Развертывание моделей: Служба развертывания моделей Mosaic AI разворачивает модели на конечной точке REST API.
- Мониторинг : Mosaic AI Model Serving автоматически фиксирует запросы и ответы для мониторинга и отладки моделей. MLflow расширяет эти данные данными трассировки для каждого запроса.
Обучение модели
Модели MLflow находятся в основе разработки ИИ и машинного обучения в Databricks. Модели MLflow — это стандартный формат для упаковки моделей машинного обучения и агентов искусственного интеллекта. Стандартизованный формат гарантирует, что модели и агенты могут использоваться подчиненными инструментами и рабочими процессами в Databricks.
- Документация по MLflow — модели.
Databricks предоставляет функции для обучения различных типов моделей машинного обучения.
Отслеживание экспериментов
Databricks использует эксперименты MLflow как организационные единицы, чтобы отслеживать вашу работу при разработке моделей.
Отслеживание экспериментов позволяет регистрировать параметры, метрики, артефакты и версии кода во время обучения машинного обучения и разработки агента. Упорядочение журналов в эксперименты и запуски позволяет сравнивать модели, анализировать производительность и выполнять итерацию проще.
- отслеживание экспериментов с помощью Databricks.
- Общие сведения о запусках и отслеживанииэкспериментов см. в документации по MLflow.
Реестр моделей с каталогом Unity
Реестр моделей MLflow — это централизованный репозиторий моделей, пользовательский интерфейс и набор API для управления процессом развертывания модели.
Databricks интегрирует реестр моделей с каталогом Unity, чтобы обеспечить централизованное управление моделями. Интеграция каталога Unity позволяет получать доступ к моделям в рабочих областях, отслеживать происхождение моделей и обнаруживать модели для повторного использования.
- Управление моделями с помощью каталога Databricks Unity.
- Общие сведения о реестре моделей см. в документации по MLflow.
Обслуживание моделей
Служба моделей Databricks тесно интегрирована с реестром моделей MLflow и предоставляет унифицированный, масштабируемый интерфейс для развертывания, управления и запроса моделей ИИ. Каждая модель, которую вы обслуживаете, доступна как REST API, который можно интегрировать в веб-приложения или клиентские приложения.
Хотя они являются отдельными компонентами, служба моделей сильно зависит от реестра моделей MLflow для обработки управления версиями моделей, управления зависимостями, проверки и управления.
Разработка и оценка агента ИИ
Для разработки агента ИИ Databricks интегрируется с MLflow аналогично разработке моделей машинного обучения. Однако существует несколько ключевых различий:
- Чтобы создать агентов ИИ в Databricks, используйте Mosaic AI Agent Framework, который использует MLflow для отслеживания кода агентов, метрик производительности и трассировок агентов.
- Чтобы оценить агентов в Databricks, используйте оценку ИИ-агентов Mosaic, которая использует MLflow для отслеживания результатов оценки.
- Ведение журнала MLflow для агентов также включает функцию трассировки MLflow. Слежение MLflow позволяет просмотреть подробные сведения о выполнении служб агента. Трассировка записывает входные данные, выходные данные и метаданные, связанные с каждым промежуточным шагом запроса, что позволяет быстро найти источник неожиданного поведения в агентах.
На следующей схеме показано, как Databricks интегрируется с MLflow для создания и развертывания агентов ИИ.
Управляемый MLflow от Databricks, построенный на Unity Catalog и Cloud Data Lake, объединяет все ваши данные и ИИ-ресурсы в жизненном цикле генерирующих приложений ИИ.
- Хранилище векторных функций Vector &: автоматизированный поиск векторов и функций Databricks упрощает интеграцию и снижает вероятность ошибок.
- создать и оценить агентов ИИ: Платформа Mosaic AI Agent и Оценка Агента помогают создавать агентов и оценивать их выходные данные.
- отслеживание & мониторинг: трассировка MLflow записывает подробные сведения о выполнении агента для повышения наблюдаемости генеративного ИИ.
- Реестр моделей: Реестр моделей MLflow, интегрированный с Каталогом Unity, централизует модели ИИ и артефакты.
- Развертывание моделей: Служба развертывания моделей Mosaic AI разворачивает модели на конечной точке REST API.
- Мониторинг: MLflow автоматически записывает запросы и ответы для мониторинга и отладки моделей.
Функции MLflow с открытым исходным кодом по сравнению с управляемыми Databricks.
Для получения общей информации о концепциях MLflow, API и функциях, используемых как в версиях с открытым исходным кодом, так и в управляемых Databricks версиях, обратитесь к документации MLflow. Информацию о функциях, эксклюзивных для MLflow под управлением Databricks, см. в документации Databricks.
В следующей таблице перечислены основные различия между MLflow с открытым исходным кодом и управляемым MLflow Databricks и содержатся ссылки на документацию, которые помогут вам узнать больше:
Особенность | Доступность в MLflow с открытым исходным кодом | Доступность на платформе MLflow, управляемой Databricks |
---|---|---|
Безопасность | Пользователь должен предоставить свой собственный уровень управления безопасностью | Корпоративная безопасность Databricks |
Аварийное восстановление | Недоступный | Аварийное восстановление Databricks |
Отслеживание экспериментов | API отслеживания MLflow | API отслеживания MLflow, интегрированное с передовой системой отслеживания экспериментов Databricks |
Реестр моделей | реестр моделей MLflow | реестр моделей MLflow, интегрированный с каталогом Databricks Unity |
Интеграция каталога Unity | Интеграция открытого исходного кода с каталогом Unity | Каталог Unity от Databricks |
Развертывание модели | Пользовательские интеграции с внешними решениями обслуживания (SageMaker, Kubernetes, службы контейнеров и т. д.) | Сервис моделей Databricks и внешние решения для предоставления услуг |
Агенты ИИ | разработка LLM с использованием MLflow | Разработка MLflow LLM, интегрированная с Mosaic AI Agent Framework и Agent Evaluation |
Шифрование | Недоступный | Шифрование с использованием управляемых клиентом ключей |