Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso directo AgentCore de Code Interpreter
En las siguientes secciones se muestra cómo utilizar el intérprete de AgentCore código de Amazon Bedrock directamente sin un marco de agente. Esto es especialmente útil cuando desea ejecutar fragmentos de código específicos mediante programación. Antes de revisar los ejemplos de esta sección, consulte Requisitos previos. Requisitos previos
Paso 1: Elija su enfoque e instale las dependencias
Amazon Bedrock AgentCore ofrece dos formas de interactuar con AgentCore Code Interpreter: mediante el cliente de SDK de alto nivel o mediante boto3 directamente.
-
Cliente SDK: el bedrock_agentcore SDK proporciona una interfaz simplificada que gestiona los detalles de administración de las sesiones. Utilice este enfoque para la mayoría de las aplicaciones.
-
Cliente Boto3: el AWS SDK le brinda acceso directo a las operaciones de la API del intérprete AgentCore de código. Utilice este enfoque cuando necesite un control detallado sobre la configuración de la sesión o quiera integrarse con las aplicaciones existentes basadas en boto3.
Crea una carpeta de proyecto (si no la creaste antes) e instala los paquetes necesarios:
mkdir agentcore-tools-quickstart
cd agentcore-tools-quickstart
python3 -m venv .venv
source .venv/bin/activate
En Windows, usa: .venv\Scripts\activate
Instale los paquetes obligatorios:
pip install bedrock-agentcore boto3
Estos paquetes proporcionan:
-
bedrock-agentcore: El SDK para las AgentCore herramientas de Amazon Bedrock, incluido AgentCore Code Interpreter
-
boto3: AWS SDK para Python (Boto3) para crear, configurar y administrar servicios AWS
Paso 2: Ejecute el código
Elija uno de los siguientes enfoques para ejecutar AgentCore código con Code Interpreter:
<Region>Sustitúyalo por su AWS región actual (por ejemplo, us-east-1 ous-west-2).
ejemplo
- SDK Client
-
-
Crea un archivo con el nombre direct_code_execution_sdk.py y agrega el siguiente código:
from bedrock_agentcore.tools.code_interpreter_client import CodeInterpreter
import json
# Initialize the Code Interpreter client for your region
code_client = CodeInterpreter('<Region>')
# Start a Code Interpreter session
code_client.start()
try:
# Execute Python code
response = code_client.invoke("executeCode", {
"language": "python",
"code": 'print("Hello World!!!")'
})
# Process and print the response
for event in response["stream"]:
print(json.dumps(event["result"], indent=2))
finally:
# Always clean up the session
code_client.stop()
Este código:
-
Crea un cliente AgentCore de interpretación de código para su región
-
Inicia una sesión (necesaria antes de ejecutar el código)
-
Ejecuta el código Python y transmite los resultados con todos los detalles del evento
-
Detiene la sesión para limpiar los recursos
Ejecuta el script
Ejecute el siguiente comando :
python direct_code_execution_sdk.py
Salida esperada
Deberías ver una respuesta de JSON que contenga el resultado de la ejecución junto con Hello World!!! el contenido de salida.
- Boto3
-
-
Crea un archivo con el nombre direct_code_execution_boto3.py y agrega el siguiente código:
import boto3
import json
# Code to execute
code_to_execute = """
print("Hello World!!!")
"""
# Initialize the bedrock-agentcore client
client = boto3.client(
"bedrock-agentcore",
region_name="<Region>"
)
# Start a Code Interpreter session
session_response = client.start_code_interpreter_session(
codeInterpreterIdentifier="aws.codeinterpreter.v1",
name="my-code-session",
sessionTimeoutSeconds=900
)
session_id = session_response["sessionId"]
print(f"Started session: {session_id}\n\n")
try:
# Execute code in the session
execute_response = client.invoke_code_interpreter(
codeInterpreterIdentifier="aws.codeinterpreter.v1",
sessionId=session_id,
name="executeCode",
arguments={
"language": "python",
"code": code_to_execute
}
)
# Extract and print the text output from the stream
for event in execute_response['stream']:
if 'result' in event:
result = event['result']
if 'content' in result:
for content_item in result['content']:
if content_item['type'] == 'text':
print(content_item['text'])
finally:
# Stop the session when done
client.stop_code_interpreter_session(
codeInterpreterIdentifier="aws.codeinterpreter.v1",
sessionId=session_id
)
print(f"\n\nStopped session: {session_id}")
Este código:
-
Crea un cliente boto3 para el servicio bedrock-agentcore
-
Inicia una sesión de intérprete de código con un tiempo de espera de 900 segundos AgentCore
-
Ejecuta el código de Python con el ID de sesión
-
Analiza la respuesta de transmisión para extraer el texto de salida
-
Detiene correctamente la sesión para liberar recursos
El enfoque boto3 requiere una administración explícita de las sesiones. Debe llamar start_code_interpreter_session antes de ejecutar el código y stop_code_interpreter_session cuando haya terminado.
Ejecute el script
Ejecute el siguiente comando :
python direct_code_execution_boto3.py
Salida esperada
Aparecerá Hello World!!! impreso el resultado de la ejecución del código, junto con la información del identificador de la sesión.