Compartilhar via


MLflow para o agente de IA generativa e o ciclo de vida de modelos de ML

Este artigo descreve como o MLflow no Databricks é usado para desenvolver agentes de IA generativos de alta qualidade e modelos de machine learning.

Nota

Se você estiver apenas começando a usar o Azure Databricks, considere tentar o MLflow no Databricks Community Edition.

O que é o MLflow?

O MLflow é uma plataforma de software livre para desenvolver modelos e aplicativos de IA generativos. Ele tem os seguintes componentes primários:

  • Acompanhamento: Permite que você acompanhe experimentos para registrar e comparar parâmetros e resultados:
  • Modelos: permitir que você gerencie e implante modelos de várias bibliotecas de ML em várias plataformas de serviço e inferência de modelos.
  • Registro de Modelo: permite que você gerencie o processo de implantação de modelos desde o preparo até a produção, com recursos de controle de versão e anotação de modelo.
  • Avaliação e rastreamento do agente de IA: permite que você desenvolva agentes de IA de alta qualidade ajudando você a comparar, avaliar e solucionar problemas de agentes.

O MLflow dá suporte a APIs Java, Python, R e REST.

MLflow gerenciado pelo Databricks

O Databricks fornece uma versão totalmente gerenciada e hospedada do MLflow, com base na experiência de software livre para torná-la mais robusta e escalonável para uso corporativo.

O diagrama a seguir mostra como o Databricks se integra ao MLflow para treinar e implantar modelos de machine learning.

MLflow se integra ao Databricks para gerenciar o ciclo de vida de ML.

O MLflow gerenciado pelo Databricks é criado no Catálogo do Unity e no Cloud Data Lake para unificar todos os seus dados e ativos de IA no ciclo de vida do ML:

  1. Armazenamento de recursos: as buscas automatizadas de recursos do Databricks simplificam a integração e reduzem erros.
  2. Treinar modelos: usar a IA do Mosaico para treinar modelos ou ajustar modelos de base.
  3. Acompanhamento: o MLflow monitora o treinamento registrando parâmetros, métricas e artefatos para avaliar e comparar o desempenho do modelo.
  4. Registro de Modelo: O Registro de Modelo do MLflow, centralizado com o Unity Catalog, integra modelos e artefatos de IA.
  5. Model Serving: Mosaic AI Model Serving implanta modelos em um endpoint da API REST.
  6. Monitoramento: o Serviço de Modelo de IA do Mosaic captura automaticamente solicitações e respostas para monitorar e depurar modelos. O MLflow aumenta esses dados com dados de rastreamento para cada solicitação.

Treinamento de modelo

Os Modelos de MLflow estão no centro do desenvolvimento de IA e ML no Databricks. Os Modelos de MLflow são um formato padronizado para empacotar modelos de machine learning e agentes de IA generativos. O formato padronizado garante que modelos e agentes possam ser usados por ferramentas downstream e fluxos de trabalho no Databricks.

  • Documentação do MLflow – modelos .

O Databricks fornece recursos para ajudá-lo a treinar diferentes tipos de modelos de ML.

Acompanhamento de experimentos

O Databricks usa experimentos do MLflow como unidades organizacionais para acompanhar seu trabalho durante o desenvolvimento de modelos.

O acompanhamento de experimentos permite registrar e gerenciar parâmetros, métricas, artefatos e versões de código durante o treinamento de machine learning e o desenvolvimento de agente. Organizar logs em experimentos e execuções permite comparar modelos, analisar o desempenho e iterar com mais facilidade.

Registro de modelo com o Catálogo do Unity

O Registro de Modelo do MLflow é um repositório de modelo centralizado, uma interface do usuário e um conjunto de APIs para gerenciar o processo de implantação do modelo.

O Databricks integra o Registro de Modelos ao Catálogo do Unity para fornecer governança centralizada para modelos. A integração do Catálogo do Unity permite que você acesse modelos em workspaces, acompanhe a linhagem do modelo e descubra modelos para reutilização.

Serviço de Modelo

O Databricks Model Serving é fortemente integrado ao Registro de Modelo do MLflow e fornece uma interface unificada e escalonável para implantar, controlar e consultar modelos de IA. Cada modelo que você atende está disponível como uma API REST que pode ser integrada a aplicativos Web ou cliente.

