Habilitar medição: Infraestrutura de suporte
Este artigo detalha a infraestrutura necessária para medir a qualidade e como o Databricks a fornece. Medir a qualidade não é fácil e requer um investimento significativo em infraestruturas.
Registo detalhado de rastreio
O núcleo da lógica do seu aplicativo RAG é uma série de etapas na cadeia. Para avaliar e depurar a qualidade, você precisa implementar instrumentação que rastreie as entradas e saídas da cadeia, juntamente com cada etapa da cadeia e suas entradas e saídas associadas. A instrumentação implementada deve funcionar da mesma forma no desenvolvimento e na produção.
No Databricks, o MLflow Tracing fornece esse recurso. Com o MLflow Trace Logging, você instrumenta seu código na produção e obtém os mesmos rastreamentos durante o desenvolvimento e na produção. Os rastreamentos de produção são registrados como parte da Tabela de Inferência.
Interface do usuário de revisão das partes interessadas
Na maioria das vezes, como desenvolvedor, você não é um especialista em domínio no conteúdo do aplicativo que está desenvolvendo. Para coletar feedback de especialistas humanos que podem avaliar a qualidade de saída do seu aplicativo, você precisa de uma interface que permita que eles interajam com as versões iniciais do aplicativo e forneçam feedback detalhado. Além disso, você precisa de uma maneira de carregar saídas de aplicativos específicas para que as partes interessadas avaliem sua qualidade.
Essa interface deve rastrear as saídas do aplicativo e o feedback associado de forma estruturada, armazenando o rastreamento completo do aplicativo e o feedback detalhado em uma tabela de dados.
No Databricks, o aplicativo Agent Evaluation Review fornece esse recurso.
Estrutura métrica de qualidade, custo e latência
Você precisa de uma maneira de definir as métricas que medem de forma abrangente a qualidade de cada componente da sua cadeia e do aplicativo de ponta a ponta. Idealmente, a estrutura forneceria um conjunto de métricas padrão prontas para uso, além de oferecer suporte à personalização, para que você possa adicionar métricas que testam aspetos específicos de qualidade que são exclusivos do seu negócio.
No Databricks, a Avaliação de Agentes fornece uma implementação pronta para uso, usando modelos de juízes LLM hospedados, para as métricas de qualidade, custo e latência necessárias.
Arnês de avaliação
Você precisa de uma maneira rápida e eficiente de obter resultados de sua cadeia para cada pergunta em seu conjunto de avaliação e, em seguida, avaliar cada saída nas métricas relevantes. Este arnês deve ser o mais eficiente possível, uma vez que irá executar a avaliação após cada experiência que tentar melhorar a qualidade.
No Databricks, o Agent Evaluation fornece um conjunto de avaliação que é integrado ao MLflow.
Gestão do conjunto de avaliação
Seu conjunto de avaliação é um conjunto vivo e respirável de perguntas que você atualizará iterativamente ao longo do ciclo de vida de desenvolvimento e produção do seu aplicativo.
No Databricks, você pode gerenciar seu conjunto de avaliação como uma Tabela Delta. Ao avaliar com MLflow, o MLflow registrará automaticamente um instantâneo da versão do conjunto de avaliação usado.
Estrutura de acompanhamento de experimentos
Durante o desenvolvimento do seu aplicativo, você tentará muitos experimentos diferentes. Uma estrutura de acompanhamento de experimentos permite que você registre cada experimento e acompanhe suas métricas em comparação com outros experimentos.
No Databricks, o MLflow fornece recursos de rastreamento de experimentos.
Estrutura de parametrização de cadeia
Muitos experimentos que você tenta exigem que você mantenha o código da cadeia constante enquanto itera em vários parâmetros usados pelo código. Você precisa de uma estrutura que lhe permita fazer isso.
No Databricks, a configuração do modelo MLflow fornece esses recursos.
Monitorização online
Uma vez implantado, você precisa de uma maneira de monitorar a integridade do aplicativo e a qualidade, o custo e a latência contínuos.
No Databricks, o Model Serving fornece monitoramento da integridade do aplicativo e o Lakehouse Monitoring fornece saídas contínuas para um painel e monitora a qualidade, o custo e a latência.