

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á.

# Monitore a invocação do modelo usando CloudWatch Logs e Amazon S3
<a name="model-invocation-logging"></a>

Você pode usar o registro de invocação do modelo para coletar registros de invocação, dados de entrada do modelo e dados de saída do modelo para todas as invocações usadas no Amazon Bedrock Conta da AWS em uma região.

Com o registro de invocações, você pode coletar todos os dados de solicitação, dados de resposta e metadados associados às chamadas suportadas realizadas em sua conta em uma região. O registro pode ser configurado para fornecer os recursos de destino nos quais os dados de log serão publicados. Os destinos compatíveis incluem Amazon CloudWatch Logs e Amazon Simple Storage Service (Amazon S3). Somente destinos na mesma conta e região são permitidos.

O registro em log de invocação do modelo está desabilitado por padrão. Depois que o registro em log de invocações do modelo é habilitado, os logs são armazenados até que a configuração de registro em log seja excluída.

As operações a seguir podem registrar em log as invocações do modelo.
+ [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)
+ [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)

**nota**  
O registro de invocação do modelo só é suportado para chamadas feitas por meio do `bedrock-runtime` endpoint. As chamadas feitas por meio de outros endpoints, como a API de respostas no `bedrock-mantle` endpoint, não são capturadas atualmente pelo registro de invocações.

