agentes implantados com rastreamento
MLflow Tracing fornece observabilidade abrangente para agentes e aplicativos de produção do gen AI, capturando detalhes de execução que o senhor pode view na UI MLflow ou analisar como tabelas.
Databricks fornece um serviço de acompanhamento totalmente gerenciado e pronto para produção MLflow em todos os sites workspace. Quando o senhor define seu URI de acompanhamento para databricks
, os traços são armazenados e servidos com segurança por Databricks, sem nenhum banco de dados ou servidor de traços separado a ser implantado ou operado.
Como funciona o rastreamento da produção:
-
Seu aplicativo gera rastreamentos para cada chamada de API. Seu aplicativo pode ser executado no modelo de serviço (este guia) ou pode ser um aplicativo externo.
-
Os traços são registrados em um experimento em seu servidor de acompanhamento Databricks MLflow em tempo real e , opcionalmente, em tabelas Delta.
- Para o desenvolvimento, use os registros de rastreamento para MLflow experimentos.
- Para produção, use o registro de experimentos do MLflow e/ou o registro em tabelas Delta.
-
Analise e monitore os traços usando a interface do usuário do MLflow, o monitoramento de produção ou a avaliação personalizada.
implantado com o Agent Framework (recomendado)
Quando o senhor implanta aplicativos ou agentes GenAI que foram instrumentados com o MLflow Tracing por meio do Mosaic AI Agent Framework, o MLflow Tracing funciona automaticamente sem nenhuma configuração adicional. Esse é o método de implantação recomendado. Os rastreamentos são armazenados automaticamente no experimento MLflow do agente. Opcionalmente, os rastreamentos também podem ser copiados para tabelas Delta usando o monitoramento de produção.
O rastreamento da produção funciona para os aplicativos gen AI implantados dentro ou fora do site Databricks. Esta seção aborda o rastreamento de aplicativos implantados usando o modelo Databricks servindo. Para aplicativos implantados externamente, consulte Rastrear agentes implantados fora do site Databricks.
os passos para implantação
Primeiro, configure o (s) local (s) de armazenamento para rastreamentos:
- Se o senhor planeja usar o monitoramento de produção para armazenar traços nas tabelas Delta, certifique-se de que ele esteja ativado para o seu workspace.
- Crie um MLflow Experiment para armazenar os traços de produção do seu aplicativo.
Em seguida, no Notebook Python, instale seu agente com MLflow Tracing e use o Agent Framework para implantá-lo:
- Instale o
mlflow[databricks]
em seu ambiente Python. Use a versão mais recente. - Conecte-se ao experimento MLflow usando
mlflow.set_experiment(...)
. - Envolva o código do seu agente usando as interfaces de criação do Agent Framework. No código do agente, ative o MLflow Tracing usando instrumentação automática ou manual.
- Registre seu agente como um modelo MLflow e registre-o em Unity Catalog.
- Certifique-se de que
mlflow
esteja nas dependências Python do modelo, com a mesma versão de pacote usada no ambiente do Notebook. - Use
agents.deploy(...)
para implantar o modelo Unity Catalog (agente) em um modelo de serviço endpoint.
Os rastreamentos do seu agente agora aparecem no experimento do MLflow em tempo real.
Exemplo de notebook
O Notebook a seguir fornece um exemplo de implantação de um aplicativo gen AI simples usando o Agent Framework para log rastrear um experimento MLflow, usando os passos descritos acima.
Estrutura do agente e MLflow Tracing Notebook
implantado com serviço de CPU personalizado (alternativa)
Se não for possível implantar o agente usando o Agent Framework, esta seção explica como implantar o agente em Databricks usando o modelo de serviço de CPU personalizado. Caso contrário, vá para a próxima seção.
Primeiro, configure o (s) local (s) de armazenamento para rastreamentos:
- Se o senhor planeja usar o monitoramento de produção para armazenar traços nas tabelas Delta, certifique-se de que ele esteja ativado para o seu workspace.
- Crie um MLflow Experiment para armazenar os traços de produção do seu aplicativo.
Em seguida, no Notebook Python, instale seu agente com MLflow Tracing e use a UI servindo modelo ou APIs para implantar seu agente:
- Registre seu agente como um modelo MLflow. No código do agente, ative o MLflow Tracing usando instrumentação automática ou manual. No código do seu agente, certifique-se de que o rastreamento esteja ativado usando instrumentação automática ou manual.
- implantado o modelo para servir a CPU.
- provisionamento a entidade de serviço ou Personal access token (PAT) com acesso
CAN_EDIT
ao experimento MLflow. - Na página do endpoint de serviço da CPU, acesse "Edit endpoint." Para cada modelo implantado a ser rastreado, adicione a seguinte variável de ambiente:
ENABLE_MLFLOW_TRACING=true
MLFLOW_EXPERIMENT_ID=<ID of the experiment you created>
- Se o senhor provisionar uma entidade de serviço, defina
DATABRICKS_CLIENT_ID
eDATABRICKS_CLIENT_SECRET
. Se o senhor provisionar um PAT, definaDATABRICKS_HOST
eDATABRICKS_TOKEN
.
visualizar os rastros de produção
Depois que o agente for implantado, o senhor poderá view seus traços na UI do MLflow Experiments, assim como os traços do desenvolvimento. Esses traços de produção fornecem percepções valiosas sobre:
- Consultas reais de usuários e respostas de agentes - Veja exatamente o que os usuários estão perguntando e como seu agente responde
- Percepções de qualidade a partir do feedback do usuário - veja as classificações de polegar para cima/para baixo, comentários e outros feedbacks anexados aos traços de produção
- Taxas de erro e padrões de falha - Identifique quando e por que seu agente falha
- Padrões comportamentais - Entenda como os usuários interagem com seu agente e identifique oportunidades de melhoria
- Latência e desempenho métricas - Monitore os tempos de resposta e o desempenho do sistema na produção
- Uso de recurso e custos - Acompanhe o consumo de tokens e os custos associados
Registros de log para as tabelas Delta
Quando o agente estiver implantado, o senhor poderá, opcionalmente, log traces to Delta tables, além do seu experimento MLflow. Esse registro é suportado de duas maneiras:
- Tabelas de monitoramento de produção (recomendado ): Ative acessando o tab de monitoramento na experiência MLflow e selecionando um esquema Unity Catalog. O trabalho para sincronizar traços para uma execução da tabela Delta a cada ~15 minutos. O senhor não precisa ativar nenhum monitoramento métrico para que isso funcione. Os traços não têm limites de tamanho.
- AI Tabelas de inferência habilitadas para gateway: Ative editando as configurações do AI Gateway na página servindo modelo endpoint. Esteja ciente das limitações nos tamanhos dos traços e dos atrasos na sincronização dos rastreamentos com as tabelas.
Adicionar metadados aos rastreamentos
Após os trabalhos básicos de rastreamento, adicione metadados ou contexto para melhorar a depuração e as percepções. MLflow fornece tags e atributos padronizados para capturar informações contextuais importantes, inclusive:
- Solicitação de acompanhamento - Vincule os rastros a chamadas específicas do site API para depuração de ponta a ponta
- Sessões do usuário - Interações relacionadas ao grupo para entender as jornadas do usuário
- Dados do ambiente - Acompanhe qual implantação, versão ou região gerou cada rastreamento
- Feedback do usuário - Colete classificações de qualidade e vincule-as a interações específicas
Comece em Adicionar metadados e feedback do usuário aos traços.
Controle o uso e o custo dos tokens
Tanto no desenvolvimento quanto na produção, MLflow Tracing pode rastrear o uso de tokens de chamadas LLM, que podem ser utilizadas para compute custos. O rastreamento utiliza contagens de tokens retornadas pelas APIs do provedor LLM.
MLflow Tracing Suporta nativamente o uso de tokens acompanhamento para o modelo básicoDatabricks APIs chamado através do cliente OpenAI, bem como muitos outros provedores LLM, como OpenAI, LangChaine LangGraph. Posteriormente, o uso dos tokens pode ser consultado programaticamente, conforme o exemplo abaixo.
# Get aggregated token usage (if available)
token_usage = trace.info.token_usage
if token_usage:
print(f"Input tokens: {token_usage.get('input_tokens')}")
print(f"Output tokens: {token_usage.get('output_tokens')}")
print(f"Total tokens: {token_usage.get('total_tokens')}")
Consulte as informações sobre o uso de tokens para obter mais detalhes.
O MLflow Tracing permite instrumentar um agente ou aplicativo específico. Para monitoramento em toda a sua plataforma AI, o GatewayAI fornece governança do endpoint de serviço compartilhado. Consulte AI Gateway usage acompanhamento para registrar o uso de tokens no nível da plataforma nas tabelas do sistema.
compute É possível utilizar essas contagens de tokens para calcular os custos, com base no programa de preços do provedor LLM. Lembre-se de que muitos provedores cobram taxas diferentes para tokens de entrada e saída.
Limitações
O registro de traços nos experimentos do MLflow e nas tabelas de monitoramento de produção tem limites no número de traços e na carga de pico. Se você precisar armazenar mais de 100 mil rastreamentos por experimento ou tiver um pico de carga de > 60 consultas por segundo (QPS), use este formulário para solicitar um aumento.
Próximas etapas
- Adicione metadados aos rastros, incluindo IDs de usuário ou de sessão, tags personalizado ou feedback do usuário para melhor depuração e percepções
- Avalie e monitore seu agente usando scorers, conjunto de dados de avaliação e monitoramento de produção
referências de recursos
Para obter detalhes sobre os conceitos e recursos deste guia, consulte:
- Rastreando detalhes da implantação - Detalhes sobre como rastrear as opções de implantação
- Modelo de dados de rastreamento - Detalhes sobre traços, extensões e atributos
- Avaliações de registro - Entenda como o feedback é armazenado e usado