02. ConversationBufferWindowMemory
CoversationBufferWindowMemory
ConversationBufferWindowMemory
menyimpan daftar interaksi dalam percakapan dari setiap waktu.
ConversationBufferWindowMemory
hanya menggunakan N interaksi terakhir dan bukan semuanya.
Hal ini dapat berguna untuk mempertahankan jendela geser interaksi terbaru sehingga buffer tidak menjadi terlalu besar.
Python
from langchain.memory import ConversationBufferWindowMemory
memory = ConversationBufferWindowMemory(k=2, return_messages=True)
memory.save_context(
inputs={
"human": "Halo, saya ingin membuka rekening bank secara daring. Bagaimana cara memulainya?"
},
outputs={
"ai": "Halo! Kami senang mendengar Anda ingin membuka rekening. Pertama, bisakah Anda menyiapkan kartu identitas untuk verifikasi identitas?"
},
)
memory.save_context(
inputs={"human": "Ya, saya sudah menyiapkan kartu identitas. Apa yang harus saya lakukan selanjutnya?"},
outputs={
"ai": "Terima kasih. Silakan ambil foto yang jelas dari bagian depan dan belakang kartu identitas Anda dan unggah. Kami akan melanjutkan proses verifikasi identitas."
},
)
memory.save_context(
inputs={"human": "Saya telah mengunggah foto. Bagaimana cara melanjutkan verifikasi identitas?"},
outputs={
"ai": "Kami telah memverifikasi foto yang Anda unggah. Sekarang, silakan lanjutkan verifikasi identitas melalui ponsel Anda. Masukkan nomor verifikasi yang telah dikirimkan kepada Anda melalui SMS."
},
)
memory.save_context(
inputs={"human": "Saya sudah memasukkan nomor verifikasi. Bagaimana cara membuka rekening sekarang?"},
outputs={
"ai": "Verifikasi identitas Anda telah selesai. Sekarang, silakan pilih jenis rekening yang Anda inginkan dan masukkan informasi yang diperlukan. Anda dapat memilih jenis tabungan, jenis mata uang, dan lain-lain."
},
)
memory.save_context(
inputs={"human": "Saya sudah memasukkan semua informasi. Apa langkah selanjutnya?"},
outputs={
"ai": "Informasi yang Anda masukkan telah kami verifikasi. Proses pembukaan rekening hampir selesai. Terakhir, silakan setujui syarat dan ketentuan yang berlaku, dan konfirmasi pembukaan rekening."
},
)
memory.save_context(
inputs={"human": "Saya sudah menyelesaikan semua prosedur. Apakah rekening saya sudah dibuka?"},
outputs={
"ai": "Ya, pembukaan rekening telah selesai. Nomor rekening Anda dan informasi terkait telah dikirimkan ke email yang Anda daftarkan. Jika Anda memerlukan bantuan lebih lanjut, jangan ragu untuk menghubungi kami. Terima kasih!"
},
)
Python
# Periksa riwayat dialog.
memory.load_memory_variables({})[“history”]
Output
[HumanMessage(content='Saya sudah memasukkan semua informasi. Apa langkah selanjutnya?'), AIMessage(content='Informasi yang Anda masukkan telah kami verifikasi. Proses pembukaan rekening hampir selesai. Terakhir, silakan setujui syarat dan ketentuan yang berlaku, dan konfirmasi pembukaan rekening.'), HumanMessage(content='Saya sudah menyelesaikan semua prosedur. Apakah rekening saya sudah dibuka?'), AIMessage(content='Ya, pembukaan rekening telah selesai. Nomor rekening Anda dan informasi terkait telah dikirimkan ke email yang Anda daftarkan. Jika Anda memerlukan bantuan lebih lanjut, jangan ragu untuk menghubungi kami. Terima kasih!')]