Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Um sistema de Geração Retrieval-Augmented (RAG) tenta gerar a resposta mais relevante, consistente com o grounding dos documentos, em resposta à consulta do utilizador. A consulta de um utilizador desencadeia uma recuperação de pesquisa no corpus de documentos de grounding para fornecer contexto de grounding ao modelo de IA gerar uma resposta.
| Evaluator | Best practice | Use when | Purpose | Output |
|---|---|---|---|---|
| Document Retrieval | Process evaluation | A qualidade de recuperação é um gargalo para o seu RAG, e tem rótulos de relevância de consulta (verdade fundamental) para métricas precisas de qualidade de pesquisa para depuração e otimização de parâmetros | Mede métricas de qualidade de pesquisa (Fidelidade, NDCG, XDCG, Relevância Máxima, Buracos) comparando documentos recuperados com rótulos de verdade no terreno | Composto: Fidelidade, NDCG, XDCG, Relevância Máxima, Buracos (com Aprovado/Reprovado) |
| Retrieval | Process evaluation | Queres avaliar a qualidade textual do contexto recuperado, mas não tens verdades fundamentadas | Mede a relevância dos blocos de contexto recuperados para responder a uma consulta usando um juiz LLM | Binário: Aprovado/Reprovado com base no limiar (escala 1-5) |
| Groundedness | System evaluation | Queres uma definição de fundamento abrangente que funcione com inputs do agente, e traz os teus próprios modelos GPT como juiz do LLM | Mede quão bem a resposta gerada se alinha com o contexto dado sem fabricar conteúdo (aspeto de precisão) | Binário: Aprovado/Reprovado com base no limiar (escala 1-5) |
| Groundedness Pro (pré-visualização) | System evaluation | Quer uma definição rigorosa de fundamento baseada no Segurança de conteúdo de IA do Azure e utilize o nosso modelo de serviço | Deteta se a resposta é estritamente consistente com o contexto usando o serviço Segurança de conteúdo de IA do Azure | Binary: True/False |
| Relevance | System evaluation | Queres avaliar quão bem a resposta do RAG responde à questão, mas não tens verdades fundamentadas | Mede a precisão, completude e relevância direta da resposta à pergunta | Binário: Aprovado/Reprovado com base no limiar (escala 1-5) |
| Completude da Resposta (pré-visualização) | System evaluation | Quer garantir que a resposta do RAG não perca informações críticas (aspeto de recordação) da sua verdade no terreno | Mede até que ponto a resposta cobre completamente a informação esperada em comparação com a verdade no terreno | Binário: Aprovado/Reprovado com base no limiar (escala 1-5) |
Pense na solidez e na completude das respostas como:
- A Groundedness foca-se no aspeto de precisão da resposta. Não contém conteúdo fora do contexto de grounding.
- A completude da resposta foca-se no aspeto da recordação da resposta. Não perde informações críticas em comparação com a resposta esperada ou a verdade no terreno.
System evaluation
A avaliação do sistema examina a qualidade da resposta final no seu fluxo de trabalho RAG. Estes avaliadores garantem que o conteúdo gerado pela IA é preciso, relevante e completo com base no contexto fornecido e na consulta do utilizador:
- Fundamentação - A resposta está fundamentada no contexto fornecido sem fabricação?
- Groundedness Pro - A resposta segue estritamente o contexto (Segurança de conteúdo de IA do Azure)?
- Relevância - A resposta responde corretamente à questão do utilizador?
- Completude da Resposta (pré-visualização) - A resposta cobre toda a informação crítica a partir da verdade no terreno?
Examples:
Process evaluation
A avaliação de processos avalia a qualidade da etapa de recuperação de documentos nos sistemas RAG. O passo de recuperação é crucial para fornecer contexto relevante ao modelo de linguagem:
- Recuperação - Quão relevantes são os blocos de contexto recuperados para a consulta?
- Recuperação de Documentos - Quão bem corresponde a recuperação aos rótulos de verdade do terreno (requer qrels)?
Para mais exemplos, veja all amostras de avaliadores de qualidade.
Utilização de avaliadores RAG
Os avaliadores RAG avaliam quão bem os sistemas de IA recuperam e utilizam o contexto para gerar respostas fundamentadas. Cada avaliador requer mapeamentos de dados e parâmetros específicos:
| Evaluator | Required inputs | Required parameters |
|---|---|---|
| Groundedness |
response, context (recomendado); query opcional para pontuação melhorada; ou query, response para modo de resposta do agente |
deployment_name |
| Groundedness Pro (pré-visualização) |
query, response, context |
(none) |
| Relevance |
query, response |
deployment_name |
| Completude da Resposta (pré-visualização) |
ground_truth, response |
deployment_name |
| Retrieval |
query, context |
deployment_name |
| Document Retrieval |
retrieval_ground_truth, retrieved_documents |
(none) |
Example input
O seu conjunto de dados de teste deve conter os campos referenciados nos seus mapeamentos de dados:
{"query": "What are the store hours?", "context": "Our store is open Monday-Friday 9am-6pm and Saturday 10am-4pm.", "response": "The store is open weekdays from 9am to 6pm and Saturdays from 10am to 4pm."}
{"query": "What is the return policy?", "context": "Items can be returned within 30 days with original receipt for full refund.", "response": "You can return items within 30 days if you have your receipt."}
Context format
O context campo é uma cadeia simples que contém o contexto recuperado fornecido ao modelo. Para a recuperação de múltiplos blocos, concatene blocos numa única cadeia usando um separador, como \n\n entre blocos:
{"query": "What is the return policy?", "context": "Items can be returned within 30 days with receipt.\n\nGift items are eligible for store credit only.", "response": "You can return items within 30 days with your receipt."}
Note
Para avaliação de agentes com {{sample.output_items}}, o context campo é opcional se a resposta contiver mensagens de chamada de ferramenta — o avaliador pode extrair contexto dos resultados das chamadas de ferramenta.
Configuration example
Sintaxe do mapeamento de dados:
-
{{item.field_name}}Referências a campos do seu conjunto de dados de teste (por exemplo,{{item.query}}). -
{{sample.output_items}}Referências às respostas do agente geradas ou recolhidas durante a avaliação. Utilize-o ao avaliar com um alvo de agente ou uma fonte de dados de resposta de agente. Para avaliação de agentes,contexté opcional se a resposta contiver chamadas de ferramenta — o avaliador pode extrair contexto dos resultados das chamadas de ferramenta.
Tip
Para melhores resultados de Groundedness, forneça os três campos — query, response, e context. O query campo é opcional, mas melhora a precisão de pontuação quando disponível.
testing_criteria = [
{
"type": "azure_ai_evaluator",
"name": "groundedness",
"evaluator_name": "builtin.groundedness",
"initialization_parameters": {"deployment_name": model_deployment},
"data_mapping": {
"context": "{{item.context}}",
"response": "{{item.response}}",
},
},
{
"type": "azure_ai_evaluator",
"name": "relevance",
"evaluator_name": "builtin.relevance",
"initialization_parameters": {"deployment_name": model_deployment},
"data_mapping": {"query": "{{item.query}}", "response": "{{item.response}}"},
},
{
"type": "azure_ai_evaluator",
"name": "retrieval",
"evaluator_name": "builtin.retrieval",
"initialization_parameters": {"deployment_name": model_deployment},
"data_mapping": {"query": "{{item.query}}", "context": "{{item.context}}"},
},
]
Consulte Run evaluations from the SDK para detalhes sobre avaliações em execução e configuração de fontes de dados.
Example output
Estes avaliadores apresentam pontuações de 1 a 5, sendo 1 muito fraco e 5 excelente. O limite padrão de aprovação é 3. Pontuações com ou acima do limiar são consideradas aprovadas. Campos-chave de saída:
{
"type": "azure_ai_evaluator",
"name": "Groundedness",
"metric": "groundedness",
"score": 4,
"label": "pass",
"reason": "The response is well-grounded in the provided context without fabricating content.",
"threshold": 3,
"passed": true
}
O Groundedness Pro utiliza o serviço Segurança de conteúdo de IA do Azure e devolve um resultado booleano em vez de uma pontuação numérica:
{
"type": "azure_ai_evaluator",
"name": "Groundedness Pro",
"metric": "groundedness_pro",
"label": "pass",
"reason": "The response is strictly consistent with the provided context.",
"passed": true
}
Document retrieval
Devido ao seu papel a montante no RAG, a qualidade da recuperação é importante. Se a qualidade da recuperação for fraca e a resposta exigir conhecimento específico do corpus, há menos hipótese de o teu modelo de linguagem te dar uma resposta satisfatória. A medição mais precisa é usar o document_retrieval avaliador para avaliar a qualidade da recuperação e otimizar os seus parâmetros de pesquisa para o RAG.
O avaliador de recuperação de documentos mede quão bem o RAG recupera os documentos corretos do armazenamento de documentos. Como um avaliador composto útil para cenários RAG com verdade no terreno, calcula uma lista de métricas úteis de qualidade de pesquisa para depurar os seus pipelines RAG:
Metric Category Description Fidelity Search Fidelity Quão bem os primeiros n blocos recuperados refletem o conteúdo de uma dada consulta: número de bons documentos devolvidos do total de bons documentos conhecidos num conjunto de dados NDCG Search NDCG Quão bons são os rankings numa ordem ideal em que todos os itens relevantes estejam no topo da lista XDCG Search XDCG Quão bons são os resultados nos documentos top-k, independentemente da pontuação de outros documentos de índice Relevância máxima N Pesquisa Relevância Máxima Relevância máxima nos blocos top-k Holes Pesquisar Rótulo Sanidade Número de documentos com falta de relevância de consulta, julgamentos ou verdade fundamentada Para otimizar o seu RAG num cenário chamado varrimento de parâmetros, pode usar estas métricas para calibrar os parâmetros de pesquisa para obter os resultados ótimos do RAG. Gera diferentes resultados de recuperação para vários parâmetros de pesquisa, como algoritmos de pesquisa (vetor, semântica), top_k e tamanhos de blocos que gostas de testar. Depois, use
document_retrievalpara encontrar os parâmetros de pesquisa que produzem a maior qualidade de recuperação.
Exemplo de recuperação de documentos
testing_criteria = [
{
"type": "azure_ai_evaluator",
"name": "document_retrieval",
"evaluator_name": "builtin.document_retrieval",
"initialization_parameters": {
"ground_truth_label_min": 1, # SDK default: 0
"ground_truth_label_max": 5, # SDK default: 4
},
"data_mapping": {
"retrieval_ground_truth": "{{item.retrieval_ground_truth}}",
"retrieved_documents": "{{item.retrieved_documents}}",
},
},
]
Contém retrieval_ground_truth pontuações de relevância rotuladas por humanos por documento:
retrieval_ground_truth = [
{"document_id": "1", "query_relevance_label": 4},
{"document_id": "2", "query_relevance_label": 2},
]
Contém retrieved_documents as pontuações do seu sistema de pesquisa:
retrieved_documents = [
{"document_id": "2", "relevance_score": 45.1},
{"document_id": "6", "relevance_score": 35.8},
]
Saída de recuperação de documentos
O document_retrieval avaliador devolve múltiplas métricas para a qualidade da recuperação:
[
{
"type": "azure_ai_evaluator",
"name": "Document Retrieval",
"metric": "ndcg@3",
"score": 0.646,
"label": "pass",
"passed": true
},
{
"type": "azure_ai_evaluator",
"name": "Document Retrieval",
"metric": "fidelity",
"score": 0.019,
"label": "fail",
"passed": false
},
# more metrics...
]
O avaliador também devolve xdcg@3, top1_relevance, top3_max_relevance, holes, e holes_ratio métricas.