Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Importante
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 ter recursos restritos. Para obter mais informações, consulte Supplemental Terms of Use for Microsoft Azure Previews.
Essa extensão Azure DevOps permite a avaliação offline de Microsoft Foundry Agents em seus pipelines de CI/CD. Ele simplifica o processo de avaliação offline, para que você possa identificar possíveis problemas e fazer melhorias antes de lançar uma atualização para a produção.
Para usar essa extensão, forneça um conjunto de dados com consultas de teste e uma lista de avaliadores. Essa tarefa invoca seus agentes com as consultas, as avalia e gera um relatório de resumo.
Características
- Agent Evaluation: Automatize a avaliação de pré-produção dos agentes Microsoft Foundry no fluxo de trabalho de CI/CD.
- Avaliadores: use qualquer avaliador do catálogo de avaliadores do Foundry.
- Análise Estatística: os resultados da avaliação incluem intervalos de confiança e teste de significância estatística para determinar se as alterações são significativas e não devido à variação aleatória.
Categorias de avaliador
- Avaliadores de agentes: avaliadores de processos e de nível de sistema para fluxos de trabalho dos agentes.
- Avaliadores RAG: Avaliam os processos de ponta a ponta e de recuperação em sistemas RAG.
- Avaliadores de risco e segurança: avalie os riscos e as preocupações com a segurança nas respostas.
- Avaliadores de finalidade geral: avaliação de qualidade, como coerência e fluência.
- Avaliadores baseados em OpenAI: Use avaliadores OpenAI, incluindo verificação de string, similaridade de texto, modelo de pontuação/rótulo.
- Avaliadores Personalizados: defina seus próprios avaliadores personalizados usando código Python ou padrões LLM-as-a-judge.
Pré-requisitos
- Um projeto. Para saber mais, confira Criar um projeto.
- Um agente do Foundry.
- A extensão AI Agent Evaluation instalada em sua organização Azure DevOps.
Dica
O método de autenticação recomendado é Microsoft Entra ID por meio de uma conexão de serviço Azure Resource Manager. Crie uma conexão de serviço no seu projeto Azure DevOps e, em seguida, referencie-a em seu pipeline usando a tarefa AzureCLI@2 antes de AIAgentEvaluation@2.
Entradas
Parâmetros
| Nome | Necessário? | Descrição |
|---|---|---|
| azure-ai-project-endpoint | Sim | Ponto de extremidade do Projeto Microsoft Foundry. Para encontrar esse valor, abra seu projeto no portal do Foundry e copie o ponto de extremidade da página Visão geral . |
| nome da implantação | Sim | O nome de uma implantação de modelo de IA Azure a ser usada para avaliação. Encontre as implantações existentes em Modelos + endpoints no portal do Foundry. |
| caminho de dados | Sim | Caminho para o arquivo de dados que contém os avaliadores e as consultas de entrada para avaliações. |
| ids de agente | Sim | ID de um ou mais agentes a serem avaliados em formato agent-name:version (por exemplo, my-agent:1 ou my-agent:1,my-agent:2). Vários agentes são separados por vírgula e comparados com os resultados do teste estatístico. |
| baseline-agent-id | Não | ID do agente de linha de base com a qual comparar ao avaliar vários agentes. Se não for fornecido, o primeiro agente será usado. |
Nota
Para localizar a ID e a versão do agente, abra seu projeto no portal do Foundry, acesse Agentes, selecione seu agente e copie a ID do Agente no painel de detalhes. A versão é o número da versão da implantação (por exemplo, my-agent:1).
Arquivo de dados
O arquivo de dados de entrada deve ser um arquivo JSON com a seguinte estrutura:
| Campo | Tipo | Necessário? | Descrição |
|---|---|---|---|
| Nome | cadeia | Sim | Nome do conjunto de dados de avaliação. |
| avaliadores | string[] | Sim | Lista de nomes de avaliadores a serem usados. Confira a lista de avaliadores disponíveis no catálogo de avaliadores do seu projeto no portal Foundry: Catálogo de Avaliadores > de Build >. |
| dados | objeto[] | Sim | Matriz de objetos de entrada, com query e campos de avaliador opcionais, como ground_truth, context. Automatizada para avaliadores; use data_mapping para substituir. |
| openai_graders | objeto | Não | Configuração para avaliadores baseados em OpenAI (label_model, score_model, string_check etc.). |
| evaluator_parameters | objeto | Não | Parâmetros de inicialização específicos do avaliador (por exemplo, limites, configurações personalizadas). |
| mapeamento de dados | objeto | Não | Mapeamentos de campo de dados personalizados (gerados automaticamente de dados, se não fornecidos). |
Arquivo de dados de exemplo básico
{
"name": "test-data",
"evaluators": [
"builtin.fluency",
"builtin.task_adherence",
"builtin.violence"
],
"data": [
{
"query": "Tell me about Tokyo disneyland"
},
{
"query": "How do I install Python?"
}
]
}
Arquivos de dados de exemplo adicionais
| Nome do Arquivo | Descrição |
|---|---|
| dataset-tiny.json | Conjunto de dados com um pequeno número de consultas de teste e avaliadores. |
| dataset.json | Conjunto de dados com todos os tipos de avaliador compatíveis e consultas suficientes para cálculo de intervalo de confiança e teste estatístico. |
| dataset-builtin-evaluators.json | Exemplo de avaliadores internos do Foundry (por exemplo, coerência, fluência, relevância, fundamentação, métricas). |
| dataset-openai-graders.json | Exemplo de classificadores baseados em OpenAI (modelos de rótulo, modelos de pontuação, similaridade de texto, verificações de cadeia de caracteres). |
| dataset-custom-evaluators.json | Exemplo de avaliadores personalizados com parâmetros de avaliador. |
| dataset-data-mapping.json | Exemplo de mapeamento de dados mostrando como substituir mapeamentos automáticos de campo com nomes de coluna de dados personalizados. |
Exemplo de pipeline
Para usar essa extensão, adicione a tarefa AIAgentEvaluation@2 ao pipeline do Azure. O exemplo a seguir mostra um pipeline completo que se autentica usando uma conexão de serviço Azure Resource Manager e avalia um agente.
steps:
- task: AIAgentEvaluation@2
displayName: "Evaluate AI Agents"
inputs:
azure-ai-project-endpoint: "$(AzureAIProjectEndpoint)"
deployment-name: "$(DeploymentName)"
data-path: "$(System.DefaultWorkingDirectory)/path/to/your/dataset.json"
agent-ids: "$(AgentIds)"
Resultados e saídas de avaliação
Você verá os resultados da avaliação no resumo do pipeline Azure DevOps. O relatório mostra as pontuações de avaliação para cada métrica, intervalos de confiança e - quando você avalia vários agentes - uma comparação estatística emparelhada que indica se as diferenças são significativas ou dentro da variação aleatória.
A captura de tela a seguir mostra um relatório de exemplo comparando dois agentes.