"""
此示例展示了如何将 Memory 类与 PostgreSQL 存储结合使用。
"""
from agno.agent.agent import Agent
from agno.memory.v2.db.postgres import PostgresMemoryDb
from agno.memory.v2.memory import Memory
from agno.models.openai.chat import OpenAIChat
from agno.storage.postgres import PostgresStorage
db_url = "postgresql+psycopg://ai:ai@localhost:5532/ai"
memory = Memory(db=PostgresMemoryDb(table_name="agent_memories", db_url=db_url))
session_id = "postgres_memories"
user_id = "postgres_user"
agent = Agent(
model=OpenAIChat(id="gpt-4o-mini"),
memory=memory,
storage=PostgresStorage(table_name="agent_sessions", db_url=db_url),
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,
user_id=user_id,
session_id=session_id,
)
agent.print_response(
"What are my hobbies?", stream=True, user_id=user_id, session_id=session_id
)
创建虚拟环境
打开 Terminal
并创建一个 python 虚拟环境。
python3 -m venv .venv
source .venv/bin/activate
设置环境变量
export OPENAI_API_KEY=xxx
安装库
pip install -U agno openai sqlalchemy 'psycopg[binary]'
运行示例
python cookbook/agent_concepts/memory/postgres_memory.py