Memory
Saving Memory
This example shows inserting and updating a list to a memory.
from langgraph.store.memory import InMemoryStore
...
in_memory_store = InMemoryStore()
namespace_for_memory = (thread_id, "memories")
if not in_memory_store.get(namespace_for_memory, thread_id):
in_memory_store.put(namespace_for_memory, thread_id, {})
if 'conversation_history' not in in_memory_store.get(
namespace_for_memory, thread_id).value:
in_memory_store.put(
namespace_for_memory, thread_id, {'conversation_history': []})
conversation_history = in_memory_store.get(
namespace_for_memory, thread_id).value['conversation_history']
new_message_list = []
new_message_list.append(f'user,{new_message}')
new_message_list.append(f'assistant,{gathered.content}')
memory = {'conversation_history': conversation_history + new_message_list}
in_memory_store.put(namespace_for_memory, thread_id, memory)
Getting Memory
namespace_for_memory = (thread_id, "memories")
memories_str = ''
memories = in_memory_store.get(namespace_for_memory, thread_id)
if memories and 'conversation_history' in memories.value:
conversation_history = memories.value['conversation_history']
memories_str += '<conversation_history>\n'
for i, conversation_item in enumerate(conversation_history):
role, text = conversation_item.split(',', 1)
memories_str += f'<{role} index="{i}">{text}</{role}>\n'
memories_str += '</conversation_history>\n\n'
Last updated