Juízes personalizados
Os juízes personalizados do MLflow são avaliadores baseados em LLM que permitem usar linguagem natural para definir diretrizes de pontuação complexas e sutis para aplicações GenAI.
Embora os juízes LLM integrados MLflow ofereçam excelentes pontos de partida para dimensões de qualidade comuns, os juízes personalizados criados usando make_judge() oferecem controle total sobre os critérios de avaliação.
Instruções e variáveis padrão
Para criar um avaliador, você fornece um prompt com instruções em linguagem natural sobre como avaliar a qualidade do seu agente. make_judge() aceita variáveis padrão para acessar as entradas, saídas, saídas esperadas ou comportamentos do agente e até mesmo rastreamentos completos.
Suas instruções devem incluir pelo menos uma variável padrão, mas você não precisa usar todas elas.
{{ inputs }}- Dados de entrada fornecidos ao agente{{ outputs }}- Dados de saída gerados pelo seu agente{{ expectations }}- Verdades fundamentais ou resultados esperados{{ trace }}- O histórico completo da execução do seu agente
Estas são as únicas variáveis permitidas. Variáveis personalizadas como {{ question }} gerarão erros de validação para garantir um comportamento consistente e evitar problemas de injeção de padrão.
Juízes baseados em rastreamento
Os juízes baseados em rastreamento analisam os rastros de execução para entender o que aconteceu durante a execução do agente. Eles exploram rastros de forma autônoma usando ferramentas do Protocolo de Contexto do Modelo (MCP) e podem:
- Validar padrões de uso da ferramenta
- Identificar gargalos de desempenho
- Investigar falhas de execução
- Verifique o fluxo de trabalho em várias etapas
O exemplo a seguir define um avaliador que analisa a correção da chamada da ferramenta por meio da análise de rastreamentos:
from mlflow.genai.judges import make_judge
from typing import Literal
# Agent judge for tool calling correctness
tool_usage_judge = make_judge(
name="tool_usage_validator",
instructions=(
"Analyze the {{ trace }} to verify correct tool usage.\n\n"
"Check that the agent selected appropriate tools for the user's request "
"and called them with correct parameters."
),
feedback_value_type=Literal["correct", "incorrect"],
model="databricks:/databricks-gpt-5-mini" # Required for trace-based judges
)
Para que os juízes baseados em rastreamento analisem o rastreamento completo, o argumento model deve ser especificado em make_judge().
Para um tutorial completo, consulte Criar um juiz personalizado usando make_judge().
Requisitos do modelo para juízes baseados em rastreamento
Juízes que utilizam métodos baseados em vestígios precisam de um modelo capaz de realizar análises de vestígios. O modelo pode ser servido por:
- APIs do Modelo Foundation (recomendado)
- Endpoint de modelo de comunicação externa
- Endpoint de modelo personalizado personalizado
Modelos recomendados:
databricks:/databricks-gpt-5-minidatabricks:/databricks-gpt-5databricks:/databricks-gpt-oss-120bdatabricks:/databricks-claude-opus-4-5
Melhores práticas para redigir instruções para juízes
Seja específico quanto ao formato de saída esperado. Suas instruções devem especificar claramente o formato que o juiz deve devolver:
- Respostas categóricas : Liste valores específicos (por exemplo, 'totalmente_resolvido', 'parcialmente_resolvido', 'necessita_de_acompanhamento')
- RespostasBoolean : Declare explicitamente que o juiz deve retornar
trueoufalse - Pontuações numéricas : Especifique o intervalo de pontuação e o significado de cada pontuação.
Desmembre avaliações complexas. Para tarefas de avaliação complexas, estruture suas instruções em seções claras:
- O que avaliar
- Que informações examinar?
- Como chegar a uma conclusão?
- Qual formato devo usar para retornar?
Alinhar juízes com especialistas humanos
O juiz base é um ponto de partida. À medida que você coleta feedback de especialistas sobre as saídas do seu aplicativo, você pode alinhar os juízes LLM ao feedback para melhorar ainda mais a precisão do juiz. Consulte Alinhar juízes LLM com feedback humano.
Próximas etapas
Consulte Criar um juiz personalizado para um tutorial prático que demonstra juízes padrão e baseados em traçado.