Enviar uma execução em lote e avaliar um fluxo
Importante
Os itens marcados (versão prévia) neste artigo estão atualmente em versão prévia pública. Essa versão prévia é fornecida sem um contrato de nível de serviço e não recomendamos isso para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou podem ter restrição de recursos. Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.
Para avaliar o desempenho do fluxo com um conjunto de dados grande, envie uma execução em lote e use um método de avaliação no prompt flow.
Neste artigo, você aprenderá a:
- Enviar uma execução em lote e usar um método de avaliação
- Exibir o resultado e as métricas da avaliação
- Iniciar uma nova rodada de avaliação
- Verificar o histórico de execuções em lote e comparar as métricas
- Entender os métodos de avaliação internos
- Maneiras de melhorar o desempenho do fluxo
Pré-requisitos
Para fazer uma execução em lote e usar um método de avaliação, você precisará dos seguintes itens:
- Um conjunto de dados de teste para execução em lote. O conjunto de dados deve estar em um destes formatos:
.csv
,.tsv
ou.jsonl
. Seus dados também devem incluir cabeçalhos que correspondam aos nomes de entrada do fluxo. Se as entradas de fluxo incluem uma estrutura complexa como uma lista ou um dicionário, use o formatojsonl
para representar os dados. - Uma sessão de computação disponível para executar sua execução em lote. Uma sessão de computação é um recurso baseado em nuvem que executa seu fluxo e gera resultados. Para saber mais sobre sessões de computação, consulte a sessão de computação.
Enviar uma execução em lote e usar um método de avaliação
Uma execução em lote permite que você execute seu fluxo com um grande conjunto de dados e gere saídas para cada linha de dados. Você também pode escolher um método de avaliação para comparar a saída do fluxo com determinados critérios e metas. Um método de avaliação é um tipo especial de fluxo que calcula as métricas para a saída do fluxo com base em diferentes aspectos. Uma execução de avaliação será feita para calcular as métricas quando enviadas com a execução em lote.
Para iniciar uma execução em lote com avaliação, selecione Avaliação personalizada no botão Avaliar. Ao selecionar a avaliação personalizada, você pode enviar uma execução em lote com métodos de avaliação ou enviar uma execução em lote sem avaliação para o fluxo.
Primeiro, você será solicitado a fornecer um nome descritivo e reconhecível a sua execução em lote. Você também pode escrever uma descrição e adicionar marcas (pares de chave-valor) à sua execução em lote. Depois de concluir a configuração, selecione Avançar para continuar.
Em segundo lugar, você deve selecionar ou fazer upload de um conjunto de dados com o qual deseja testar seu fluxo. Você também precisa selecionar uma sessão de computação disponível para executar essa execução em lote.
O fluxo de prompts também dá suporte ao mapeamento da entrada do fluxo para uma coluna de dados específica no seu conjunto de dados. Isso significa que você pode atribuir uma coluna a uma determinada entrada. Você deve atribuir uma coluna a uma entrada fazendo referência ao formato ${data.XXX}
. Se você deseja atribuir um valor constante a uma entrada, poderá digitar diretamente esse valor.
Em seguida, na próxima etapa, você poderá optar por usar um método de avaliação para validar o desempenho desse fluxo. Selecione diretamente o botão Avançar para ignorar essa etapa se não quiser aplicar nenhum método de avaliação ou não calcular nenhuma métrica. Caso contrário, caso deseje fazer a execução em lote com a avaliação agora, selecione um ou mais métodos de avaliação. A avaliação é iniciada após a conclusão da execução em lote. Você também pode iniciar outra rodada de avaliação após a conclusão da execução em lote. Para saber mais sobre como iniciar uma nova rodada de avaliação, confira Iniciar uma nova rodada de avaliação.
Na próxima etapa, na seção Mapeamento de entrada, você precisará especificar as fontes dos dados de entrada necessários para o método de avaliação. Por exemplo, a coluna ground truth pode vir de um conjunto de dados. Por padrão, a avaliação usa o mesmo conjunto de dados do conjunto de dados de teste fornecido para a execução testada. No entanto, se os rótulos correspondentes ou os valores de verdade de base de destino estiverem em um conjunto de dados diferente, você poderá alternar facilmente para esse.
- Se a fonte de dados for da saída da execução, a fonte será indicada como ${run.output.[OutputName]}
- Se a fonte de dados for do conjunto de dados de teste, a fonte será indicada como ${data.[ColumnName]}
Observação
Se sua avaliação não exigir dados do conjunto de dados, você não precisará fazer referência a nenhuma coluna de conjunto de dados na seção de mapeamento de entrada, indicando que a seleção do conjunto de dados é uma configuração opcional. A seleção do conjunto de dados não afetará o resultado da avaliação.
Se um método de avaliação utilizar Modelos de Linguagem Grande (LLMs) para medir o desempenho da resposta ao fluxo, você também deverá definir conexões para os nós LLM nos métodos de avaliação.
Em seguida, selecione Avançar para revisar as configurações e Enviar para iniciar a execução em lote com avaliação.
Exibir o resultado e as métricas da avaliação
Após o envio, você poderá encontrar a execução em lote enviada na guia da lista de execuções na página de fluxo de prompts. Selecione uma execução para navegar até a página de resultados da execução.
Na página de detalhes da execução, você pode selecionar Detalhes para verificar os detalhes dessa execução em lote.
Saída
Resultado básico e rastreamento
Em primeiro lugar, isso direcionará você para a guia Saída para exibir as entradas e saídas linha por linha. A página de guia de saída exibe uma lista de resultados da tabela, incluindo a ID da linha, a entrada, a saída, ostatus, as métricas do sistema e o tempo de criação.
Para cada linha, selecionar Rastreamento de exibição permite observar e depurar esse caso de teste específico em sua página detalhada de rastreamento.
Resultado e rastreamento da avaliação de acréscimo
Selecionar Acrescentar saída de avaliação permite selecionar execuções de avaliação relacionadas e você vê colunas acrescentadas no final da tabela mostrando o resultado da avaliação de cada linha de dados. Várias saídas de avaliação podem ser acrescentadas para comparação.
Você pode ver as métricas de avaliação mais recentes no painel de Visão geral à esquerda.
Visão geral essencial
No lado direito, a Visão Geral oferece informações gerais sobre a execução, como o número de execução por ponto de dados, o total de tokens e a duração da execução.
As métricas agregadas de execução de avaliação mais recentes são mostradas aqui por padrão, você pode selecionar Exibir a execução de avaliação para ir para exibir a própria execução de avaliação.
A visão geral pode ser expandida e recolhida aqui, e você pode selecionar Exibir informações completas, o que direcionará você para a guia Visão geral ao lado da guia Saída, onde estão contidas informações mais detalhadas da execução.
Iniciar uma nova rodada de avaliação
Se você já tiver concluído uma execução em lote, poderá iniciar outra rodada de avaliação para enviar uma nova execução de avaliação para calcular as métricas das saídas sem executar o fluxo novamente. Isso é útil e pode economizar seu custo para executar novamente o fluxo quando:
- Você não selecionou um método de avaliação para calcular as métricas ao enviar o teste em massa e decidiu fazer isso agora.
- Você já usou o método de avaliação para calcular uma métrica. Você pode iniciar outra rodada de avaliação para calcular outra métrica.
- Sua execução de avaliação falhou, mas o fluxo gerou saídas com sucesso. Você pode enviar sua avaliação novamente.
Acesse a guia Execuções do prompt flow. Em seguida, acesse a página de detalhes da execução em lote e selecione Avaliar para iniciar outra rodada de avaliação.
Depois de definir a configuração, selecione "Enviar" para esta nova rodada de avaliação. Após o envio, você poderá ver um novo registro na lista de execução do fluxo de prompts solicitado. Após a conclusão da execução da avaliação, da mesma forma, você pode verificar o resultado da avaliação na guia "Saída" do painel de detalhes da execução em lote. Selecione a nova execução de avaliação para exibir seu resultado.
Para saber mais sobre as métricas calculadas pelos métodos de avaliação internos, navegue para entender as métricas de avaliação internas.
Visão geral
Selecionar a guia Visão Geral mostra informações abrangentes sobre a execução, incluindo propriedades de execução, conjunto de dados de entrada, conjunto de dados de saída, marcas e descrição.
Logs
Selecionar a guia Logs permite exibir os logs de execução, o que pode ser útil para depuração detalhada de erros de execução. Você pode baixar os arquivos de log no computador local.
Instantâneo
Selecionar a guia Instantâneo mostra o instantâneo de execução. Você pode exibir o DAG do seu fluxo. Além disso, você tem a opção de Cloná-lo para criar um novo fluxo. Você também pode Implantá-lo como um ponto de extremidade online.
Verificar o histórico de execuções em lote e comparar as métricas
Em alguns cenários, você modificará seu fluxo para aprimorar o desempenho dele. Você pode enviar mais de uma execução em lote para comparar o desempenho do fluxo com versões diferentes. Você também pode comparar as métricas calculadas por diferentes métodos de avaliação para ver qual delas é mais adequada para seu fluxo.
Para verificar o histórico de execuções em lote do fluxo, escolha o botão Exibir execução em lote da página do fluxo. Você verá uma lista das execuções em lote enviadas a esse fluxo.
Você pode selecionar em cada execução em lote para verificar os detalhes. Selecione também várias execuções em lote e escolha Visualizar saídas para comparar as métricas e as saídas das execuções em lote.
No painel "Visualizar saída", a tabela Execuções e métricas mostra as informações das execuções selecionadas com realce. Outras execuções que recebem as saídas das execuções selecionadas como entrada também são listadas.
Na tabela "Saídas", você pode comparar as execuções em lote selecionadas por cada linha de amostra. Ao selecionar o ícone "visualização ocular" na tabela "Execuções e métricas", as saídas dessa execução serão acrescentadas à execução base correspondente.
Entender os métodos de avaliação internos
No fluxo de prompts, fornecemos vários métodos de avaliação internos para ajudar você a medir o desempenho da saída do fluxo. Cada método de avaliação calcula métricas diferentes. Confira a tabela a seguir para ver uma lista de métodos de avaliação internos e as respectivas descrições.
Método de avaliação | Métricas | Descrição | Conexão necessária | Entrada necessária | Valor da pontuação |
---|---|---|---|---|---|
Avaliação de precisão da classificação | Precisão | Mede o desempenho de um sistema de classificação comparando suas saídas com a verdade básica. | No | previsão, verdade básica | no intervalo [0, 1]. |
Avaliação pareada de pontuação de relevância de perguntas e respostas | Pontuação, vitória/perda | Avalia a qualidade das respostas geradas por um sistema de respostas a perguntas. Envolve atribuir pontuações de relevância a cada resposta com base em quão bem ela corresponde à pergunta do usuário, comparando diferentes respostas a uma resposta de linha de base e agregando os resultados para produzir métricas como taxas médias de vitórias e pontuações de relevância. | Sim | pergunta, resposta (nenhuma verdade básica ou contexto) | Pontuação: 0-100, vitória/perda: 1/0 |
Avaliação de fundamentação de perguntas e respostas | Fundamentação | Mede o grau de fundamentação das respostas previstas do modelo na fonte de entrada. Mesmo que as respostas do LLM sejam verdadeiras, se não forem verificáveis em relação à fonte, elas serão infundadas. | Yes | pergunta, resposta, contexto (nenhuma verdade básica) | 1 a 5, com 1 sendo o pior e 5 sendo o melhor. |
Avaliação de Similaridade do QnA GPT | Similaridade com o GPT | Mede a similaridade entre as respostas verdadeiras básicas fornecidas pelo usuário e a resposta prevista pelo modelo utilizando o modelo GPT. | Sim | pergunta, resposta, verdade básica (contexto não necessário) | no intervalo [0, 1]. |
Avaliação de relevância de perguntas e respostas | Relevância | Mede a relevância das respostas previstas do modelo para as perguntas feitas. | Yes | pergunta, resposta, contexto (nenhuma verdade básica) | 1 a 5, com 1 sendo o pior e 5 sendo o melhor. |
Avaliação de coerência de perguntas e respostas | Coerência | Mede a qualidade de todas as frases na resposta prevista de um modelo e como elas se adequam naturalmente. | Sim | pergunta, resposta (nenhuma verdade básica ou contexto) | 1 a 5, com 1 sendo o pior e 5 sendo o melhor. |
Avaliação de fluência de perguntas e respostas | Fluência | Mede o quão correta gramaticalmente e linguisticamente é a resposta prevista do modelo. | Yes | pergunta, resposta (nenhuma verdade básica ou contexto) | 1 a 5, com 1 sendo o pior e 5 sendo o melhor |
Avaliação de pontuações f1 de perguntas e respostas | Medida f | Mede a proporção do número de palavras compartilhadas entre a previsão do modelo e a verdade básica. | No | pergunta, resposta, verdade básica (contexto não necessário) | no intervalo [0, 1]. |
Avaliação de similaridade do Ada de perguntas e respostas | Similaridade do Ada | Calcula incorporações de nível de frase (documento) usando a API de incorporações do Ada para previsão e verdade básica. Em seguida, calcula a similaridade de cosseno entre eles (um número de ponto flutuante) | Yes | pergunta, resposta, verdade básica (contexto não necessário) | no intervalo [0, 1]. |
Maneiras de melhorar o desempenho do fluxo
Depois de verificar os métodos internos da avaliação, tente aprimorar o desempenho do fluxo seguindo estas etapas:
- Verifique os dados de saída para depurar qualquer falha potencial do fluxo.
- Modifique seu fluxo para melhorar o desempenho. Isso inclui, entre outros:
- Modificar o prompt
- Modificar a mensagem do sistema
- Modificar os parâmetros do fluxo
- Modificar a lógica do fluxo
Para saber mais sobre como construir um prompt que possa atingir sua meta, confira Introdução à engenharia de prompt, Técnicas de engenharia de prompt e Recomendações de modelo e estrutura de mensagem do sistema para LLMs (modelos de linguagem grandes).
Neste documento, você aprendeu como enviar uma execução em lote e utilizar um método de avaliação interno para medir a qualidade da saída do fluxo. Você também aprendeu a exibir o resultado e as métricas de avaliação e como iniciar uma nova rodada de avaliação com um método ou subconjunto diferente de variantes. Esperamos que este documento ajude você a aprimorar o desempenho do seu fluxo e atingir suas metas com o prompt flow.