Criação de avaliações personalizadas com o LLM como avaliador
Você pode criar avaliações personalizadas para recursos de modelos de prompts utilizando um modelo de linguagem de grande porte (LLM) como avaliador, a fim de analisar as respostas geradas em relação aos critérios que você definir. Com o LLM como avaliador, você pode criar métricas específicas para cada domínio para os modelos de prompt em projetos e espaços de implantação.
O LLM, na função de avaliador, oferece avaliações personalizadas para os seguintes tipos de ativos e tarefas:
- Recursos de modelos de prompt (PTA)
- Recursos de modelos de prompt independentes (DPTA)
- Geração aumentada por recuperação
- Sumarização
- Resposta à pergunta
- Geração
- Classificação
- Extração
Com o LLM atuando como avaliador, um modelo de base avalia a qualidade das respostas geradas utilizando uma lógica de classificação personalizada definida por você. Você pode configurar o avaliador para usar um modelo de avaliação compatível, definir instruções para o avaliador, mapear variáveis das instruções para seus dados de entrada e atribuir valores de pontuação.
Durante a execução, o monitor personalizado recupera o LLM como um avaliador de juiz e uma configuração de métricas, lê os dados de entrada provenientes do registro de carga útil ou dos dados de feedback, calcula métricas no nível do registro, agrega os resultados e publica os resultados das métricas.
Você pode usar um dos métodos a seguir para gerenciar avaliações personalizadas com o LLM atuando como avaliador:
- Gerenciamento de avaliações personalizadas com o SDK do Python
- Gerenciamento de avaliações personalizadas por meio da interface do usuário
Gerenciamento de avaliações personalizadas com o SDK do Python
Para gerenciar avaliações personalizadas com o SDK do Python, você pode usar o setup_llm_judge_configuration método para automatizar a configuração do monitor personalizado, do avaliador, da assinatura, da instância do monitor e do conjunto de dados personalizado.
O setup_llm_judge_configuration método realiza as seguintes tarefas em uma única chamada:
- Cria a definição do monitor personalizado
- Cria ou reutiliza a configuração do provedor LLM
- Cria a assinatura do seu modelo de prompt
- Cria a instância do monitor
- Configura o conjunto de dados personalizado para armazenar os resultados da avaliação
Para utilizar este método, forneça as seguintes informações:
- Configuração do provedor LLM
- Configuração personalizada de métricas de monitoramento
- Nomes e descrições personalizados de métricas
- Limites de avaliação
- Sugestões do avaliador
- Escalas de classificação
- Mapeamentos de variáveis
Para usar o setup_llm_judge_configuration método, execute o seguinte:
result = wos_client.custom_monitor.setup_llm_judge_configuration(config=llmaj_config)
result
Criar uma configuração de provedor LLM
Configure o modelo de avaliação que analisa os resultados gerados.
Os tipos de provedor a seguir são suportados:
openaiwatsonx
O exemplo a seguir mostra uma configuração de provedor de LLM:
LLM_PROVIDER_CONFIG = {
"API_KEY": "<your-openai-api-key>",
"type": "openai",
"MODEL_NAME": "gpt-4"
}
Criar uma configuração personalizada do monitor
Defina métricas personalizadas especificando a lógica de avaliação no prompt do avaliador, nas opções de avaliação, nos mapeamentos de variáveis do prompt e no tipo de fonte de dados utilizado para a avaliação.
O exemplo a seguir mostra uma configuração personalizada do monitor:
MONITOR_METRICS = [
{
"name": "answer_completeness",
"description": "Evaluates whether the AI response fully addresses the question",
"computation": {
"prompt": """You are an expert grader. Evaluate the completeness of the response.
**Question:** {input}
**AI Response:** {output}
Determine if the response is complete using this scale:
- complete: Thoroughly addresses all parts
- partial: Addresses some parts but missing key information
- incomplete: Fails to address the question
""",
"grading_options": [
{"name": "complete", "value": 1.0},
{"name": "partial", "value": 0.5},
{"name": "incomplete", "value": 0.0}
]
},
"grader_prompt_variables_mapping": {
"input": "question",
"output": "answer"
},
"dataset_type": "feedback"
}
]
llmaj_config["CUSTOM_MONITOR_CONFIG"] = {
"CUSTOM_MONITOR_NAME": "rag_quality",
"MONITOR_METRICS": MONITOR_METRICS
}
Entendendo os componentes de métricas personalizadas
A configuração personalizada do monitor inclui os seguintes componentes:
name- Especifica um identificador exclusivo para a métrica, utilizado em relatórios e APIs.
description- Descreve o que a métrica avalia.
prompt- Especifica a instrução enviada ao juiz do LLM.
grading_options- Define os possíveis resultados da avaliação e os valores numéricos das pontuações.
grader_prompt_variables_mapping- Os mapas substituem as variáveis de espaço reservado por nomes de colunas no conjunto de dados de avaliação.
dataset_type- Especifica o tipo de fonte de dados utilizada para a avaliação, como
feedbackoupayload_logging.
Os nomes dos espaços reservados no prompt do avaliador devem corresponder às chaves na grader_prompt_variables_mapping seção, e os nomes das colunas mapeadas devem existir no conjunto de dados de avaliação selecionado.
Avalie métricas personalizadas com notebooks de exemplo
Para ver exemplos de implementação, consulte os seguintes notebooks:
Gerenciamento de avaliações personalizadas por meio da interface do usuário
Você pode criar e executar avaliações personalizadas com o LLM atuando como avaliador a partir da experiência de avaliação de modelos de prompt.
Adicionar um grupo de métricas
Para criar um grupo de métricas para as avaliações do LLM como juiz, siga estas etapas:
Na tela de dimensões do modelo de prompt, em Avaliações personalizadas, clique em Adicionar grupo de métricas ou Gerenciar grupos de métricas.
Clique em “Configurar novo grupo ”.
Digite um nome para o grupo de métricas e clique em Aplicar.
O nome deve ter no máximo 48 caracteres.
Selecione “LLM-as-Judge” como técnica de avaliação.
Clique no ícone Editar no bloco “Tipos de modelo a serem suportados”, selecione um ou mais tipos de modelo e clique em Avançar.
Ative o cronograma de avaliação e especifique o intervalo. Clique em “Avançar ” e, em seguida, clique em “Salvar ”.
Clique no ícone “Adicionar métrica” para criar métricas personalizadas.
Forneça os seguintes detalhes:
- Nome da Métrica
- ID da métrica
- Tipo de limite
- Tipo de algoritmo do modelo
Clique em “Criar instruções para o avaliador”, insira as instruções no editor de modelos, defina a lista de notas na seção “Notas ” e clique em “Salvar ”.
Configurar e avaliar um grupo de métricas
Para realizar uma avaliação, siga estas etapas:
Abra um modelo de prompt.
- Para projetos, abra um DPTA ou PTA na guia Ativos e clique em Avaliar na guia Avaliações para abrir o assistente de modelo de solicitação de avaliação.
- Para os espaços de implantação, abra uma implantação e clique em Avaliar na guia Avaliações para abrir o assistente de modelo de prompt de avaliação.
Na tela de dimensões do modelo de prompt, selecione o grupo de métricas que você criou em Avaliações personalizadas.
Em Configurações avançadas, selecione o grupo de métricas e clique no ícone Editar no bloco Mecanismo de pontuação ( LLMaaJ ).
Selecione um juiz LLM já existente. Se não houver nenhum juiz LLM, crie um.
Para criar um novo provedor de LLM, clique em “Adicionar” e especifique os detalhes do provedor, incluindo nome, descrição,
evaluator_typechave de API e detalhes do modelo. Em seguida, clique em Salvar.Use os botões de alternância para ativar as métricas que deseja avaliar, configure os valores limite e selecione o tipo de conjunto de dados a ser avaliado. Clique em Avançar.
Selecione o conjunto de dados de teste e mapeie os seguintes campos:
- Campos de entrada e saída sob o prompt “Map” mapeiam variáveis para colunas
- Variáveis de prompt do Grader para as colunas correspondentes no conjunto de dados de feedback ou de registro de carga útil
Clique em “Avançar ” e, em seguida, clique em “Avaliar ”.
Análise dos resultados da avaliação
Quando a avaliação for concluída, você poderá consultar um resumo dos resultados na guia “Avaliações” em watsonx.governance para obter informações sobre o desempenho do LLM.
O resumo apresenta uma visão geral das pontuações das métricas e das violações dos limites de pontuação padrão nas avaliações do seu modelo de prompt. 
Para analisar os resultados, você pode clicar na seta ao lado da avaliação do seu modelo de prompt para visualizar gráficos dos resultados ao longo do tempo. Clique em um ponto no tempo no gráfico para visualizar as métricas por registro. 
Para analisar uma transação específica, clique em uma linha da tabela de métricas por registro para abrir os detalhes da transação. 