Executar o Agente de Equipa Vermelha IA na cloud (pré-visualização) (clássico)

Atualmente a ver:versão do portal Foundry (clássica) - Trocar para a versão do novo portal Foundry

Importante

Os itens marcados (pré-visualização) neste artigo encontram-se atualmente em pré-visualização pública. Esta pré-visualização é fornecida sem um acordo de nível de serviço, e não a recomendamos para cargas de trabalho em produção. Certas funcionalidades podem não ser suportadas ou podem ter capacidades limitadas. Para mais informações, consulte Termos de Utilização Suplementares para Microsoft Azure Pré-visualizações.

Embora o Agente de Red Teaming de IA (versão de pré-visualização) possa ser executado localmente durante a prototipagem e desenvolvimento para ajudar a identificar riscos de segurança, executá-lo na cloud permite realizar execuções de red teaming de IA antes da implementação em maiores combinações de estratégias de ataque e categorias de risco para uma análise mais completa.

Pré-requisitos

Nota

Deve usar um projeto Foundry para esta funcionalidade. Um projeto baseado em hub não é suportado. Veja Como posso saber que tipo de projeto tenho? e Criar um projeto Foundry. Para migrar o seu projeto baseado no hub para um projeto Foundry, consulte Migrar de projetos baseados no hub para projetos Foundry.

Opcionalmente, podes usar a tua própria conta de armazenamento para fazer avaliações.

Como começar

Primeiro, instale o cliente de projeto do Microsoft Foundry SDK, que executa o Agente de Equipa Vermelha de IA na cloud.

pip install azure-ai-projects==1.1.0b3 azure-identity

Depois, define as variáveis de ambiente para os teus recursos do Microsoft Foundry

import os

endpoint = os.environ["PROJECT_ENDPOINT"] # Sample : https://<account_name>.services.ai.azure.com/api/projects/<project_name>

Alvos suportados

Executar o AI Red Teaming Agent na nuvem atualmente só suporta implementações de modelos Azure OpenAI no seu projeto Foundry como destino.

Configure o seu modelo alvo

Pode configurar a implementação do seu modelo alvo de duas formas:

Opção 1: Implantações em projetos de fundição

Se estiver a usar implementações de modelos que fazem parte do seu projeto Foundry, configure as seguintes variáveis de ambiente:

import os

model_endpoint = os.environ["MODEL_ENDPOINT"] # Sample : https://<account_name>.openai.azure.com
model_api_key = os.environ["MODEL_API_KEY"]
model_deployment_name = os.environ["MODEL_DEPLOYMENT_NAME"] # Sample : gpt-4o-mini

Opção 2: Implementações do Azure OpenAI/Foundry Tools

Se quiser usar implementações a partir das suas contas Azure OpenAI ou Foundry Tools, primeiro precisa de ligar estes recursos ao seu projeto Foundry através de ligações.

  1. Crie uma ligação: Siga as instruções em Configurar ligações de projetos para ligar o seu recurso Azure OpenAI ou AI Services ao seu projeto Foundry.

  2. Obtenha o nome da ligação: Depois de ligar a conta, verá a ligação criada com um nome gerado no seu projeto Foundry.

  3. Configure o destino: Use o formato "connectionName/deploymentName" para a configuração de implementação do seu modelo:

# Format: "connectionName/deploymentName"
model_deployment_name = "my-openai-connection/gpt-4o-mini"

Criar uma corrida de red teaming com IA

from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient
from azure.ai.projects.models import (
    RedTeam,
    AzureOpenAIModelConfiguration,
    AttackStrategy,
    RiskCategory,
)

with AIProjectClient(
  endpoint=endpoint,
  credential=DefaultAzureCredential(exclude_interactive_browser_credential=False),
) as project_client:

  # Create target configuration for testing an Azure OpenAI model
  target_config = AzureOpenAIModelConfiguration(model_deployment_name=model_deployment_name)

  # Instantiate the AI Red Teaming Agent
  red_team_agent = RedTeam(
      attack_strategies=[AttackStrategy.BASE64],
      risk_categories=[RiskCategory.VIOLENCE],
      display_name="red-team-cloud-run", 
      target=target_config,
  )

  # Create and run the red teaming scan
  # If you configured target using Option 1, use:
  # headers = {"model-endpoint": model_endpoint, "api-key": model_api_key}
  # If you configured target using Option 2, use:
  # headers = {}

  # Choose one of the following based on your configuration option:
  headers = {"model-endpoint": model_endpoint, "api-key": model_api_key}  # For Option 1
  # headers = {}  # For Option 2

  red_team_response = project_client.red_teams.create(red_team=red_team_agent, headers=headers)

Faz uma corrida de equipa vermelha com IA

# Use the name returned by the create operation for the get call
get_red_team_response = project_client.red_teams.get(name=red_team_response.name)
print(f"Red Team scan status: {get_red_team_response.status}")

Liste todas as execuções de Red Teaming da IA

for scan in project_client.red_teams.list():
  print(f"Found scan: {scan.name}, Status: {scan.status}")

Visualizar resultados de red teaming com IA no projeto Microsoft Foundry (pré-visualização)

Depois de terminar a sua análise automática, os resultados também são registados no seu projeto Foundry, que especificou na criação do seu agente de equipa vermelha de IA.

Visualizar relatório de cada análise

No seu projeto Foundry ou projeto baseado em hubs, navegue até à página de Avaliação . Selecione a IA red teaming para visualizar o relatório com resultados detalhados de cada análise.

Captura de ecrã do separador de IA Red Teaming na página do projeto Foundry.

Ao selecionar para a varredura, pode ver o relatório por categorias de risco, que mostra o número total de ataques bem-sucedidos e uma divisão dos ataques bem-sucedidos por categorias de risco:

Captura de ecrã do relatório do Red Teaming da IA vista por categoria de risco no Foundry.

Ou por classificação de complexidade de ataque:

Captura de ecrã da vista do relatório de Red Teaming da IA por categoria de complexidade de ataque no Foundry.

Ao aprofundar o separador de dados, obtém-se uma vista ao nível das linhas de cada par ataque-resposta. Esta informação oferece perspetivas mais profundas sobre problemas e comportamentos do sistema. Para cada par ataque-resposta, pode ver mais informação, como se o ataque foi bem-sucedido ou não, qual a estratégia de ataque utilizada e a sua complexidade de ataque. Um revisor humano no ciclo pode fornecer feedback humano selecionando o ícone de polegar para cima ou para baixo.

Captura de ecrã da página de dados de IA Red Teaming no Foundry.

Para ver cada conversa, selecione Ver mais para ver a conversa completa e uma análise mais detalhada da resposta do sistema de IA.

Captura de ecrã da página de dados de IA Red Teaming com um histórico de conversas aberto no Foundry.