mirror of
https://github.com/agentscope-ai/ReMe.git
synced 2026-08-28 05:25:04 +00:00
* feat(memory): add ContextChecker component for context size management * refactor(memory): restructure file-based memory tools and update imports * docs(readme): update documentation with detailed architecture and components * docs(readme): update Chinese documentation with enhanced memory management diagrams * refactor(cookbook): move cookbook files to test directory and clean up docs * docs(readme): update link path for old version documentation * docs(readme): update documentation with improved architecture diagrams and component details * docs(readme): update documentation with improved clarity and structure * refactor(docs): update in-memory memory documentation * docs(readme): add experiment reproduction link to quickstart guide
89 lines
2.5 KiB
Python
89 lines
2.5 KiB
Python
"""测试 ReMe 的 vector 搜索功能"""
|
|
|
|
import asyncio
|
|
|
|
from reme import ReMe
|
|
|
|
|
|
async def main():
|
|
"""测试 ReMe 的 vector 搜索功能"""
|
|
# 初始化 ReMe
|
|
reme = ReMe(
|
|
working_dir=".reme",
|
|
default_llm_config={
|
|
"backend": "openai",
|
|
"model_name": "qwen3.5-plus",
|
|
},
|
|
default_embedding_model_config={
|
|
"backend": "openai",
|
|
"model_name": "text-embedding-v4",
|
|
"dimensions": 1024,
|
|
},
|
|
default_vector_store_config={
|
|
"backend": "local", # 支持 local/chroma/qdrant/elasticsearch
|
|
},
|
|
)
|
|
await reme.start()
|
|
|
|
messages = [
|
|
{"role": "user", "content": "帮我写一个 Python 脚本", "time_created": "2026-02-28 10:00:00"},
|
|
{"role": "assistant", "content": "好的,我来帮你写", "time_created": "2026-02-28 10:00:05"},
|
|
]
|
|
|
|
# 1. 从对话中总结记忆(自动提取用户偏好、任务经验等)
|
|
result = await reme.summarize_memory(
|
|
messages=messages,
|
|
user_name="alice", # 个人记忆
|
|
# task_name="code_writing", # 任务记忆
|
|
)
|
|
print(f"总结结果: {result}")
|
|
|
|
# 2. 检索相关记忆
|
|
memories = await reme.retrieve_memory(
|
|
query="Python 编程",
|
|
user_name="alice",
|
|
# task_name="code_writing",
|
|
)
|
|
print(f"检索结果: {memories}")
|
|
|
|
# 3. 手动添加记忆
|
|
memory_node = await reme.add_memory(
|
|
memory_content="用户喜欢简洁的代码风格",
|
|
user_name="alice",
|
|
)
|
|
print(f"添加的记忆: {memory_node}")
|
|
memory_id = memory_node.memory_id
|
|
|
|
# 4. 通过 ID 获取单条记忆
|
|
fetched_memory = await reme.get_memory(memory_id=memory_id)
|
|
print(f"获取的记忆: {fetched_memory}")
|
|
|
|
# 5. 更新记忆内容
|
|
updated_memory = await reme.update_memory(
|
|
memory_id=memory_id,
|
|
user_name="alice",
|
|
memory_content="用户喜欢简洁且带注释的代码风格",
|
|
)
|
|
print(f"更新后的记忆: {updated_memory}")
|
|
|
|
# 6. 列出用户的所有记忆(支持过滤和排序)
|
|
all_memories = await reme.list_memory(
|
|
user_name="alice",
|
|
limit=10,
|
|
sort_key="time_created",
|
|
reverse=True,
|
|
)
|
|
print(f"用户记忆列表: {all_memories}")
|
|
|
|
# 7. 删除指定记忆
|
|
await reme.delete_memory(memory_id=memory_id)
|
|
print(f"已删除记忆: {memory_id}")
|
|
|
|
# 8. 删除所有记忆(谨慎使用)
|
|
# await reme.delete_all()
|
|
|
|
await reme.close()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
asyncio.run(main())
|