Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Visualizzazione attuale:Versione del portale Foundry (versione classica) - Passa alla versione per il nuovo portale Foundry
Importante
Gli elementi contrassegnati (anteprima) in questo articolo sono attualmente in anteprima pubblica. Questa anteprima viene fornita senza un contratto di servizio e non è consigliabile per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero avere funzionalità limitate. Per altre informazioni, vedere Condizioni supplementari per l'utilizzo delle anteprime di Microsoft Azure.
Anche se l'agente red teaming di intelligenza artificiale (anteprima) può essere eseguito in locale durante la creazione di prototipi e lo sviluppo per identificare i rischi di sicurezza, l'esecuzione nel cloud consente l'esecuzione di red teaming di intelligenza artificiale pre-distribuzione su combinazioni più grandi di strategie di attacco e categorie di rischio per un'analisi più completa.
Prerequisiti
Nota
Per questa funzionalità è necessario usare un progetto Foundry . Un progetto basato su hub non è supportato. Vedere Come si conosce il tipo di progetto disponibile? e Creare un progetto Foundry. Per eseguire la migrazione del progetto basato su hub a un progetto Foundry, vedere Eseguire la migrazione da progetti basati su hub a progetti Foundry.
Facoltativamente, è possibile usare il proprio account di archiviazione per eseguire valutazioni.
Per iniziare
Prima di tutto, installare il client del progetto Microsoft Foundry SDK, che esegue l'agente di red teaming dell'intelligenza artificiale nel cloud.
pip install azure-ai-projects==1.1.0b3 azure-identity
Impostare quindi le variabili di ambiente per le risorse di Microsoft Foundry
import os
endpoint = os.environ["PROJECT_ENDPOINT"] # Sample : https://<account_name>.services.ai.azure.com/api/projects/<project_name>
Destinazioni supportate
L'esecuzione dell'agente red teaming di intelligenza artificiale nel cloud supporta attualmente solo le distribuzioni di modelli OpenAI Azure nel progetto Foundry come destinazione.
Configurare il modello di destinazione
È possibile configurare la distribuzione del modello di destinazione in due modi:
Opzione 1: Distribuzione dei progetti Foundry
Se si usano distribuzioni di modelli che fanno parte del progetto Foundry, configurare le variabili di ambiente seguenti:
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
Opzione 2: Distribuzioni degli strumenti OpenAI/Foundry su Azure
Se si vogliono usare le distribuzioni degli account OpenAI o Foundry Tools di Azure, è prima necessario connettere queste risorse al progetto Foundry tramite connessioni.
Creare una connessione: seguire le istruzioni riportate in Configurare le connessioni di progetto per connettere la risorsa Azure OpenAI o AI Services al progetto Foundry.
Ottenere il nome della connessione: dopo aver connesso l'account, verrà visualizzata la connessione creata con un nome generato nel progetto Foundry.
Configurare la destinazione: usare il formato
"connectionName/deploymentName"per la configurazione della distribuzione del modello:
# Format: "connectionName/deploymentName"
model_deployment_name = "my-openai-connection/gpt-4o-mini"
Creare un'attività di red teaming per l'intelligenza artificiale
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)
Ottenere una sessione di red teaming di intelligenza artificiale
# 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}")
Elencare tutte le esecuzioni di red teaming di intelligenza artificiale
for scan in project_client.red_teams.list():
print(f"Found scan: {scan.name}, Status: {scan.status}")
Visualizzazione dei risultati del red teaming dell'intelligenza artificiale nel progetto Microsoft Foundry (anteprima)
Al termine dell'analisi automatizzata, i risultati vengono registrati anche nel progetto Foundry, specificato nella creazione dell'agente di red teaming di intelligenza artificiale.
Visualizzare il report di ogni analisi
Nel progetto Foundry o nel progetto basato su hub passare alla pagina Valutazione . Selezionare Red Teaming di intelligenza artificiale per visualizzare il report con risultati di drill-down dettagliati di ogni analisi.
Quando si seleziona l'analisi, è possibile visualizzare il report in base alle categorie di rischio, che mostra il numero complessivo di attacchi riusciti e una suddivisione degli attacchi riusciti per categorie di rischio:
In alternativa, in base alla classificazione della complessità degli attacchi:
L'approfondimento nel tab dati fornisce una visualizzazione a livello di riga di ogni coppia di attacco-risposta. Queste informazioni offrono informazioni più approfondite sui problemi e sui comportamenti del sistema. Per ogni coppia di attacchi-risposta, è possibile visualizzare altre informazioni, ad esempio se l'attacco ha avuto esito positivo, quale strategia di attacco è stata usata e la relativa complessità degli attacchi. Un revisore umano nel ciclo può fornire feedback selezionando l'icona pollice su o pollice giù.
Per visualizzare ogni conversazione, selezionare Visualizza altro per visualizzare la conversazione completa per un'analisi più dettagliata della risposta del sistema di intelligenza artificiale.