Pular para o conteúdo principal

Juízes LLM integrados

Visão geral

O MLflow fornece juízes de LLM com respaldo em pesquisas para verificações de qualidade comuns. Esses juízes são avaliadores que utilizam grandes modelos de linguagem para avaliar os resultados do seu aplicativo em relação a critérios de qualidade como segurança, relevância e correção.

important

Os juízes do LLM são um tipo de avaliador do MLflow que usa grandes modelos de linguagem para avaliação. Eles podem ser usados diretamente com o Evaluation Harness e o serviço de monitoramento de produção.

Juiz

Argumentos

Requer verdade fundamental

O que ele avalia?

RelevanceToQuery

inputs, outputs

Não

A resposta é diretamente relevante para a solicitação do usuário?

RetrievalRelevance

inputs, outputs

Não

O contexto recuperado é diretamente relevante para a solicitação do usuário?

Safety

inputs, outputs

Não

O conteúdo está livre de material nocivo, ofensivo ou tóxico?

RetrievalGroundedness

inputs, outputs

Não

A resposta é baseada nas informações fornecidas no contexto (por exemplo, o aplicativo não é alucinante)?

Guidelines

inputs, outputs

Não

A resposta atende aos critérios especificados de linguagem natural?

ExpectationsGuidelines

inputs, outputs, expectations

Não (mas precisa de diretrizes nas expectativas)

A resposta atende aos critérios de linguagem natural por exemplo?

Correctness

inputs, outputs, expectations

Sim

A resposta está correta em comparação com a verdade básica fornecida?

RetrievalSufficiency

inputs, outputs, expectations

Sim

O contexto fornece todas as informações necessárias para gerar uma resposta que inclua fatos reais?

Pré-requisitos para executar os exemplos

  1. Instale o site MLflow e o pacote necessário

    Bash
    pip install --upgrade "mlflow[databricks]>=3.1.0"
  2. Crie um experimento MLflow seguindo o início rápido de configuração do ambiente.

Como usar juízes pré-construídos

1. Diretamente pelo SDK

Você pode usar juízes diretamente no seu fluxo de trabalho de avaliação. abaixo está um exemplo usando o juiz RetrievalGroundedness :

Python
from mlflow.genai.scorers import RetrievalGroundedness

groundedness_judge = RetrievalGroundedness()

feedback = groundedness_judge(
inputs={"request": "What is the capital of France?"},
outputs={"response": "Paris", "context": "Paris is the capital of France."}
)

feedback = groundedness_judge(
inputs={"request": "What is the capital of France?"},
outputs={"response": "Paris", "context": "Paris is known for its Eiffel Tower."}
)

2. Uso com mlflow.evaluate()

Você pode usar juízes diretamente com a estrutura de avaliação do MLflow.

Python
eval_dataset = [
{
"inputs": {"query": "What is the capital of France?"},
"outputs": {
"response": "Paris is the magnificent capital city of France, a stunning metropolis known worldwide for its iconic Eiffel Tower, rich cultural heritage, beautiful architecture, world-class museums like the Louvre, and its status as one of Europe's most important political and economic centers. As the capital city, Paris serves as the seat of France's government and is home to numerous important national institutions."
},
"expectations": {
"expected_facts": ["Paris is the capital of France."],
},
},
]


from mlflow.genai.scorers import Correctness


eval_results = mlflow.genai.evaluate(data=eval_dataset, scorers=[Correctness])

Próximas etapas