

# Gerenciamento de recursos e sessões
<a name="code-interpreter-resource-session-management"></a>

Os tópicos a seguir mostram como o Amazon Bedrock AgentCore Code Interpreter funciona e como você pode criar os recursos e gerenciar sessões.

**Topics**
+ [Permissões do IAM](#code-interpreter-iam-permissions)
+ [Como funciona](#code-interpreter-how-it-works)
+ [Criando um interpretador de código e iniciando uma sessão](#code-interpreter-create-session)
+ [Gerenciamento de recursos](code-interpreter-resource-management.md)
+ [Gerenciamento de sessões](code-interpreter-session-characteristics.md)

## Permissões do IAM
<a name="code-interpreter-iam-permissions"></a>

A política do IAM a seguir fornece as permissões necessárias para usar o interpretador AgentCore de código:

```
{
"Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "bedrock-agentcore:CreateCodeInterpreter",
                "bedrock-agentcore:StartCodeInterpreterSession",
                "bedrock-agentcore:InvokeCodeInterpreter",
                "bedrock-agentcore:StopCodeInterpreterSession",
                "bedrock-agentcore:DeleteCodeInterpreter",
                "bedrock-agentcore:ListCodeInterpreters",
                "bedrock-agentcore:GetCodeInterpreter",
                "bedrock-agentcore:GetCodeInterpreterSession",
                "bedrock-agentcore:ListCodeInterpreterSessions"
            ],
            "Resource": "arn:aws:bedrock-agentcore:us-east-1:111122223333:code-interpreter/*"
        }
    ]
}
```

Você também deve adicionar a seguinte política de confiança à função de execução:

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

## Como funciona
<a name="code-interpreter-how-it-works"></a>

1.  **Crie um intérprete de código** 

   Crie seu próprio interpretador de código ou use o interpretador de código do sistema para habilitar recursos como escrever e executar código ou realizar cálculos complexos. O Code Interpreter permite que você aumente o tempo de execução do agente para executar código com segurança em um ambiente totalmente gerenciado com baixa latência.

1.  **Integre-o a um agente para invocar** 

   Copie o ID do recurso da ferramenta incorporada no código do agente de tempo de execução para invocá-lo como parte da sua sessão. Para as ferramentas do Code Interpreter, você pode executar o código e visualizar os resultados em tempo real.

1.  **Avalie o desempenho usando a observabilidade** 

   Monitore as principais métricas de cada ferramenta CloudWatch para obter insights de desempenho em tempo real.

## Criando um interpretador de código e iniciando uma sessão
<a name="code-interpreter-create-session"></a>

1.  **Crie um intérprete de código** 

   Ao configurar um interpretador de código, você pode escolher as configurações de rede (sandbox ou pública) e a função da função de execução que define quais AWS recursos o interpretador de código pode acessar.

1.  **Iniciar uma sessão** 

   O Code Interpreter usa um modelo baseado em sessão. Depois de criar um interpretador de código, você inicia uma sessão com um período de tempo limite configurável (o padrão é 15 minutos). As sessões terminam automaticamente após o período de tempo limite. Várias sessões podem ser ativas simultaneamente para um único interpretador de código, com cada sessão mantendo seu próprio estado e ambiente.

1.  **Executar código** 

   Em uma sessão ativa, você pode executar código em linguagens compatíveis (Python, JavaScript, TypeScript) e manter o estado entre as execuções. Você também pode realizar upload/download operações de arquivo e usar o suporte fornecido para os comandos shell e os comandos da AWS CLI.

1.  **Pare a sessão e limpe** 

   Ao terminar de usar uma sessão, você deve interrompê-la para liberar recursos e evitar cobranças desnecessárias. Você também pode excluir o interpretador de código se não quiser mais usá-lo.