Monitoramento de modelo para aplicações generativas de IA (visualização)
A monitorização de modelos em produção é uma parte essencial do ciclo de vida da IA. Mudanças nos dados e no comportamento do consumidor podem influenciar sua aplicação de IA generativa ao longo do tempo, resultando em sistemas desatualizados que afetam negativamente os resultados dos negócios e expõem as organizações a riscos de conformidade, econômicos e de reputação.
Importante
O monitoramento de modelos para aplicações generativas de IA está atualmente em visualização pública. Essas visualizações são fornecidas sem um contrato de nível de serviço e não são recomendadas para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.
O monitoramento de modelo do Azure Machine Learning para aplicativos de IA generativa torna mais fácil para você monitorar seus aplicativos LLM em produção para segurança e qualidade em uma cadência para garantir que esteja proporcionando o máximo impacto nos negócios. Em última análise, o monitoramento ajuda a manter a qualidade e a segurança de suas aplicações de IA generativa. Os recursos e integrações incluem:
- Colete dados de produção usando o coletor de dados Modelo.
- Métricas de avaliação de IA responsável, como fundamentação, coerência, fluência, relevância e semelhança, que são interoperáveis com as métricas de avaliação de fluxo de prompt do Azure Machine Learning.
- Capacidade de configurar alertas de violações com base em metas organizacionais e executar o monitoramento de forma recorrente
- Consuma resultados em um painel avançado em um espaço de trabalho no estúdio do Azure Machine Learning.
- Integração com métricas de avaliação de fluxo de prompt do Azure Machine Learning, análise de dados de produção coletados para fornecer alertas oportunos e visualização das métricas ao longo do tempo.
Para obter os conceitos básicos gerais de monitoramento de modelo, consulte Monitoramento de modelo com o Azure Machine Learning (visualização). Neste artigo, você aprenderá a monitorar um aplicativo de IA generativo apoiado por um endpoint online gerenciado. Os passos que você toma são:
- Configurar pré-requisitos
- Crie o seu monitor
- Confirmar o status de monitoramento
- Consumir resultados de monitoramento
Métricas de avaliação
As métricas são geradas pelos seguintes modelos de linguagem GPT de última geração configurados com instruções de avaliação específicas (modelos de prompt) que atuam como modelos de avaliador para tarefas seqüenciais. Esta técnica mostrou fortes resultados empíricos e alta correlação com o julgamento humano quando comparada às métricas padrão de avaliação generativa da IA. Forme mais informações sobre avaliação de fluxo de prompt, consulte Enviar teste em massa e avaliar um fluxo (visualização) para obter mais informações sobre avaliação de fluxo de prompt.
Esses modelos GPT são suportados e serão configurados como seu recurso do Azure OpenAI:
- GPT-3.5 Turbo
- GPT-4
- GPT-4-32K
As métricas a seguir são suportadas. Para obter informações mais detalhadas sobre cada métrica, consulte Monitoramento de descrições de métricas de avaliação e casos de uso
- Fundamentação: avalia o quão bem as respostas geradas pelo modelo se alinham com as informações da fonte de entrada.
- Relevância: avalia até que ponto as respostas geradas pelo modelo são pertinentes e estão diretamente relacionadas com as questões dadas.
- Coerência: avalia até que ponto o modelo linguístico pode produzir fluxos de saída sem problemas, lê-se naturalmente e assemelha-se a uma linguagem semelhante à humana.
- Fluência: avalia a proficiência linguística da resposta prevista de uma IA generativa. Ele avalia o quão bem o texto gerado adere às regras gramaticais, estruturas sintáticas e uso apropriado do vocabulário, resultando em respostas linguisticamente corretas e com sonoridade natural.
- Similaridade: avalia a semelhança entre uma sentença de verdade fundamentada (ou documento) e a sentença de previsão gerada por um modelo de IA.
Requisitos de configuração métrica
As seguintes entradas (nomes de colunas de dados) são necessárias para medir a segurança da geração e a qualidade:
- prompt text - o prompt original fornecido (também conhecido como "entradas" ou "pergunta")
- texto de conclusão - a conclusão final da chamada de API que é retornada (também conhecida como "saídas" ou "resposta")
- texto de contexto - quaisquer dados de contexto enviados para a chamada de API, juntamente com o prompt original. Por exemplo, se você espera obter resultados de pesquisa apenas de certas fontes de informação certificadas/site, você pode definir nas etapas de avaliação. Esta é uma etapa opcional que pode ser configurada através do fluxo de prompt.
- texto de verdade fundamental - o texto definido pelo usuário como a "fonte da verdade" (opcional)
Quais parâmetros são configurados em seu ativo de dados dita quais métricas você pode produzir, de acordo com esta tabela:
Métrica | Pedido | Conclusão | Contexto | Verdade fundamental |
---|---|---|---|---|
Coerência | Obrigatório | Obrigatório | - | - |
Fluência | Obrigatório | Obrigatório | - | - |
Fundamentação | Obrigatório | Obrigatório | Obrigatório | - |
Relevância | Obrigatório | Obrigatório | Obrigatório | - |
Semelhança | Obrigatório | Obrigatório | - | Obrigatório |
Pré-requisitos
- Recurso do Azure OpenAI: você deve ter um recurso do Azure OpenAI criado com cota suficiente. Este recurso é usado como seu ponto final de avaliação.
- Identidade gerenciada: crie uma UAI (Identidade gerenciada atribuída ao usuário) e anexe-a ao seu espaço de trabalho usando as orientações em Anexar identidade gerenciada atribuída ao usuário usando a CLI v2com acesso de função suficiente, conforme definido na próxima etapa.
- Acesso à função Para atribuir uma função com as permissões necessárias, você precisa ter a permissão de proprietário ou Microsoft.Authorization/roleAssignments/write em seu recurso. A atualização de conexões e permissões pode levar vários minutos para entrar em vigor. Estas funções adicionais devem ser atribuídas ao seu UAI:
- Recurso: Espaço de trabalho
- Função: Cientista de Dados do Azure Machine Learning
- Conexão de espaço de trabalho: seguindo estas diretrizes, você usa uma identidade gerenciada que representa as credenciais para o ponto de extremidade do Azure OpenAI usado para calcular as métricas de monitoramento. NÃO exclua a conexão uma vez que ela é usada no fluxo.
- Versão da API: 2023-03-15-preview
- Implantação de fluxo de prompt: crie um tempo de execução de fluxo de prompt seguindo esta diretriz, execute seu fluxo e verifique se a implantação está configurada usando este artigo como um guia
- Entradas de fluxo e saídas: Você precisa nomear suas saídas de fluxo adequadamente e lembrar esses nomes de coluna ao criar seu monitor. Neste artigo, usamos o seguinte:
- Entradas (obrigatório): "prompt"
- Saídas (obrigatório): "conclusão"
- Saídas (opcional): "contexto" | "Verdade fundamental"
- Coleta de dados: na "Implantação" (Etapa #2 do assistente de implantação de fluxo de prompt), a alternância 'coleta de dados de inferência' deve ser habilitada usando o Model Data Collector
- Saídas: Em Saídas (Etapa #3 do assistente de implantação de fluxo de prompt), confirme se você selecionou as saídas necessárias listadas acima (por exemplo, conclusão | contexto | ground_truth) que atendem aos seus requisitos de configuração métrica
- Entradas de fluxo e saídas: Você precisa nomear suas saídas de fluxo adequadamente e lembrar esses nomes de coluna ao criar seu monitor. Neste artigo, usamos o seguinte:
Nota
Se sua instância de computação estiver atrás de uma rede virtual, consulte Isolamento de rede no fluxo de prompt.
Crie o seu monitor
Crie seu monitor na página Visão geral do monitoramento
Definir configurações básicas de monitoramento
No assistente de criação de monitoramento, altere o tipo de tarefa do modelo para solicitar a conclusão de T& , conforme mostrado por (A) na captura de tela.
Configurar ativo de dados
Se você tiver usado o Model Data Collector, selecione seus dois ativos de dados (entradas e saídas).
Selecionar sinais de monitorização
- Configure a conexão do espaço de trabalho (A) na captura de tela.
- Insira o nome de implantação do avaliador do Azure OpenAI (B).
- (Opcional) Junte-se às entradas e saídas dos dados de produção: as entradas e saídas do modelo de produção são automaticamente unidas pelo serviço de monitoramento (C). Você pode personalizar isso se necessário, mas nenhuma ação é necessária. Por padrão, a coluna de junção é correlationid.
- (Opcional) Configurar limites métricos: uma pontuação aceitável por instância é fixada em 3/5. Pode ajustar a sua taxa de aprovação global aceitável em % entre o intervalo [1,99] %
Insira manualmente os nomes das colunas a partir do fluxo de prompt (E). Os nomes padrão são ("prompt" | "conclusão" | "contexto" | "ground_truth"), mas você pode configurá-lo de acordo com seu ativo de dados.
(facultativo) Definir taxa de amostragem (F)
Configurar as notificações
nenhuma ação necessária. Você pode configurar mais destinatários, se necessário.
Confirmar a configuração do sinal de monitoramento
Quando configurado com êxito, o monitor deve ter esta aparência:
Confirmar o status de monitoramento
Se configurado com êxito, seu trabalho de pipeline de monitoramento mostra o seguinte:
Consumir resultados
Página de visão geral do monitor
A visão geral do monitor fornece uma visão geral do desempenho do sinal. Você pode entrar na página de detalhes do sinal para obter mais informações.
Página de detalhes do sinal
A página de detalhes do sinal permite visualizar métricas ao longo do tempo (A) e visualizar histogramas de distribuição (B).
Resolver alertas
Só é possível ajustar os limites de sinal. A pontuação aceitável é fixada em 3/5, e só é possível ajustar o campo 'taxa de aprovação global aceitável'.