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

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:

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:

  • openai
  • watsonx

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 feedback ou payload_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:

  1. 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.

  2. Clique em “Configurar novo grupo ”.

  3. Digite um nome para o grupo de métricas e clique em Aplicar.

    O nome deve ter no máximo 48 caracteres.

  4. Selecione “LLM-as-Judge” como técnica de avaliação.

  5. Clique no ícone Editar no bloco “Tipos de modelo a serem suportados”, selecione um ou mais tipos de modelo e clique em Avançar.

  6. Ative o cronograma de avaliação e especifique o intervalo. Clique em “Avançar ” e, em seguida, clique em “Salvar ”.

  7. Clique no ícone “Adicionar métrica” para criar métricas personalizadas.

  8. Forneça os seguintes detalhes:

    • Nome da Métrica
    • ID da métrica
    • Tipo de limite
    • Tipo de algoritmo do modelo
  9. 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:

  1. 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.
  2. Na tela de dimensões do modelo de prompt, selecione o grupo de métricas que você criou em Avaliações personalizadas.

  3. Em Configurações avançadas, selecione o grupo de métricas e clique no ícone Editar no bloco Mecanismo de pontuação ( LLMaaJ ).

  4. Selecione um juiz LLM já existente. Se não houver nenhum juiz LLM, crie um.

  5. Para criar um novo provedor de LLM, clique em “Adicionar” e especifique os detalhes do provedor, incluindo nome, descrição, evaluator_type chave de API e detalhes do modelo. Em seguida, clique em Salvar.

  6. 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.

  7. 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
  8. 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. captura de tela da página de resumo na interface do usuário

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. captura de tela da interface do usuário mostrando métricas no nível do 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. captura de tela da interface do usuário mostrando os detalhes da transação

Saiba Mais