

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Per-request marcação de metadados
<a name="cost-mgmt-request-metadata"></a>

Os metadados de solicitação permitem que você anexe tags de valor-chave a chamadas de inferência individuais do Amazon Bedrock no endpoint. [`bedrock-runtime`](endpoints.md) As tags são registradas com a solicitação nos [registros de invocação do modelo](model-invocation-logging.md), para que você possa atribuir o uso a uma equipe, aplicativo, ambiente, experimento ou qualquer outra dimensão que varie por chamada. Não há nenhum recurso para criar ou configurar com antecedência — cada chamada pode conter um conjunto diferente de tags.

Os metadados de solicitação são compatíveis com as seguintes [`bedrock-runtime`](endpoints.md)APIs:
+ [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html)
+ [InvokeModelWithResponseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithResponseStream.html)
+ [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html)
+ [ConverseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ConverseStream.html)

**nota**  
Os metadados de solicitação não são compatíveis com o [`bedrock-mantle`](endpoints.md)endpoint. Para a atribuição que flui diretamente para o AWS Cost Explorer e os Relatórios de AWS Custos e Uso como tags de alocação de custos, consulte[Perfis de inferência de aplicações](cost-mgmt-application-inference-profiles.md), [Projetos](cost-mgmt-projects.md) ou. [Espaços de trabalho](cost-mgmt-workspaces.md)

## Como funcionam os metadados da solicitação
<a name="cost-mgmt-request-metadata-how-it-works"></a>

Você anexa metadados a uma solicitação de forma diferente, dependendo da API que você chama:
+ **InvokeModel e InvokeModelWithResponseStream** — Defina o cabeçalho `X-Amzn-Bedrock-Request-Metadata` HTTP na solicitação. O valor é um objeto JSON cujas chaves e valores são cadeias de caracteres que você escolhe.
+ **Converse e ConverseStream** — Defina o `requestMetadata` campo no corpo da solicitação. Para obter mais informações, consulte [requestMetadata](conversation-inference.md#converse-request-metadata).

Os metadados da solicitação são registrados nos registros de invocação do modelo somente quando o registro está ativado no local em Região da AWS que a chamada é feita. Para obter instruções de configuração, consulte[Monitore a invocação do modelo usando CloudWatch Logs e Amazon S3](model-invocation-logging.md).

O exemplo a seguir mostra uma InvokeModel solicitação que marca a chamada com um nome de equipe, um ambiente e um identificador de caso de teste:

```
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."}]
}
```

O mesmo cabeçalho é suportado em 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."}]
}
```

**Importante**  
Ao assinar solicitações com o AWS Signature Version 4 (SigV4), inclua `X-Amzn-Bedrock-Request-Metadata` `SignedHeaders` na lista. Solicitações que omitem o cabeçalho da lista assinada são rejeitadas com um`InvalidSignatureException`. AWS Os SDKs que expõem os metadados da solicitação como um parâmetro lidam com isso automaticamente.

## Limites
<a name="cost-mgmt-request-metadata-limits"></a>

Os metadados da solicitação têm os seguintes limites, que se aplicam tanto ao `X-Amzn-Bedrock-Request-Metadata` cabeçalho (InvokeModel, InvokeModelWithResponseStream) quanto ao campo do `requestMetadata` corpo (Converse, ConverseStream):
+ Máximo de 16 entradas de metadados por solicitação.
+ Teclas: máximo de 256 caracteres.
+ Valores: máximo de 256 caracteres.
+ Caracteres permitidos: um conjunto restrito de caracteres alfanuméricos e de pontuação.

Solicitações que excedem esses limites são rejeitadas com um erro de validação.

## Onde os metadados da solicitação aparecem
<a name="cost-mgmt-request-metadata-in-logs"></a>

Os metadados da solicitação aparecem nos registros de invocação do modelo Amazon Bedrock no campo de nível superior. `requestMetadata` A seguinte entrada de registro abreviada mostra o campo de uma chamada: 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": { "...": "..." }
}
```

Você pode filtrar e agregar registros por campos de metadados no Amazon CloudWatch Logs Insights, nas ferramentas de consulta do Amazon S3, como o Amazon Athena, ou em qualquer outro sistema que leia registros de invocação.

## Considerações
<a name="cost-mgmt-request-metadata-considerations"></a>
+ Os valores dos metadados da solicitação são registrados somente quando o registro de invocação do modelo está ativado na chamada. Região da AWS Se o registro não estiver configurado, a solicitação ainda será bem-sucedida, mas os metadados não serão retidos.
+ Os metadados da solicitação não são entregues como uma etiqueta de alocação de AWS custos e não aparecem no AWS Cost Explorer ou no CUR. [Para analisar os custos por dimensão de metadados, junte seus registros de invocação ao seu Relatório de Custo e Uso ou agregue contagens de tokens diretamente dos registros de registro e multiplique pelas taxas por token nos preços do Amazon Bedrock. `requestId`](https://aws.amazon.com/bedrock/pricing/) Para atribuição que flui nativamente para o Cost Explorer e o CUR, use[Perfis de inferência de aplicações](cost-mgmt-application-inference-profiles.md), ou. [Projetos](cost-mgmt-projects.md) [Espaços de trabalho](cost-mgmt-workspaces.md)
+ Escolha chaves estáveis e de baixa cardinalidade`team`, como, `environment``feature`, ou `experiment` para análises fáceis de agregar. Use valores de cardinalidade mais altos, como identificadores de sessão ou rastreamento, somente quando precisar rastrear chamadas individuais.
+ Evite colocar informações de identificação pessoal (PII), credenciais ou outros dados confidenciais nos metadados da solicitação. Os valores são armazenados nos registros de invocação do modelo e em qualquer sistema que leia esses registros.
+ Os metadados de solicitação funcionam junto com os outros métodos de rastreamento de uso do Amazon Bedrock. Você pode usar [Atribuição principal do IAM](cost-mgmt-iam-principal-tracking.md) para atribuição por identidade e [Perfis de inferência de aplicações](cost-mgmt-application-inference-profiles.md) para tags de alocação de custos em nível de recurso na mesma carga de trabalho.