View a markdown version of this page

A/B prerequisiti di test - Amazon Bedrock AgentCore

A/B prerequisiti di test

Prima di creare un A/B test, assicurati che siano disponibili le seguenti risorse.

Risorse obbligatorie

Risorsa Description

AgentCore Gateway

Un AgentCore gateway attivo con almeno una destinazione HTTP che punta al runtime dell'agente. Il AgentCore Gateway gestisce la suddivisione del traffico tra le varianti.

Runtime dell'agente

Almeno un runtime dell'agente distribuito utilizzando Amazon Bedrock AgentCore SDK (versione 1.8+). L'SDK allega BaggageSpanProcessor automaticamente i dettagli dell'esperimento di A/B test (ARN dell'esperimento e nome della variante) a tutti OpenTelemetry gli intervalli emessi dal runtime.

  • Varianti basate su pacchetti di configurazione: è sufficiente un runtime. Entrambe le varianti vengono eseguite sullo stesso runtime con diverse versioni del pacchetto di configurazione.

  • Target-based varianti: distribuisci un runtime per variante (due in totale).

Configurazione di valutazione online

Una configurazione di valutazione online attiva che specifica quali valutatori eseguire sulle sessioni.

  • Varianti basate su pacchetti di configurazione: una configurazione di valutazione online che punta al singolo runtime in cui vengono eseguite entrambe le varianti.

  • Target-based varianti: una configurazione di valutazione online per endpoint di runtime che utilizzi per il A/B test (due in totale), poiché ogni endpoint ha il proprio gruppo di log.

Pacchetti di configurazione (opzionali)

Richiesto quando si utilizzano varianti basate su pacchetti di configurazione. Due versioni del pacchetto o due pacchetti separati: uno per il controllo e uno per il trattamento.

Requisiti SDK

È richiesta la versione 1.8 o successiva di Amazon Bedrock AgentCore SDK. L'SDK include un programma BaggageSpanProcessor che legge le intestazioni dei bagagli degli esperimenti diffuse dal AgentCore Gateway e contrassegna automaticamente tutti gli intervalli di runtime OpenTelemetry con l'ARN dell'esperimento e il nome della variante. La pipeline di valutazione online legge questi attributi per mappare i punteggi delle sessioni alla variante corretta. Non è richiesta alcuna strumentazione aggiuntiva nel codice dell'agente.

Requisiti per il valutatore

Nota

A/B il test supporta valutatori integrati LLM-as-judge, personalizzati e basati su codice, ma richiede che ogni valutatore restituisca un valore numerico per il calcolo della significatività statistica. Per i LLM-as-judge valutatori personalizzati, configurali con una scala (non). ratingScale numerical categorical Per i valutatori basati su codice, includi il value campo nello schema di risposta.

autorizzazioni IAM

Il ruolo di esecuzione del A/B test deve affidarsi al responsabile del bedrock-agentcore.amazonaws.com servizio e disporre delle autorizzazioni per le operazioni del AgentCore gateway, la lettura dei pacchetti di configurazione, la lettura della configurazione di valutazione online e l'accesso ai registri. CloudWatch

Nota

È necessario creare questo ruolo manualmente solo se si inserisce il proprio ruolo di esecuzione e lo si assegna. agentcore run ab-test --role-arn <arn> Se si omette--role-arn, la AgentCore CLI crea automaticamente un ruolo di esecuzione per il test.

Esempio di politica di fiducia:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "bedrock-agentcore.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "${aws:PrincipalAccount}" }, "ArnLike": { "aws:SourceArn": "arn:aws:bedrock-agentcore:*:${aws:PrincipalAccount}:ab-test/*" } } } ] }

Esempio di politica di autorizzazione:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AgentCoreResources", "Effect": "Allow", "Action": [ "bedrock-agentcore:GetGateway", "bedrock-agentcore:GetGatewayTarget", "bedrock-agentcore:ListGatewayTargets", "bedrock-agentcore:CreateGatewayRule", "bedrock-agentcore:UpdateGatewayRule", "bedrock-agentcore:GetGatewayRule", "bedrock-agentcore:DeleteGatewayRule", "bedrock-agentcore:ListGatewayRules", "bedrock-agentcore:GetOnlineEvaluationConfig", "bedrock-agentcore:GetEvaluator", "bedrock-agentcore:GetConfigurationBundle", "bedrock-agentcore:GetConfigurationBundleVersion", "bedrock-agentcore:ListConfigurationBundleVersions" ], "Resource": "arn:aws:bedrock-agentcore:*:${aws:PrincipalAccount}:*", "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } }, { "Sid": "CloudWatchLogsDescribe", "Effect": "Allow", "Action": [ "logs:DescribeLogGroups" ], "Resource": "*" }, { "Sid": "CloudWatchLogs", "Effect": "Allow", "Action": [ "logs:DescribeIndexPolicies", "logs:PutIndexPolicy", "logs:StartQuery", "logs:GetQueryResults", "logs:StopQuery", "logs:FilterLogEvents", "logs:GetLogEvents" ], "Resource": [ "arn:aws:logs:*:${aws:PrincipalAccount}:log-group:/aws/bedrock-agentcore/evaluations/*", "arn:aws:logs:*:${aws:PrincipalAccount}:log-group:aws/spans", "arn:aws:logs:*:${aws:PrincipalAccount}:log-group:aws/spans:*" ] } ] }