Embora sejam componentes distintos, o Serviço de Modelo depende muito do Registro de Modelo do MLflow para lidar com o controle de versão do modelo, o gerenciamento de dependências, a validação e a governança.

Desenvolvimento e avaliação do agente de IA

Para desenvolvimento de agente de IA, o Databricks integra-se ao MLflow de forma semelhante ao desenvolvimento de modelo de ML. No entanto, há algumas diferenças importantes:

  • Para criar agentes de IA no Databricks, use a Estrutura do Agente de IA do Mosaic, usando o MLflow para acompanhar o código do agente, as métricas de desempenho e os rastreamentos do agente.
  • Para avaliar agentes no Databricks, use a Avaliação de Agentes de IA do Mosaic, que depende do MLflow para acompanhar os resultados da avaliação.
  • O acompanhamento de MLflow para agentes também inclui o Rastreamento de MLflow. O Rastreamento do MLflow permite que você veja informações detalhadas sobre a execução dos serviços do agente. O rastreamento registra as entradas, saídas e metadados associados a cada etapa intermediária de uma solicitação, permitindo que você localize rapidamente a fonte de comportamento inesperado em agentes.

O diagrama a seguir mostra como o Databricks se integra ao MLflow para criar e implantar agentes de IA.

O MLflow se integra ao Databricks para gerenciar o ciclo de vida do aplicativo genAI.

O MLflow gerenciado pelo Databricks é criado no Catálogo do Unity e no Cloud Data Lake para unificar todos os seus dados e ativos de IA no ciclo de vida do aplicativo genAI:

  1. Armazenamento de recursos e vetores: as buscas automatizadas de recursos do Databricks simplificam a integração e reduzem erros.
  2. Criar e avaliar agentes de IA: o Mosaic AI Agent Framework e a Avaliação do Agente ajudam você a criar agentes e avaliar a saída deles.
  3. Acompanhamento e rastreamento: o rastreamento do MLflow captura informações detalhadas de execução do agente para maior observabilidade de genAI.
  4. Registro de Modelos: o Registro de Modelos do MLflow, integrado ao Catálogo do Unity, centraliza os modelos e artefatos de IA.
  5. Serviço de Modelo: o Serviço de Modelo de IA do Mosaic implanta modelos em um ponto de extremidade da API REST.
  6. Monitoramento: o MLflow captura automaticamente solicitações e respostas para monitorar e depurar modelos.

Recursos de MLflow gerenciados por Software Livre versus Databricks

Para conhecer os conceitos gerais do MLflow, APIs e recursos compartilhados entre versões de software livre e gerenciadas pelo Databricks, consulte a Documentação do MLflow. Para obter recursos exclusivos do MLflow gerenciado pelo Databricks, consulte a documentação do Databricks.

A tabela a seguir destaca as principais diferenças entre o MLflow de software livre e o MLflow gerenciado pelo Databricks e fornece links de documentação para ajudá-lo a saber mais:

Característica Disponibilidade no MLflow de código aberto Disponibilidade no MLflow gerenciado pelo Databricks
Segurança O usuário deve fornecer sua própria camada de governança de segurança Segurança de nível empresarial do Databricks
Recuperação de desastre Indisponível Recuperação de desastres do Databricks
Acompanhamento de experimentos API de Acompanhamento do MLflow A API de Acompanhamento do MLflow integrada ao Acompanhamento de experimentos avançados do Databricks
Registro de Modelo Registro de Modelo do MLflow Registro de Modelo do MLflow integrado com o Databricks Unity Catalog
Integração do Catálogo do Unity Integração de software livre com o Catálogo do Unity Catálogo do Unity do Databricks
Implantação de modelo Integrações configuradas pelo usuário com soluções de serviço externo (SageMaker, Kubernetes, serviços de contêiner e assim por diante) Serviço de Modelo do Databricks e soluções de serviço externas
Agentes de IA Desenvolvimento de LLM do MLflow Desenvolvimento de LLM do MLflow com integração à Estrutura do Agente de IA do Mosaic e a Avaliação do Agente
Encriptação Indisponível Criptografia usando chaves gerenciadas pelo cliente