Memori dan Konteks Percakapan dalam LangChain
Pelajari cara memori LangChain melacak riwayat percakapan agar rantai dan chatbot dapat mempertahankan percakapan multi-giliran yang koheren.
Memori dan Konteks Percakapan dalam LangChain adalah pelajaran LangChain / RAG / Vector DBs gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar LangChain / RAG / Vector DBs, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus LangChain / RAG / Vector DBs mencakup 4 pelajaran total.
Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.
LLMs Are Stateless
A language model has no memory between calls. Each request is independent — it only knows what you put in the current prompt. To build a chatbot that remembers, you must feed prior turns back in yourself.
What LangChain Memory Does
LangChain memory automates this: it stores the conversation and injects relevant history into the prompt on each new turn. Your chain stays simple while the model appears to remember.
Conversation Buffer Memory
The simplest memory keeps the full transcript and prepends it to every prompt. Great for short chats, but it grows with every turn.
from langchain.memory import ConversationBufferMemory
memory = ConversationBufferMemory()
memory.save_context({'input': 'Hi, I am Sam'}, {'output': 'Hello Sam!'})
print(memory.load_memory_variables({}))The Context Window Limit
Every model has a finite context window (a token budget). A growing buffer eventually overflows it, causing errors or truncation. Managing history size is the central challenge of memory.
turns = 50
tokens_per_turn = 200
total = turns * tokens_per_turn
print('history tokens:', total)Window Memory
ConversationBufferWindowMemory keeps only the last k turns. It bounds token usage at the cost of forgetting older context — a simple, effective trade-off for many chatbots.
from langchain.memory import ConversationBufferWindowMemory
memory = ConversationBufferWindowMemory(k=3)
# only the most recent 3 exchanges are keptSummary Memory
ConversationSummaryMemory uses the LLM to compress old turns into a running summary. You keep the gist of a long conversation in far fewer tokens, sacrificing exact wording for breadth.
Summary Buffer: Best of Both
ConversationSummaryBufferMemory keeps recent turns verbatim and summarizes everything older. Recent context stays precise while distant context is condensed — a popular default for production chatbots.
Wiring Memory into a Chain
You attach memory to a conversational chain. On each call, the chain loads history, builds the prompt, calls the model, and saves the new turn back to memory automatically.
from langchain.chains import ConversationChain
chain = ConversationChain(llm=llm, memory=memory)
chain.predict(input='What is my name?')Memory Variables and Prompts
Memory exposes its content as a variable (often history or chat_history) that your prompt template references. The placeholder is where the stored conversation gets injected.
template = 'Conversation so far:\n{history}\nHuman: {input}\nAI:'Persisting Memory
In-process memory vanishes when the app restarts. For real users, back memory with a store — Redis, a database, or a chat-message-history backend keyed by session id — so conversations survive across requests and servers.
Choosing a Memory Type
Match memory to need: buffer for short chats, window when you only care about recent turns, summary for long sessions on a budget, and summary-buffer for the common case. Always persist memory for multi-user apps.
Quick Check
Test your understanding of LangChain memory.
Recap
You learned how LangChain gives chatbots memory:
- LLMs are stateless; memory re-injects history each turn
- Buffer, window, summary, and summary-buffer trade detail against tokens
- Memory exposes a history variable that the prompt template uses
- Persist memory per session for multi-user, multi-server apps
Belajar LangChain / RAG / Vector DBs dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 12
- Pelajaran
- 48
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Memori dan Konteks Percakapan dalam LangChain” gratis?
Ya — teks lengkap “Memori dan Konteks Percakapan dalam LangChain” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus LangChain / RAG / Vector DBs, upgrade ke CoddyKit PRO. Kursus LangChain / RAG / Vector DBs mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Memori dan Konteks Percakapan dalam LangChain”?
Pelajari cara memori LangChain melacak riwayat percakapan agar rantai dan chatbot dapat mempertahankan percakapan multi-giliran yang koheren. Kamu berlatih LangChain / RAG / Vector DBs dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai LangChain / RAG / Vector DBs?
Tidak diperlukan pengalaman sebelumnya. LangChain / RAG / Vector DBs di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Memori dan Konteks Percakapan dalam LangChain” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran LangChain / RAG / Vector DBs ini?
Ya. Setiap pelajaran LangChain / RAG / Vector DBs menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Menyiapkan Lingkungan LangChain
- Prompt, LLM, dan Rantai Dasar
- Pengurai Keluaran dan Callback
- Memori dan Konteks Percakapan dalam LangChain