06. Memori Ringkasan Percakapan (ConversationSummaryMemory)
ConversationSummaryMemory
Sekarang mari kita lihat cara menggunakan jenis memori yang sedikit lebih kompleks, ConversationSummaryMemory.
Jenis memori ini membuat ringkasan percakapan dari waktu ke waktu. Hal ini dapat berguna untuk memadatkan informasi dari percakapan dari waktu ke waktu.
Memori ringkasan percakapan meringkas percakapan yang sedang berlangsung dan menyimpan ringkasan saat ini dalam memori.
Anda kemudian dapat menggunakan memori ini untuk menyisipkan ringkasan percakapan sejauh ini ke dalam prompt/rantai.
Memori ini sangat berguna untuk percakapan yang panjang di mana menyimpan riwayat pesan sebelumnya di prompt akan menghabiskan terlalu banyak token.
Buatlah sebuah ConversationSummaryMemory.
# File konfigurasi untuk mengelola API KEY sebagai variabel lingkungan
from dotenv import load_dotenv
# Memuat informasi API KEY
load_dotenv()from langchain.memory import ConversationSummaryMemory
from langchain_openai import ChatOpenAI
memory = ConversationSummaryMemory(
llm=ChatOpenAI(temperature=0), return_messages=True)Memungkinkan Anda menyimpan beberapa percakapan.
Melihat riwayat memori yang disimpan.
Anda akan melihat history dari semua percakapan sebelumnya.
ConversationSummaryBufferMemory
ConversationSummaryBufferMemory menggabungkan dua ide.
Ia menggunakan yang terbaik dari kedua hal tersebut dengan menyimpan buffer percakapan terbaru dalam memori, tetapi mengkompilasinya ke dalam ringkasan daripada membuang percakapan yang lebih lama.
Ia menggunakan max token limit, bukan jumlah interaksi, untuk menentukan kapan harus mem-flush transkrip.
Pertama, mari kita coba menyimpan satu percakapan saja, lalu periksa memorinya.
Periksa percakapan yang tersimpan dalam memori.
Kami belum meringkas percakapan, karena kami belum mencapai ambang batas 200 token.
Mari simpan percakapan tambahan untuk melewati batas 200 token.
Melihat percakapan Anda yang tersimpan. Percakapan terbaru tidak akan diringkas, tetapi percakapan sebelumnya akan disimpan sebagai ringkasan.
Last updated