View a markdown version of this page

Membuat peristiwa - Batu Dasar Amazon AgentCore

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Membuat peristiwa

Peristiwa adalah unit dasar jangka pendek dari mana informasi terstruktur diekstraksi ke dalam memori jangka panjang dalam Mem AgentCore ori. CreateEventOperasi ini memungkinkan Anda menyimpan berbagai jenis data dalam AgentCore Memori, diatur oleh aktor dan sesi. Peristiwa dicakup dalam memori di bawah:

ActorId

Mengidentifikasi entitas yang terkait dengan peristiwa, seperti pengguna akhir atau kombinasi agent/user

SessionId

Kelompokkan acara terkait bersama-sama, seperti sesi percakapan

CreateEventOperasi menyimpan peristiwa baru yang tidak dapat diubah dalam sesi memori tertentu. Peristiwa mewakili potongan informasi individual yang ingin diingat agen Anda, seperti pesan percakapan, tindakan pengguna, atau peristiwa sistem.

Operasi ini berguna untuk:

  • Merekam riwayat percakapan antara pengguna, agen, dan alat

  • Menyimpan interaksi dan perilaku pengguna

  • Menangkap peristiwa sistem dan perubahan status

  • Membangun catatan kronologis kegiatan dalam sesi

Misalnya kode, lihat S kenario: Agen AI dukungan pelanggan menggunakan AgentCore Memori.

catatan

Jika Anda ingin memasukkan konten ke dalam memori jangka panjang tanpa menyimpannya sebagai peristiwa jangka pendek yang dapat diambil, gunakan IngestData operasi sebagai gantinya.

Jenis muatan acara

payloadParameter menerima daftar item payload, memungkinkan Anda menyimpan berbagai jenis data dalam satu acara. Jenis muatan umum meliputi:

Percakapan

Untuk menyimpan pesan percakapan dengan peran (misalnya, “pengguna” atau “asisten”) dan konten.

JSON

Untuk menyimpan JSON-formatted data non-percakapan — seperti peristiwa perilaku, log aktivitas, atau peristiwa sistem — hingga 100 KB untuk setiap muatan.

Gumpalan

Untuk menyimpan data format biner, seperti gambar dan dokumen, atau data yang unik untuk agen Anda, seperti data yang disimpan dalam format JSON.

catatan

Muatan percakapan dan JSON diekstraksi ke dalam memori jangka panjang. Muatan blob disimpan dalam memori jangka pendek saja dan tidak diekstraksi.

Karena payload merupakan daftar, satu peristiwa dapat membawa lebih dari satu item muatan dan campuran jenis muatan. Contoh berikut menunjukkan badan permintaan JSON yang menyimpan pesan percakapan, log aktivitas JSON, dan blob biner (gambar yang dikodekan base64) dalam satu acara:

Contoh - permintaan Multi-payload acara

{ "memoryId": "mem-12345abcdef", "actorId": "agent-support-123/customer-456", "sessionId": "session-789", "eventTimestamp": 1718806000000, "payload": [ { "conversational": { "content": { "text": "Here's a photo of the camera I'm interested in." }, "role": "USER" } }, { "json": { "content": { "eventType": "product_viewed", "productId": "cam-9921", "category": "action-cameras", "priceUsd": 349.99 } } }, { "blob": "iVBORw0KGgoAAAANSUhEUg..." } ] }

Konfigurasi ekstraksi

Gunakan extractionConfig parameter untuk mengonfigurasi bagaimana ekstraksi memori jangka panjang berperilaku untuk acara ini. Gunakan parameter ini untuk meneruskan nilai variabel namespace kustom yang diganti layanan namespaceTemplates selama ekstraksi.

NamaSpaceVariables

Peta kunci variabel namespace kustom untuk nilainya. Jika Anda mendefinisikan variabel namespace kustom dengan namespaceKeys parameter saat membuat memori, berikan nilainya di sini sehingga layanan dapat menyelesaikan hierarki namespace untuk penyimpanan memori jangka panjang. Semua kunci dan nilai harus huruf kecil.

Contoh berikut menunjukkan cara meneruskan nilai variabel namespace kustom saat membuat acara:

{ "memoryId": "mem-12345abcdef", "actorId": "user456", "sessionId": "session789", "eventTimestamp": 1692804206123, "payload": [ { "conversational": { "content": {"text": "I need help with my deployment."}, "role": "USER" } } ], "extractionConfig": { "namespaceVariables": { "orgname": "engineering", "teamname": "backend" } } }
catatan

Jika nilai yang extractionConfig diperlukan hilang atau tidak valid, CreateEvent operasi masih berhasil dan peristiwa tersebut dipertahankan dalam memori jangka pendek. Namun, ekstraksi memori jangka panjang mungkin tidak dimulai untuk strategi yang terpengaruh. Siapkan log yang dijual untuk memantau kegagalan ekstraksi.

Percabangan acara

branchParameter ini memungkinkan Anda mengatur acara melalui percabangan lanjutan. Ini berguna untuk skenario seperti pengeditan pesan atau jalur percakapan alternatif. Misalnya, Anda memiliki percakapan yang berlangsung lama, dan Anda menyadari bahwa Anda tertarik untuk menjelajahi percakapan alternatif mulai dari 5 pesan yang lalu. Anda dapat menggunakan branch parameter untuk memulai percakapan baru dari pesan itu, disimpan di cabang baru — yang memungkinkan Anda juga kembali ke percakapan asli. Dan lebih biasa lagi, ini berguna jika Anda ingin membiarkan pengguna mengedit pesan terbaru mereka (jika pengguna menekan enter lebih awal atau salah ketik) dan melanjutkan percakapan.

Saat membuat cabang, Anda menentukan:

name

Nama deskriptif untuk cabang, seperti “percakapan yang diedit”.

akar EventId

ID acara dari mana cabang berasal.

Berikut adalah contoh membuat acara bercabang untuk mewakili pesan yang diedit:

{ "memoryId": "mem-12345abcdef", "actorId": "agent-support-123/customer-456", "sessionId": "session-789", "eventTimestamp": 1718806000000, "payload": [ { "conversational": { "content": { "text": "I'm looking for a waterproof action camera for extreme sports." }, "role": "USER" } } ], "branch": { "name": "edited-conversation", "rootEventId": "evt-67890" } }