Examples
- Examples
- Getting Started
- Agents
- Teams
- Workflows
- Applications
- Streamlit Apps
- Evals
Agent Concepts
- Reasoning
- Multimodal
- RAG
- User Control Flows
- Knowledge
- Memory
- Built-in Memory
- Standalone Memory Operations
- Persistent Memory with SQLite
- Custom Memory Creation
- Memory Search
- Agent With Memory
- Agentic Memory
- Agent with Session Summaries
- Multiple Agents Sharing Memory
- Custom Memory
- Multi-User Multi-Session Chat
- Multi-User Multi-Session Chat Concurrent
- Memory References
- Session Summary References
- Mem0 Memory
- DB
- Async
- Hybrid Search
- Storage
- Tools
- Vector Databases
- Context
- Embedders
- Agent State
- Observability
- Miscellaneous
Models
- Anthropic
- AWS Bedrock
- AWS Bedrock Claude
- Azure AI Foundry
- Azure OpenAI
- Cerebras
- Cerebras OpenAI
- Cohere
- DeepInfra
- DeepSeek
- Fireworks
- Gemini
- Groq
- Hugging Face
- IBM
- LM Studio
- LiteLLM
- LiteLLM OpenAI
- Meta
- Mistral
- NVIDIA
- Ollama
- OpenAI
- Perplexity
- Together
- XAI
- Vercel
- vLLM
Memory
Agent with Session Summaries
This example demonstrates how to create session summaries.
To enable this, set enable_session_summaries=True
in the Agent config.
Code
cookbook/agent_concepts/memory/08_agent_with_summaries.py
Copy
Ask AI
from agno.agent.agent import Agent
from agno.memory.v2.db.sqlite import SqliteMemoryDb
from agno.memory.v2.memory import Memory
from agno.memory.v2.summarizer import SessionSummarizer
from agno.models.anthropic.claude import Claude
from rich.pretty import pprint
memory_db = SqliteMemoryDb(table_name="memory", db_file="tmp/memory.db")
memory = Memory(
db=memory_db,
summarizer=SessionSummarizer(model=Claude(id="claude-3-5-sonnet-20241022")),
)
# Reset the memory for this example
memory.clear()
# No session and user ID is specified, so they are generated automatically
agent = Agent(
model=Claude(id="claude-3-5-sonnet-20241022"),
memory=memory,
enable_user_memories=True,
enable_session_summaries=True,
)
agent.print_response(
"My name is John Doe and I like to hike in the mountains on weekends.",
stream=True,
)
agent.print_response(
"What are my hobbies?",
stream=True,
)
memories = memory.get_user_memories()
print("John Doe's memories:")
pprint(memories)
session_summary = agent.get_session_summary()
pprint(session_summary)
# Now lets do a new session with a different user
session_id_2 = "1002"
mark_gonzales_id = "mark@example.com"
agent.print_response(
"My name is Mark Gonzales and I like anime and video games.",
stream=True,
user_id=mark_gonzales_id,
session_id=session_id_2,
)
agent.print_response(
"What are my hobbies?",
stream=True,
user_id=mark_gonzales_id,
session_id=session_id_2,
)
memories = memory.get_user_memories(user_id=mark_gonzales_id)
print("Mark Gonzales's memories:")
pprint(memories)
# We can get the session summary from memory as well
session_summary = memory.get_session_summary(
session_id=session_id_2, user_id=mark_gonzales_id
)
pprint(session_summary)
Usage
1
Create a virtual environment
Open the Terminal
and create a python virtual environment.
Copy
Ask AI
python3 -m venv .venv
source .venv/bin/activate
2
Set your API key
Copy
Ask AI
export OPENAI_API_KEY=xxx
3
Install libraries
Copy
Ask AI
pip install -U agno openai
4
Run Example
Copy
Ask AI
python cookbook/agent_concepts/memory/08_agent_with_summaries.py
Was this page helpful?
Assistant
Responses are generated using AI and may contain mistakes.