Starten eines automatischen Auftrags zur Modellbewertung in Amazon Bedrock
Sie können einen automatischen Modellbewertungsauftrag mithilfe der AWS-Managementkonsole, der AWS CLI oder eines unterstützten AWS SDKs erstellen. Bei einem automatischen Modellbewertungsauftrag führt das von Ihnen ausgewählte Modell Inferenzen durch, indem es entweder Prompts aus einem unterstützten integrierten Datensatz oder Ihren eigenen benutzerdefinierten Prompt-Datensatz verwendet. Für jeden Auftrag müssen Sie außerdem einen Aufgabentyp auswählen. Der Aufgabentyp bietet Ihnen einige empfohlene Metriken und integrierte Prompt-Datensätze. Weitere Informationen zu den verfügbaren Aufgabentypen und Metriken finden Sie unter Aufgabentypen zur Modellbewertung in Amazon Bedrock.
Die folgenden Beispiele zeigen, wie Sie einen automatischen Modellbewertungsauftrag mit der Amazon-Bedrock-Konsole, der AWS CLI und dem SDK für Python erstellen.
Alle automatischen Modellbewertungsaufträge erfordern, dass Sie eine IAM-Servicerolle erstellen. Weitere Informationen zu den IAM-Anfragen für das Einrichten eines Modellbewertungsauftrags finden Sie unter Anforderungen an die Servicerolle für Aufträge zur Modellbewertung.
Die folgenden Beispiele veranschaulichen, wie Sie einen automatischen Modellbewertungsauftrag erstellen. In der API können Sie dem Auftrag auch ein Inferenzprofil hinzufügen, indem Sie dessen ARN im Feld modelIdentifier angeben.
- Amazon Bedrock console
-
Gehen Sie wie folgt vor, um einen Modellbewertungsauftrag über die Amazon-Bedrock-Konsole zu erstellen. Stellen Sie zum erfolgreichen Abschluss dieses Verfahrens sicher, dass Ihr IAM-Benutzer, Ihre IAM-Gruppe bzw. -Rolle über die erforderlichen Berechtigungen für den Zugriff auf die Konsole verfügt. Weitere Informationen hierzu finden Sie unter Erforderliche Konsolenberechtigungen zum Erstellen eines Auftrags zur automatischen Modellbewertung.
Außerdem müssen für alle Datensätze mit benutzerdefinierten Prompts, die Sie im Modellbewertungsauftrag angeben möchten, die erforderlichen CORS-Berechtigungen zum Amazon-S3-Bucket hinzugefügt werden. Weitere Informationen über das Hinzufügen der erforderlichen CORS-Berechtigungen finden Sie unter Erforderliche Cross Origin Resource Sharing (CORS)-Berechtigungen für S3-Buckets.
Erstellen eines automatischen Modellbewertungsauftrags
-
Öffnen Sie die Amazon-Bedrock-Konsole unter: https://console.aws.amazon.com/bedrock/.
-
Klicken Sie im Navigationsbereich auf Modelle.
-
Wählen Sie auf der Karte Eine Bewertung erstellen unter Automatisch die Option Automatische Bewertung erstellen.
-
Geben Sie auf der Seite Automatische Bewertung erstellen die folgenden Informationen ein:
-
Bewertungsname: Geben Sie dem Auftrag zur Modellbewertung einen Namen, der den Auftrag beschreibt. Dieser Name wird in der Liste Ihrer Aufträge zur Modellbewertung angezeigt. Der Name muss in Ihrem Konto in einer AWS-Region eindeutig sein.
-
Beschreibung (optional): Geben Sie eine optionale Beschreibung ein.
-
Modelle: Wählen Sie das Modell aus, das Sie bei der Modellbewertung verwenden möchten.
Weitere Informationen zu den verfügbaren Modellen und den Zugriff darauf in Amazon Bedrock finden Sie unter Zugriff auf Amazon-Bedrock-Basismodelle.
-
(Optional) Wählen Sie Aktualisieren, um die Inferenzkonfiguration zu ändern.
Durch eine Änderung der Inferenzkonfiguration werden die von den ausgewählten Modellen generierten Antworten geändert. Weitere Informationen zu den verfügbaren Inferenzparametern finden Sie unter Inferenzanforderungsparameter und Antwortfelder für Basismodelle.
-
Aufgabentyp: Wählen Sie den Aufgabentyp aus, den das Modell während des Auftrags zur Modellbewertung ausführen soll.
-
Metriken und Datensätze: Die Liste der verfügbaren Metriken und der integrierten Prompt-Datensätze ändert sich je nach der ausgewählten Aufgabe. Sie können aus der Liste Verfügbare integrierte Datensätze oder „Eigenen Prompt-Datensatz verwenden“ wählen. Geben Sie für die Verwendung eines eigenen Prompt-Datensatzes den exakten S3-URI Ihrer Prompt-Datensatzdatei an oder wählen Sie S3 durchsuchen aus, um nach Ihrem Prompt-Datensatz zu suchen.
-
Bewertungsergebnisse – Geben Sie den S3-URI des Verzeichnisses an, in dem die Ergebnisse gespeichert werden sollen. Wählen Sie S3 durchsuchen aus, um nach einem Speicherort in Amazon S3 zu suchen.
-
Zum Verwenden eines kundenseitig verwalteten Schlüssels aktivieren Sie das Kontrollkästchen Verschlüsselungseinstellungen anpassen (erweitert). Geben Sie dann den ARN des AWS KMS-Schlüssels an, den Sie verwenden möchten.
-
Amazon Bedrock IAM-Rolle – Wählen Sie Vorhandene Rolle verwenden aus, um eine IAM-Servicerolle zu nutzen, die bereits über die erforderlichen Berechtigungen verfügt. Sie können auch Neue Rolle erstellen auswählen, um eine neue IAM-Servicerolle zu generieren.
-
Wählen Sie dann die Option Erstellen.
Sobald sich der Status Abgeschlossen ändert, können Sie den Bericht des Auftrags einsehen.
- SDK for Python
-
Im folgenden Beispiel wird ein automatischer Bewertungsauftrag mit Python erstellt.
import boto3
client = boto3.client('bedrock')
job_request = client.create_evaluation_job(
jobName="api-auto-job-titan",
jobDescription="two different task types",
roleArn="arn:aws:iam::111122223333:role/role-name",
inferenceConfig={
"models": [
{
"bedrockModel": {
"modelIdentifier":"arn:aws:bedrock:us-west-2::foundation-model/amazon.titan-text-lite-v1",
"inferenceParams":"{\"inferenceConfig\":{\"maxTokens\": 512,\"temperature\":0.7,\"topP\":0.9}}"
}
}
]
},
outputDataConfig={
"s3Uri":"s3://amzn-s3-demo-bucket-model-evaluations/outputs/"
},
evaluationConfig={
"automated": {
"datasetMetricConfigs": [
{
"taskType": "QuestionAndAnswer",
"dataset": {
"name": "Builtin.BoolQ"
},
"metricNames": [
"Builtin.Accuracy",
"Builtin.Robustness"
]
}
]
}
}
)
print(job_request)
- AWS CLI
-
In der AWS CLI können Sie den Befehl help verwenden, um zu sehen, welche Parameter erforderlich und welche optional sind, wenn Sie create-evaluation-job in der AWS CLI angeben.
aws bedrock create-evaluation-job help
aws bedrock create-evaluation-job \
--job-name 'automatic-eval-job-cli-001' \
--role-arn 'arn:aws:iam::111122223333:role/role-name' \
--evaluation-config '{"automated": {"datasetMetricConfigs": [{"taskType": "QuestionAndAnswer","dataset": {"name": "Builtin.BoolQ"},"metricNames": ["Builtin.Accuracy","Builtin.Robustness"]}]}}' \
--inference-config '{"models": [{"bedrockModel": {"modelIdentifier":"arn:aws:bedrock:us-west-2::foundation-model/amazon.titan-text-lite-v1","inferenceParams":"{\"inferenceConfig\":{\"maxTokens\": 512,\"temperature\":0.7,\"topP\":0.9}}"}}]}' \
--output-data-config '{"s3Uri":"s3://automatic-eval-jobs/outputs"}'