Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Per-request balisage des métadonnées
Les métadonnées de demande vous permettent d'associer des balises clé-valeur à des appels d'inférence Amazon Bedrock individuels sur le terminal. bedrock-runtime Les balises sont enregistrées avec la demande dans les journaux d'appel de votre modèle, afin que vous puissiez attribuer l'utilisation à une équipe, à une application, à un environnement, à une expérience ou à toute autre dimension qui varie selon les appels. Il n'y a aucune ressource à créer ou à configurer à l'avance : chaque appel peut comporter un ensemble de balises différent.
Les métadonnées des demandes sont prises en charge par les bedrock-runtimeAPI suivantes :
Note
Les métadonnées de demande ne sont pas prises en charge sur le bedrock-mantlepoint de terminaison. Pour une attribution directement intégrée dans AWS Cost Explorer et AWS Cost and Usage Reports sous forme de balises de répartition des coûtsProfils d’inférence d’applications, voirProjets, ouEspaces de travail.
Comment fonctionnent les métadonnées des demandes
Vous associez des métadonnées à une demande différemment en fonction de l'API que vous appelez :
-
InvokeModel et InvokeModelWithResponseStream — Définissez l'en-tête
X-Amzn-Bedrock-Request-MetadataHTTP de la demande. La valeur est un objet JSON dont les clés et les valeurs sont des chaînes que vous choisissez. -
Converse et ConverseStream — Définissez le
requestMetadatachamp dans le corps de la demande. Pour de plus amples informations, veuillez consulter requestMetadata.
Les métadonnées de demande sont enregistrées dans les journaux d'invocation de votre modèle uniquement lorsque la journalisation est activée dans le Région AWS lieu où l'appel est effectué. Pour les instructions de configuration, voirSurveillez l'invocation du modèle à l'aide de CloudWatch Logs et d'Amazon S3.
L'exemple suivant montre une InvokeModel demande qui étiquette l'appel avec un nom d'équipe, un environnement et un identifiant de scénario de test :
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."}] }
Le même en-tête est pris en charge sur 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."}] }
Important
Lorsque vous signez des demandes avec AWS Signature Version 4 (SigV4), incluez-les X-Amzn-Bedrock-Request-Metadata dans la SignedHeaders liste. Les demandes qui omettent l'en-tête de la liste signée sont rejetées avec unInvalidSignatureException. AWS Les SDK qui exposent les métadonnées des demandes sous forme de paramètre gèrent cela automatiquement.
Restrictions
Les métadonnées de la demande ont les limites suivantes, qui s'appliquent à la fois à l'X-Amzn-Bedrock-Request-Metadataen-tête (InvokeModel, InvokeModelWithResponseStream) et au champ requestMetadata body (Converse, ConverseStream) :
Maximum de 16 entrées de métadonnées par demande.
Clés : 256 caractères maximum.
Valeurs : 256 caractères maximum.
Caractères autorisés : ensemble restreint de caractères alphanumériques et de ponctuation.
Les demandes qui dépassent ces limites sont rejetées avec une erreur de validation.
Où apparaissent les métadonnées de la demande
Les métadonnées de demande apparaissent dans les journaux d'invocation de votre modèle Amazon Bedrock sous le champ de niveau supérieurrequestMetadata. L'entrée de journal abrégée suivante indique le champ correspondant à un InvokeModel appel :
{ "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": { "...": "..." } }
Vous pouvez filtrer et agréger les journaux par champs de métadonnées dans Amazon CloudWatch Logs Insights, dans les outils de requête Amazon S3 tels qu'Amazon Athena ou dans tout autre système qui lit les journaux d'invocation.
Considérations
-
Les valeurs des métadonnées des demandes ne sont enregistrées que lorsque la journalisation des appels du modèle est activée dans les appels. Région AWS Si la journalisation n'est pas configurée, la demande aboutit tout de même, mais les métadonnées ne sont pas conservées.
-
Les métadonnées de demande ne sont pas fournies sous forme de balise de répartition des AWS coûts et n'apparaissent pas dans AWS Cost Explorer ou CUR. Pour analyser les coûts par dimension de métadonnées, associez vos journaux d'appels à votre rapport sur les coûts et l'utilisation
requestId, ou agrégez le nombre de jetons directement à partir des enregistrements de journaux et multipliez-le par les taux par jeton dans la tarification d'Amazon Bedrock. Pour une attribution qui est transmise nativement à Cost Explorer et CUR, utilisez Profils d’inférence d’applicationsProjets, ouEspaces de travail. -
Choisissez des clés stables à faible cardinalité telles que
team,environmentfeature, ouexperimentpour des analyses faciles à agréger. Utilisez des valeurs de cardinalité plus élevées, telles que les identifiants de session ou de suivi, uniquement lorsque vous devez suivre des appels individuels. -
Évitez de placer des informations personnelles identifiables (PII), des informations d'identification ou d'autres données sensibles dans les métadonnées des demandes. Les valeurs sont stockées dans les journaux d'appel de votre modèle et dans tout système qui lit ces journaux.
-
Les métadonnées des demandes fonctionnent parallèlement aux autres méthodes de suivi de l'utilisation d'Amazon Bedrock. Vous pouvez utiliser des balises Attribution principale de l'IAM pour l'attribution par identité et Profils d’inférence d’applications pour la répartition des coûts au niveau des ressources sur la même charge de travail.