Team with Memory Manager
This example demonstrates how to use persistent memory with a team. After each run, user memories are created and updated, allowing the team to remember information about users across sessions and provide personalized experiences.
Code
1"""2This example shows you how to use persistent memory with an Agent.34After each run, user memories are created/updated.56To enable this, set `update_memory_on_run=True` in the Agent config.7"""89from uuid import uuid41011from kern.agent import Agent12from kern.db.postgres import PostgresDb13from kern.memory import MemoryManager # noqa: F40114from kern.models.openai import OpenAIResponses15from kern.team import Team1617db_url = "postgresql+psycopg://ai:ai@localhost:5532/ai"18db = PostgresDb(db_url=db_url)1920session_id = str(uuid4())21john_doe_id = "john_doe@example.com"2223# 1. Create memories by setting `update_memory_on_run=True` in the Agent24agent = Agent(25 model=OpenAIResponses(id="gpt-5.2"),26)27team = Team(28 model=OpenAIResponses(id="gpt-5.2"),29 members=[agent],30 db=db,31 update_memory_on_run=True,32)3334team.print_response(35 "My name is John Doe and I like to hike in the mountains on weekends.",36 stream=True,37 user_id=john_doe_id,38 session_id=session_id,39)4041team.print_response(42 "What are my hobbies?", stream=True, user_id=john_doe_id, session_id=session_id43)4445# 2. Set a custom MemoryManager on the agent46# memory_manager = MemoryManager(model=OpenAIResponses(id="gpt-5.2"))4748# memory_manager.clear()4950# agent = Agent(51# model=OpenAIResponses(id="gpt-5.2"),52# memory_manager=memory_manager,53# )5455# team = Team(56# model=OpenAIResponses(id="gpt-5.2"),57# members=[agent],58# db=db,59# update_memory_on_run=True,60# )6162# team.print_response(63# "My name is John Doe and I like to hike in the mountains on weekends.",64# stream=True,65# user_id=john_doe_id,66# session_id=session_id,67# )6869# # You can also get the user memories from the agent70# memories = agent.get_user_memories(user_id=john_doe_id)71# print("John Doe's memories:")72# pprint(memories)Usage
Set up your virtual environment
1uv venv --python 3.122source .venv/bin/activate1uv venv --python 3.122.venv\Scripts\activateInstall dependencies
1uv pip install -U kern-ai openai psycopg sqlalchemySet up PostgreSQL database
Start PostgreSQL with pgvector and update the connection string in the code as needed.
Set environment variables
1export OPENAI_API_KEY=your_openai_api_key_hereRun the example
1python team_with_memory_manager.py