Mecanismo de avaliação de risco do modelo

O mecanismo de avaliação de risco do modelo mede os riscos dos modelos de fundação computando métricas relacionadas às dimensões de risco para ajudá-lo a identificar os melhores modelos que atingem suas metas de tolerância ao risco.

O mecanismo de avaliação de risco do modelo é um módulo no ibm-watsonx-gov SDK Python que pode ajudar você a entender os riscos da IA generativa e estabelecer métodos eficazes para medir e mitigar os riscos. Esse módulo ajuda a fornecer avaliações quantitativas de risco de modelos de fundação e oferece suporte a avaliações de modelos de idiomas grandes e modelos externos de outros provedores no site watsonx.ai.

As avaliações calculam métricas para as seguintes dimensões de risco:

  • Produção tóxica
  • Produção prejudicial
  • Vazamento imediato
  • Alucinação
  • Injeção de prompt
  • Jailbreaking
  • Polarização de saída
  • Geração de código prejudicial

As dimensões de risco são um conjunto de riscos que podem ocorrer ao trabalhar com ativos de IA generativa e modelos de aprendizado de máquina.. Para obter mais informações, consulte o AI Risk Atlas. As dimensões de risco disponíveis são um subconjunto dos riscos disponíveis no Atlas de Riscos.

Você deve fornecer as credenciais do site watsonx.ai para calcular as métricas dos riscos de jailbreak, prompt-leaking, geração de código prejudicial e prompt-injection. Para cada dimensão de risco, um ou mais conjuntos de dados padronizados são usados para avaliar o nível de risco.

Após a conclusão das avaliações de risco, é possível salvar os resultados no console de governança ou exportá-los como um relatório em PDF que resume as métricas calculadas.

Você pode usar o mecanismo de avaliação de risco do modelo para concluir as seguintes tarefas:

  • Calcule métricas com watsonx.ai como mecanismo de inferência.
  • Calcule métricas de risco para modelos de fundação em watsonx.ai.
  • Calcule métricas para modelos de fundação que não estejam em watsonx.ai implementando sua própria função de pontuação para qualquer modelo e avaliando-a.
  • Armazene as métricas computadas no console de governança ( OpenPages ).
  • Recupere métricas computadas do console de governança ( OpenPages ).
  • Gerar um relatório em PDF das métricas computadas.
  • Exiba as métricas em uma célula do bloco de notas em um formato de tabela ou gráfico.

Para usar o módulo de avaliação de risco do modelo, você deve instalar o SDK ibm-watsonx-gov Python com configurações específicas:

pip install "ibm-watsonx-gov[mre]"

Entrada

Você pode especificar os seguintes parâmetros de entrada ao usar o mecanismo de avaliação de risco do modelo:

Tabela 1. Parâmetros de entrada para o mecanismo de avaliação de risco do modelo
Parâmetro Descrição
wx_gc_configuration (opcional) A configuração do console de governança para armazenar o resultado das métricas computadas. O armazenamento do resultado da avaliação no console de governança evita o recálculo das métricas durante a próxima avaliação. Em vez disso, o mecanismo de avaliação recupera as métricas salvas.
foundation_model_name O nome do modelo de fundação em avaliação.
risk_dimensions (opcional) Uma lista de riscos a serem avaliados. Se não for fornecido, todos os riscos disponíveis serão avaliados.
max_sample_size (opcional) O número máximo de instâncias de dados a serem usadas para avaliação. Especifique um valor menor (por exemplo, 50) para acelerar a avaliação ou defina-o como None para usar todos os dados para avaliação, o que leva mais tempo, mas garante resultados significativos.
model_details Detalhes do modelo da fundação. O valor pode ser WxAIFoundationModel ou CustomFoundationModel , sendo que WxAIFoundationModel é um objeto que representa a lógica para invocar a inferência para watsonx.ai e CustomFoundationModel é um objeto que contém a lógica para invocar a lógica para um LLM externo.
pdf_report_output_path (opcional) O caminho do arquivo especificado pelo usuário onde o relatório PDF gerado será salvo.

Saída

O mecanismo de avaliação de risco do modelo pode ajudá-lo a calcular métricas para cada dimensão de risco como resultado. Esse resultado pode ser salvo em uma célula do notebook, armazenado em OpenPages, ou exportado como um relatório em PDF. O mecanismo de avaliação de risco do modelo calcula métricas para as seguintes dimensões de risco:

Tabela 2. Dimensões de risco para o mecanismo de avaliação de risco do modelo
Risco Descrição
Produção tóxica O modelo produz conteúdo odioso, abusivo e profano (HAP) ou obsceno.
Produção prejudicial O modelo pode gerar linguagem que leve a danos físicos ou linguagem que inclua declarações abertamente violentas, secretamente perigosas ou indiretamente inseguras.
Alucinação Conteúdo factualmente impreciso ou falso em relação aos dados de treinamento ou entrada do modelo. Às vezes, esse risco também é chamado de falta de fidelidade ou falta de fundamentação.
Injeção de prompt Um ataque que força um modelo generativo que recebe um prompt como entrada a produzir uma saída inesperada, manipulando a estrutura, as instruções ou as informações contidas em seu prompt.
Jailbreaking Um ataque que tenta romper as barreiras estabelecidas no modelo para executar ações restritas.
Polarização de saída O conteúdo gerado pode representar injustamente determinados grupos ou indivíduos.
Vazamento imediato Uma tentativa de extrair o prompt do sistema de um modelo
Geração de códigos prejudiciais Os modelos podem gerar códigos que causam danos ou afetam outros sistemas de forma não intencional.

Exemplos

Você pode executar avaliações e gerar resultados com o mecanismo de avaliação de risco do modelo, conforme mostrado nos exemplos a seguir:

Etapa 1: configuração

Crie uma configuração de mecanismo de avaliação de risco de modelo:

from ibm_watsonx_gov.config.model_risk_configuration import ModelRiskConfiguration, WxGovConsoleConfiguration

configuration = ModelRiskConfiguration(
    model_details = model_details,
    risk_dimensions=risk_dimensions,
    max_sample_size=max_sample_size,
    pdf_report_output_path=pdf_report_output_path,
    # wx_gc_configuration=wx_gc_configuration, # uncomment this line if the result should be pushed to Governance Console (OpenPages)
)

Etapa 2: executar a avaliação

Faça uma avaliação para medir os riscos:

from ibm_watsonx_gov.evaluators.model_risk_evaluator import ModelRiskEvaluator
from ibm_watsonx_gov.clients.api_client import APIClient
from ibm_watsonx_gov.credentials import Credentials

wxgov_client = APIClient(credentials=Credentials(api_key=""))
evaluator = ModelRiskEvaluator(
    configuration=config, api_client=wxgov_client)
result = evaluator.evaluate()
result.to_json()

Etapa 3: gerar relatório em PDF

Exportar os dados e métricas avaliados como um relatório em PDF:

evaluator.download_model_risk_report()

Para obter mais informações, consulte o notebook do Model Risk Evaluation Engine.