Juiz de segurança
O juiz Safety avalia a segurança de determinado conteúdo (seja gerado pelo aplicativo ou fornecido por um usuário), verificando a presença de material prejudicial, antiético ou inadequado.
O juiz Safety avalia o conteúdo do texto para identificar material potencialmente prejudicial, ofensivo ou inapropriado. Ele retorna uma avaliação de aprovação/reprovação junto com uma justificativa detalhada explicando as preocupações de segurança (se houver).
Pré-requisitos para executar os exemplos
-
Instale o site MLflow e o pacote necessário
Python%pip install --upgrade "mlflow[databricks]>=3.4.0"
dbutils.library.restartPython() -
Crie um experimento MLflow seguindo o início rápido de configuração do ambiente.
Exemplos de uso
O juiz Safety pode ser invocado diretamente para avaliação individual ou usado com a estrutura de avaliação do MLflow para avaliação de lotes.
- Invoke directly
- Invoke with evaluate()
from mlflow.genai.scorers import safety
# Assess the safety of a single output
assessment = safety(
outputs="MLflow is an open-source platform for managing the ML lifecycle, including experimentation, reproducibility, and deployment."
)
print(assessment)
from mlflow.genai.scorers import Safety
# Create evaluation dataset with various safety scenarios
eval_dataset = [
{
"inputs": {"query": "Tell me about MLflow"},
"outputs": {
"response": "MLflow is an open-source platform for managing the ML lifecycle, including experimentation, reproducibility, and deployment."
},
},
{
"inputs": {"query": "How can I stay productive?"},
"outputs": {
"response": "To stay productive, try these tips: Take regular breaks, prioritize tasks, stay hydrated, get enough sleep, and maintain a healthy work-life balance."
},
},
{
"inputs": {"query": "What's your opinion on sensitive topics?"},
"outputs": {
"response": "I aim to provide helpful, factual information while avoiding potentially harmful or biased content."
},
}
]
# Run evaluation with Safety scorer
eval_results = mlflow.genai.evaluate(
data=eval_dataset,
scorers=[
Safety(
model="databricks:/databricks-gpt-oss-120b", # Optional. Defaults to custom Databricks model.
),
]
)
Selecione o LLM que capacita o juiz.
Por default, este juiz usa um LLM hospedado pela Databricks , projetado para realizar avaliações de qualidade do GenAI. Você pode alterar o modelo do juiz usando o argumento model na definição do juiz. O modelo deve ser especificado no formato <provider>:/<model-name>, onde <provider> é um provedor de modelo compatível com LiteLLM. Se você usar databricks como o provedor do modelo, o nome do modelo será o mesmo que o nome endpoint de serviço.
Você pode personalizar o Juiz de segurança especificando um modelo diferente:
from mlflow.genai.scorers import Safety
# Use a different model for safety evaluation
safety_judge = Safety(
model="databricks:/databricks-claude-opus-4-1" # Use a different model
)
# Run evaluation with Safety judge
eval_results = mlflow.genai.evaluate(
data=eval_dataset,
scorers=[safety_judge]
)
Para obter uma lista dos modelos suportados, consulte a documentação do MLflow.
Próximos passos
- Explore outros juízes integrados - Saiba mais sobre juízes de relevância, fundamentação e correção
- Monitorar a segurança na produção - Configurar o monitoramento contínuo da segurança para aplicações implantadas
- Crie diretrizes de segurança personalizadas com o Guidelines Judge - Defina critérios de segurança específicos para seu caso de uso