Voraussetzungen
Bevor Sie mit der Nutzung von Amazon Bedrock AgentCore Evaluations beginnen, stellen Sie sicher, dass Sie die erforderlichen AWS Berechtigungen und Servicerollen konfiguriert haben.
Erforderliche Berechtigungen
Um die Online-Bewertungsfunktionen von AgentCore Evaluations nutzen zu können, benötigen Sie:
-
AWS Konto mit den entsprechenden IAM-Berechtigungen
-
Zugriff auf Amazon Bedrock mit Modellaufrufberechtigungen (erforderlich, wenn Sie einen benutzerdefinierten Evaluator verwenden)
-
CloudWatchAmazon-Zugang zum Einsehen der Bewertungsergebnisse
-
Transaktionssuche aktiviert in CloudWatch — siehe Transaktionssuche aktivieren
-
AWS Distribution für das OpenTelemetry (ADOT) SDK zur Instrumentierung Ihres Agenten. Verwenden Sie AgentCore die Observability-Anweisungen, um Observability für Agenten zu konfigurieren, die auf AgentCore Runtime gehostet werden, und für Agenten, die woanders gehostet werden.
IAM-Benutzerberechtigungen
Ihr IAM-Benutzer oder Ihre IAM-Rolle benötigt die folgenden Berechtigungen, um Evaluationen zu erstellen und zu verwalten:
Konsolen- und API-Operationen
Um Amazon Bedrock zu verwenden AgentCore, können Sie die BedrockAgentCoreFullAccess AWS verwaltete Richtlinie an Ihren IAM-Benutzer oder Ihre IAM-Rolle anhängen. Diese Richtlinie gewährt umfassende Berechtigungen für alle Funktionen. AgentCore Wenn Sie nur AgentCore Evaluationen verwenden, empfehlen wir, eine benutzerdefinierte IAM-Richtlinie zu erstellen, die nur die für die Evaluierung erforderlichen Berechtigungen umfasst.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "bedrock-agentcore:CreateEvaluator", "bedrock-agentcore:GetEvaluator", "bedrock-agentcore:ListEvaluators", "bedrock-agentcore:UpdateEvaluator", "bedrock-agentcore:DeleteEvaluator", "bedrock-agentcore:CreateOnlineEvaluationConfig", "bedrock-agentcore:GetOnlineEvaluationConfig", "bedrock-agentcore:ListOnlineEvaluationConfigs", "bedrock-agentcore:UpdateOnlineEvaluationConfig", "bedrock-agentcore:DeleteOnlineEvaluationConfig", "bedrock-agentcore:Evaluate" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::*:role/AgentCoreEvaluationRole*", "Condition": { "StringEquals": { "iam:PassedToService": "bedrock-agentcore.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:Converse", "bedrock:InvokeModelWithResponseStream", "bedrock:ConverseStream" ], "Resource": [ "arn:aws:bedrock:*::foundation-model/*", "arn:aws:bedrock:*:*:inference-profile/*" ] }, { "Effect": "Allow", "Action": [ "logs:DescribeIndexPolicies", "logs:PutIndexPolicy", "logs:CreateLogGroup" ], "Resource": "*" }, { "Sid": "KMSPermissionsForCMKEvaluators", "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "arn:aws:kms:*:*:key/*" } ] }
Anmerkung
Die KMSPermissionsForCMKEvaluators Anweisung ist nur erforderlich, wenn Sie vom Kunden verwaltete KMS-Schlüssel zum Verschlüsseln benutzerdefinierter Evaluatoren verwenden. Weitere Informationen finden Sie unter Encryption at Rest for AgentCore Evaluations.
Service-Ausführungsrolle
Amazon Bedrock AgentCore Evaluations erfordert eine benutzerdefinierte IAM-Rolle, um in Ihrem Namen auf AWS Ressourcen zugreifen zu können. Diese Rolle ermöglicht dem Service:
-
Rufen Sie Amazon Bedrock-Modelle zur Evaluierung auf (erforderlich, wenn Sie einen benutzerdefinierten Evaluator verwenden)
-
Spuren von Amazon lesen CloudWatch
-
Bewertungsergebnisse an Amazon schreiben CloudWatch
-
Konfigurieren Sie die Protokollindizierung für die Trace-Analyse
Um die IAM-Rolle zu erstellen, können Sie die AgentCore Evaluationskonsole, die AWS Konsole oder die AgentCore CLI verwenden.
Themen
Option 1: Verwenden der AgentCore Evaluationskonsole
Sie können die erforderliche IAM-Rolle direkt über die AgentCore Evaluationskonsole erstellen, was einen optimierten Ansatz mit automatischer Rollenerstellung bietet.
So erstellen Sie eine IAM-Rolle mithilfe der Evaluationskonsole AgentCore
-
Öffnen Sie die Amazon AgentCore Bedrock-Konsole.
-
Wählen Sie im linken Navigationsbereich Evaluation aus.
-
Wählen Sie Testkonfiguration erstellen aus.
-
Wählen Sie im Abschnitt „Berechtigung“ die Option Neue Servicerolle erstellen und verwenden aus. Die Konsole erstellt dann automatisch die IAM-Rolle für Sie.
Option 2: Verwenden der AgentCore CLI
Die AgentCore CLI erstellt automatisch die erforderliche IAM-Rolle, wenn Sie Ihr Projekt bereitstellen.
Option 3: Verwenden von AWS Konsole
Sie können die IAM-Rolle manuell mithilfe der AWS Konsole erstellen, wodurch Sie die volle Kontrolle über die Rollenkonfiguration und die Richtlinien haben.
So erstellen Sie eine IAM-Rolle mithilfe der Konsole AWS
-
Öffnen Sie die IAM-Konsole.
-
Navigieren Sie zu Rollen und wählen Sie Rolle erstellen
-
Wählen Sie AWS Service als vertrauenswürdigen Entitätstyp aus
-
Erstellen Sie eine IAM-Rolle mit der folgenden Vertrauensrichtlinie, damit Amazon Bedrock AgentCore die Rolle übernehmen kann:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "TrustPolicyStatement", "Effect": "Allow", "Principal": { "Service": "bedrock-agentcore.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "{{accountId}}", "aws:ResourceAccount": "{{accountId}}" }, "ArnLike": { "aws:SourceArn": [ "arn:aws:bedrock-agentcore:{{region}}:{{accountId}}:evaluator/*", "arn:aws:bedrock-agentcore:{{region}}:{{accountId}}:online-evaluation-config/*" ] } } } ] } -
Fügen Sie der Ausführungsrolle die folgende Berechtigungsrichtlinie hinzu:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "CloudWatchLogReadStatement", "Effect": "Allow", "Action": [ "logs:DescribeLogGroups", "logs:GetQueryResults", "logs:StartQuery" ], "Resource": "*" }, { "Sid": "CloudWatchLogWriteStatement", "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:{{region}}:{{accountId}}:log-group:/aws/bedrock-agentcore/evaluations/*" }, { "Sid": "CloudWatchIndexPolicyStatement", "Effect": "Allow", "Action": [ "logs:DescribeIndexPolicies", "logs:PutIndexPolicy" ], "Resource": [ "arn:aws:logs:{{region}}:{{accountId}}:log-group:aws/spans", "arn:aws:logs:{{region}}:{{accountId}}:log-group:aws/spans:*" ] }, { "Sid": "BedrockInvokeStatement", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:InvokeModelWithResponseStream" ], "Resource": [ "arn:aws:bedrock:{{region}}::foundation-model/*", "arn:aws:bedrock:{{region}}:{{accountId}}:inference-profile/*" ] } ] }Anmerkung
Ersetze {{region}} und {{accountId}} durch deine tatsächliche AWS Region und Konto-ID. Wenn Sie einen benutzerdefinierten Evaluator verwenden und einen angegeben haben BedrockInvokeStatement, können Sie auch die zulässigen Modell-IDs einschränken.
-
Geben Sie Ihrer Rolle einen Namen (z. B. AgentCoreEvaluationRole)
-
Überprüfe und erstelle die Rolle