View a markdown version of this page

Menggunakan AgentCore Code Interpreter secara langsung - Batuan Dasar Amazon AgentCore

Menggunakan AgentCore Code Interpreter secara langsung

Bagian berikut menunjukkan kepada Anda cara menggunakan Amazon Bedrock AgentCore Code Interpreter secara langsung tanpa kerangka kerja agen. Ini sangat berguna ketika Anda ingin mengeksekusi cuplikan kode tertentu secara terprogram. Sebelum Anda membaca contoh di bagian ini, lihat Prasyarat.

Langkah 1: Pilih pendekatan Anda dan instal dependensi

Amazon Bedrock AgentCore menyediakan dua cara untuk berinteraksi dengan AgentCore Code Interpreter: menggunakan klien SDK tingkat tinggi atau menggunakan boto3 secara langsung.

  • SDK Client: bedrock_agentcore SDK menyediakan antarmuka yang disederhanakan yang menangani detail manajemen sesi. Gunakan pendekatan ini untuk sebagian besar aplikasi.

  • Klien Boto3: AWS SDK memberi Anda akses langsung ke operasi API AgentCore Code Interpreter. Gunakan pendekatan ini ketika Anda memerlukan kontrol halus atas konfigurasi sesi atau ingin mengintegrasikan dengan aplikasi berbasis boto3 yang ada.

Buat folder proyek (jika Anda tidak membuatnya sebelumnya) dan instal paket yang diperlukan:

mkdir agentcore-tools-quickstart cd agentcore-tools-quickstart python3 -m venv .venv source .venv/bin/activate

Di Windows, gunakan: .venv\Scripts\activate

Instal paket yang diperlukan:

pip install bedrock-agentcore boto3

Paket-paket ini menyediakan:

  • bedrock-agentcore: SDK untuk Amazon Bedrock AgentCore tools termasuk AgentCore Code Interpreter

  • boto3: AWS SDK untuk Python (Boto3) SDK for Python (Boto3) untuk membuat, mengkonfigurasi, dan mengelola layanan AWS

Langkah 2: Jalankan kode

Pilih salah satu pendekatan berikut untuk mengeksekusi kode dengan AgentCore Code Interpreter:

catatan

Ganti <Region> dengan AWS Region Anda yang sebenarnya (misalnya, us-east-1 atauus-west-2).

contoh
SDK Client
  1. Buat file bernama direct_code_execution_sdk.py dan tambahkan kode berikut:

    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()

    Kode ini:

    • Membuat klien AgentCore Code Interpreter untuk wilayah Anda

    • Memulai sesi (diperlukan sebelum mengeksekusi kode)

    • Menjalankan kode Python dan mengalirkan hasilnya dengan detail acara lengkap

    • Menghentikan sesi untuk membersihkan sumber daya

      Jalankan skrip

      Jalankan perintah berikut:

      python direct_code_execution_sdk.py

      Output yang diharapkan

      Anda akan melihat respons JSON yang berisi hasil eksekusi Hello World!!! dengan konten output.

Boto3
  1. Buat file bernama direct_code_execution_boto3.py dan tambahkan kode berikut:

    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}")

    Kode ini:

    • Membuat klien boto3 untuk layanan bedrock-agentcore

    • Memulai sesi AgentCore Code Interpreter dengan timeout 900 detik

    • Mengeksekusi kode Python menggunakan ID sesi

    • Mem-parsing respon streaming untuk mengekstrak output teks

    • Menghentikan sesi dengan benar untuk melepaskan sumber daya

      Pendekatan boto3 membutuhkan manajemen sesi eksplisit. Anda harus menelepon start_code_interpreter_session sebelum mengeksekusi kode dan setelah stop_code_interpreter_session selesai.

      Jalankan skrip

      Jalankan perintah berikut:

      python direct_code_execution_boto3.py

      Output yang diharapkan

      Anda akan melihat Hello World!!! dicetak sebagai hasil dari eksekusi kode, bersama dengan informasi ID sesi.