Ao [usar a API Converse](conversation-inference-call.md), todos os dados de documento ou de imagem que você transmite são registrados em log no Amazon S3 (se você tiver [habilitado](#model-invocation-logging-console) a entrega e o registro em log de imagens no Amazon S3).

Antes de habilitar o registro de invocações, você precisa configurar um destino Amazon S3 CloudWatch ou Logs. É possível habilitar o log de invocação por meio do console ou da API.

**Topics**
+ [Configurar um destino do Amazon S3](#setup-s3-destination)
+ [Configurar um destino CloudWatch de registros](#setup-cloudwatch-logs-destination)
+ [Registro em log da invocação de modelos usando o console](#model-invocation-logging-console)
+ [Registro em log da invocação de modelos usando a API](#using-apis-logging)
+ [Formato de entrada de registro](#model-invocation-log-format)

## Configurar um destino do Amazon S3
<a name="setup-s3-destination"></a>

**nota**  
Ao usar o Amazon S3 como destino de registro, o bucket deve estar no mesmo Conta da AWS local em que você está criando a configuração de registro de invocação do modelo. Região da AWS 

É possível configurar um destino do S3 para fazer login no Amazon Bedrock com estas etapas:

1. Crie um bucket do S3 no qual os logs serão entregues.

1. Adicione uma política de bucket como a mostrada abaixo (substitua valores por{{accountId}}, {{region}}{{bucketName}}, e opcionalmente{{prefix}}):
**nota**  
Uma política de bucket é automaticamente anexada ao bucket em seu nome quando você configura o registro em log com as permissões `S3:GetBucketPolicy` e `S3:PutBucketPolicy`.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AmazonBedrockLogsWrite",
               "Effect": "Allow",
               "Principal": {
                   "Service": "bedrock.amazonaws.com"
               },
               "Action": [
                   "s3:PutObject"
               ],
               "Resource": [
                   "arn:aws:s3:::{{bucketName}}/{{prefix}}/AWSLogs/{{123456789012}}/BedrockModelInvocationLogs/*"
               ],
               "Condition": {
                   "StringEquals": {
                       "aws:SourceAccount": "{{123456789012}}"
                   },
                   "ArnLike": {
                       "aws:SourceArn": "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:*"
                   }
               }
           }
       ]
   }
   ```

------

1. (Opcional) Se estiver configurando SSE-KMS no bucket, adicione a seguinte política na chave KMS:

   ```
   {
       "Effect": "Allow",
       "Principal": {
           "Service": "bedrock.amazonaws.com"
       },
       "Action": "kms:GenerateDataKey",
       "Resource": "*",
       "Condition": {
           "StringEquals": {
             "aws:SourceAccount": "{{accountId}}" 
           },
           "ArnLike": {
              "aws:SourceArn": "arn:aws:bedrock:{{region}}:{{accountId}}:*"
           }
       }
   }
   ```

Para obter mais informações sobre as SSE-KMS configurações do S3, consulte [Especificando](https://docs.aws.amazon.com/AmazonS3/latest/userguide/specifying-kms-encryption.html) a criptografia KMS.

**nota**  
A ACL do bucket deve ser desativada para que a política do bucket entre em vigor. Para obter mais informações, consulte [Desabilitar ACLs de todos os novos buckets e aplicar Object Ownership](https://docs.aws.amazon.com/AmazonS3/latest/userguide/ensure-object-ownership.html).

## Configurar um destino CloudWatch de registros
<a name="setup-cloudwatch-logs-destination"></a>

Você pode configurar um destino do Amazon CloudWatch Logs para fazer login no Amazon Bedrock com as seguintes etapas:

1. Crie um grupo de CloudWatch registros onde os registros serão publicados.

1. Crie uma função do IAM com as seguintes permissões para CloudWatch Logs.

   **Entidade confiável**:

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "bedrock.amazonaws.com"
               },
               "Action": "sts:AssumeRole",
               "Condition": {
                   "StringEquals": {
                       "aws:SourceAccount": "{{123456789012}}"
                   },
                   "ArnLike": {
                       "aws:SourceArn": "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:*"
                   }
               }
           }
       ]
   }
   ```

------

   **Política da função**:

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "logs:CreateLogStream",
                   "logs:PutLogEvents"
               ],
               "Resource": "arn:aws:logs:{{us-east-1}}:{{123456789012}}:log-group:{{logGroupName}}:log-stream:aws/bedrock/modelinvocations"
           }
       ]
   }
   ```

------

Para obter mais informações sobre como configurar o SSE para CloudWatch registros, consulte [Criptografar dados de registro em CloudWatch registros usando AWS Key Management Service](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html).

## Registro em log da invocação de modelos usando o console
<a name="model-invocation-logging-console"></a>

**Para habilitar o registro de invocação do modelo**

Faça login no Console de gerenciamento da AWS com uma identidade do IAM que tenha permissões para usar o console Amazon Bedrock. Em seguida, abra o console Amazon Bedrock em [https://console.aws.amazon.com/bedrock](https://console.aws.amazon.com/bedrock).

1. No painel de navegação esquerdo, selecione **Configurações**.

1. Na página **Registro de invocação de modelo, selecione Registro** de **invocação de modelo**. Configurações adicionais para registro serão exibidas.

1. Selecione as modalidades das solicitações e respostas de dados que você deseja publicar nos registros. Você pode selecionar qualquer combinação das seguintes opções de saída:
   + Texto
   + Imagem
   + Incorporação
   + Vídeo
**nota**  
Os dados serão registrados para *todos os* modelos que suportam as modalidades (seja como entrada ou saída) que você escolher. Por exemplo, se você selecionar **Imagem**, a invocação do modelo será registrada para todos os modelos que suportam entrada de imagem, saída de imagem ou ambas.

1. Selecione onde publicar os registros:
   + Somente Amazon S3
   + CloudWatch Somente registros
   + Tanto o Amazon S3 quanto o Logs CloudWatch 

**Destinos de logs**  
Os destinos Amazon S3 e CloudWatch Logs são compatíveis com registros de invocação e pequenos dados de entrada e saída. Para grandes dados de entrada e saída ou de saídas de imagens binárias, somente o Amazon S3 é compatível. Os detalhes a seguir resumem como os dados serão representados no local de destino.
+ **Destino do S3**: arquivos JSON compactados em gzip, cada um contendo um lote de registros de log de invocação, são entregues ao bucket do S3 especificado. Semelhante a um evento CloudWatch Logs, cada registro conterá os metadados de invocação e corpos JSON de entrada e saída de até 100 KB de tamanho. Dados binários ou corpos JSON maiores que 100 KB serão carregados como objetos individuais no bucket do Amazon S3 especificado sob o prefixo de dados. Os dados podem ser consultados usando o Amazon S3 Select e o Amazon Athena e podem ser catalogados para uso de ETL. AWS Glue Os dados podem ser carregados no OpenSearch serviço ou processados por qualquer EventBridge destino da Amazon. 
+ **CloudWatch Destino dos registros** — os eventos do registro de invocação JSON são entregues a um grupo de registros especificado em Logs. CloudWatch O evento de logs contém os metadados de invocação e corpos JSON de entrada e saída de até 100 KB. Se um local do Amazon S3 para entrega de grandes dados for fornecido, dados binários ou corpos JSON maiores que 100 KB serão enviados para o bucket do Amazon S3 com o prefixo de dados. Em vez disso, os dados podem ser consultados usando o CloudWatch Logs Insights e podem ser transmitidos posteriormente para vários serviços em tempo real usando o Logs. CloudWatch 

## Registro em log da invocação de modelos usando a API
<a name="using-apis-logging"></a>

O registro em log da invocação de modelos pode ser configurado usando as seguintes APIs:
+ [PutModelInvocationLoggingConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_PutModelInvocationLoggingConfiguration.html)
+ [GetModelInvocationLoggingConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_GetModelInvocationLoggingConfiguration.html)
+ [DeleteModelInvocationLoggingConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_DeleteModelInvocationLoggingConfiguration.html)

## Formato de entrada de registro
<a name="model-invocation-log-format"></a>

Cada entrada do registro de invocação é um objeto JSON com a estrutura a seguir. O formato é o mesmo para os destinos do CloudWatch Logs e do Amazon S3.

```
{
    "schemaType": "ModelInvocationLog",
    "schemaVersion": "1.0",
    "timestamp": "2024-01-15T12:00:00Z",
    "accountId": "123456789012",
    "region": "us-east-1",
    "requestId": "abcd1234-5678-efgh-ijkl-mnopqrstuvwx",
    "operation": "Converse",
    "modelId": "anthropic.claude-sonnet-4-20250514-v1:0",
    "requestMetadata": {
        "team": "orchestrator",
        "environment": "production"
    },
    "input": {
        "inputContentType": "application/json",
        "inputBodyJson": { },
        "inputTokenCount": 25
    },
    "output": {
        "outputContentType": "application/json",
        "outputBodyJson": { },
        "outputTokenCount": 150
    }
}
```

A tabela a seguir descreve os campos em uma entrada de registro:


****  

| Campo | Description | 
| --- | --- | 
| schemaType | O tipo de registro de log. Sempre ModelInvocationLog. | 
| schemaVersion | A versão do esquema de log. | 
| timestamp | A hora em que a invocação foi feita, no formato ISO 8601. | 
| accountId | O Conta da AWS ID que fez a invocação. | 
| region | O Região da AWS local onde a invocação foi feita. | 
| requestId | O identificador exclusivo da solicitação. | 
| operation | A operação de API chamada (por exemplo,Converse,InvokeModel). | 
| modelId | O ID do modelo ou ID do perfil de inferência usado para a invocação. | 
| requestMetadata | Um objeto JSON opcional de tags de valor-chave fornecidas pelo chamador. Presente somente quando o chamador fornece os metadados da solicitação. Para obter detalhes, consulte [Per-request marcação de metadados](cost-mgmt-request-metadata.md). | 
| input.inputBodyJson | O corpo da solicitação enviado ao modelo (até 100 KB). Corpos maiores são armazenados como objetos separados no Amazon S3. | 
| input.inputTokenCount | O número de tokens de entrada na solicitação. | 
| output.outputBodyJson | O corpo da resposta do modelo (até 100 KB). Corpos maiores são armazenados como objetos separados no Amazon S3. | 
| output.outputTokenCount | O número de tokens de saída na resposta. | 

**nota**  
Dados binários (como imagens) e corpos JSON maiores que 100 KB não são incluídos em linha na entrada do registro. Em vez disso, eles são armazenados como objetos separados no bucket do Amazon S3 sob o prefixo de dados, e a entrada de registro contém uma referência à localização do Amazon S3.