本示例演示了如何使用不同的检索方法搜索用户内存
from agno.memory.v2 import Memory, UserMemory
from agno.memory.v2.db.sqlite import SqliteMemoryDb
from agno.models.google.gemini import Gemini
from rich.pretty import pprint
memory_db = SqliteMemoryDb(table_name="memory", db_file="tmp/memory.db")
# 为本示例重置
memory_db.clear()
memory = Memory(model=Gemini(id="gemini-2.0-flash-exp"), db=memory_db)
john_doe_id = "john_doe@example.com"
memory.add_user_memory(
memory=UserMemory(memory="该用户周末喜欢在山区徒步旅行"),
user_id=john_doe_id,
)
memory.add_user_memory(
memory=UserMemory(
memory="该用户喜欢睡前阅读科幻小说"
),
user_id=john_doe_id,
)
print("John Doe's memories:")
pprint(memory.memories)
memories = memory.search_user_memories(
user_id=john_doe_id, limit=1, retrieval_method="last_n"
)
print("\nJohn Doe's last_n memories:")
pprint(memories)
memories = memory.search_user_memories(
user_id=john_doe_id, limit=1, retrieval_method="first_n"
)
print("\nJohn Doe's first_n memories:")
pprint(memories)
memories = memory.search_user_memories(
user_id=john_doe_id,
query="用户周末喜欢做什么?",
retrieval_method="agentic",
)
print("\nJohn Doe's memories similar to the query (agentic):")
pprint(memories)
创建虚拟环境
打开 Terminal
并创建一个 python 虚拟环境。
python3 -m venv .venv
source .venv/bin/activate
安装库
pip install -U agno
运行示例
python cookbook/agent_concepts/memory/05_memory_search.py