View a markdown version of this page

Per-request Tagging von Metadaten - Amazon Bedrock

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Per-request Tagging von Metadaten

Mit Metadaten anfordern können Sie Key-Value-Tags an einzelne Amazon Bedrock-Inferenzaufrufe auf dem Endpunkt anhängen. bedrock-runtime Die Tags werden zusammen mit der Anfrage in Ihren Modellaufrufprotokollen aufgezeichnet, sodass Sie die Nutzung einem Team, einer Anwendung, einer Umgebung, einem Experiment oder einer anderen Dimension zuordnen können, die je nach Anruf variiert. Es gibt keine Ressource, die im Voraus erstellt oder konfiguriert werden müsste — jeder Anruf kann einen anderen Satz von Tags enthalten.

Die Anforderung von Metadaten wird auf den folgenden bedrock-runtimeAPIs unterstützt:

Anmerkung

Das Anfordern von Metadaten wird auf dem bedrock-mantleEndpunkt nicht unterstützt. Informationen zur Zuordnung, die als AWS Kostenzuordnungs-Tags direkt in den AWS Cost Explorer und in die Kosten- und Nutzungsberichte einfließen, finden Sie unter AnwendungsinferenzprofileProjekte, oderArbeitsbereiche.

So funktionieren Metadaten anfordern

Je nachdem, welche API Sie aufrufen, hängen Sie Metadaten unterschiedlich an eine Anfrage an:

  • InvokeModel und InvokeModelWithResponseStream — Legen Sie den X-Amzn-Bedrock-Request-Metadata HTTP-Header für die Anfrage fest. Der Wert ist ein JSON-Objekt, dessen Schlüssel und Werte Zeichenketten sind, die Sie auswählen.

  • Umgekehrt und ConverseStream — Legen Sie das requestMetadata Feld im Anfragetext fest. Weitere Informationen finden Sie unter requestMetadata.

Anforderungsmetadaten werden nur dann in Ihren Modellaufrufprotokollen aufgezeichnet, wenn die Protokollierung an dem Ort aktiviert ist, an AWS-Region dem der Anruf getätigt wird. Anweisungen zur Einrichtung finden Sie unterÜberwachen Sie den Modellaufruf mithilfe von CloudWatch Logs und Amazon S3.

Das folgende Beispiel zeigt eine InvokeModel Anfrage, die den Anruf mit einem Teamnamen, einer Umgebung und einer Testfall-ID kennzeichnet:

POST /model/anthropic.claude-3-haiku-20240307-v1:0/invoke HTTP/1.1 Content-Type: application/json X-Amzn-Bedrock-Request-Metadata: {"team": "orchestrator", "environment": "preview-test", "test_case": "invoke_model_sync"} { "anthropic_version": "bedrock-2023-05-31", "max_tokens": 50, "messages": [{"role": "user", "content": "Say hello in one word."}] }

Derselbe Header wird unterstützt auf InvokeModelWithResponseStream:

POST /model/anthropic.claude-3-haiku-20240307-v1:0/invoke-with-response-stream HTTP/1.1 Content-Type: application/json X-Amzn-Bedrock-Request-Metadata: {"team": "orchestrator", "environment": "preview-test", "test_case": "invoke_model_stream"} { "anthropic_version": "bedrock-2023-05-31", "max_tokens": 50, "messages": [{"role": "user", "content": "Say hello in one word."}] }
Wichtig

Wenn Sie Anfragen mit AWS Signature Version 4 (Sigv4) signieren, nehmen Sie diese X-Amzn-Bedrock-Request-Metadata in die SignedHeaders Liste auf. Anfragen, die den Header nicht in der signierten Liste enthalten, werden mit einem zurückgewiesen. InvalidSignatureException AWS SDKs, die Anforderungsmetadaten als Parameter verfügbar machen, behandeln dies automatisch.

Einschränkungen

Für Anforderungsmetadaten gelten die folgenden Beschränkungen, die sowohl für den X-Amzn-Bedrock-Request-Metadata Header (InvokeModel, InvokeModelWithResponseStream) als auch für das requestMetadata Textfeld (Converse, ConverseStream) gelten:

  • Maximal 16 Metadateneinträge pro Anfrage.

  • Schlüssel: maximal 256 Zeichen.

  • Werte: maximal 256 Zeichen.

  • Zulässige Zeichen: ein eingeschränkter Satz alphanumerischer Zeichen und Satzzeichen.

Anfragen, die diese Grenzwerte überschreiten, werden mit einem Validierungsfehler abgelehnt.

Wo die Metadaten der Anfrage angezeigt werden

Metadaten anfordern werden in Ihren Amazon Bedrock-Modellaufrufprotokollen unter dem Feld der obersten requestMetadata Ebene angezeigt. Der folgende abgekürzte Protokolleintrag zeigt das Feld für einen Anruf: InvokeModel

{ "schemaType": "ModelInvocationLog", "schemaVersion": "1.0", "timestamp": "2024-01-15T12:00:00Z", "accountId": "123456789012", "region": "us-east-1", "requestId": "abcd1234-5678-efgh-ijkl-mnopqrstuvwx", "operation": "InvokeModel", "modelId": "anthropic.claude-3-haiku-20240307-v1:0", "requestMetadata": { "team": "orchestrator", "environment": "preview-test", "test_case": "invoke_model_sync" }, "input": { "...": "..." }, "output": { "...": "..." } }

Sie können Protokolle in Amazon Logs Insights, Amazon S3-Abfragetools wie Amazon Athena oder jedem anderen System, das CloudWatch Aufrufprotokolle liest, nach Metadatenfeldern filtern und aggregieren.

Überlegungen

  • Werte von Anforderungsmetadaten werden nur aufgezeichnet, wenn die Protokollierung von Modellaufrufen in den Aufrufen aktiviert ist. AWS-Region Wenn die Protokollierung nicht konfiguriert ist, ist die Anfrage trotzdem erfolgreich, aber die Metadaten werden nicht beibehalten.

  • Anforderungsmetadaten werden nicht als AWS Kostenzuordnungs-Tag bereitgestellt und erscheinen nicht im AWS Cost Explorer oder CUR. Um die Kosten nach Metadatendimension zu analysieren, verknüpfen Sie Ihre Aufrufprotokolle mit Ihrem Kosten- und Nutzungsbericht oder aggregieren Sie die Token-Anzahl direkt aus den Protokolldatensätzen und multiplizieren Sie sie mit den Preisen pro Token in der Amazon Bedrock-Preisgestaltung. requestId Für die Zuordnung, die nativ in Cost Explorer und CUR fließt, verwenden SieAnwendungsinferenzprofile, Projekte oder. Arbeitsbereiche

  • Wählen Sie stabile Schlüssel mit niedriger Kardinalität wieteam,, oder experiment für Analysen environmentfeature, die einfach zu aggregieren sind. Verwenden Sie Werte mit höherer Kardinalität wie Sitzungs- oder Ablaufverfolgungskennungen nur, wenn Sie einzelne Anrufe verfolgen müssen.

  • Vermeiden Sie es, personenbezogene Daten (PII), Anmeldeinformationen oder andere sensible Daten in Anforderungsmetadaten zu platzieren. Werte werden in Ihren Modellaufrufprotokollen und in allen Systemen gespeichert, die diese Protokolle lesen.

  • Metadaten anfordern funktioniert zusammen mit den anderen Methoden zur Nutzungsverfolgung von Amazon Bedrock. Sie können Tags IAM-Hauptzuweisung für die Zuordnung pro Identität und für die Kostenzuweisung auf Ressourcenebene Anwendungsinferenzprofile für denselben Workload verwenden.