test_intelligent_query.py•3.19 kB
#!/usr/bin/env python3
"""
测试MemOS智能查询功能
"""
from advanced_examples import AdvancedMemOS, load_env_file
def test_intelligent_query():
"""测试智能查询功能"""
print("🧪 测试MemOS智能查询功能")
print("=" * 50)
# 加载环境变量
load_env_file()
# 初始化MemOS
memos = AdvancedMemOS("./test_memos_data")
# 添加一些测试数据
print("📝 添加测试数据...")
test_memories = [
("我正在开发一个基于MemOS的智能记忆系统", ["开发", "MemOS", "项目"]),
("使用Claude通过MCP调用MemOS获取上下文", ["Claude", "MCP", "技术架构"]),
("项目目标是实现AI记忆增强对话", ["项目目标", "AI", "对话"]),
("当前使用DeepSeek-V3作为LLM模型", ["技术栈", "LLM", "DeepSeek"]),
("通过SiliconFlow API提供远程LLM服务", ["API", "服务", "SiliconFlow"]),
("记忆数据存储在本地Qdrant向量数据库中", ["存储", "数据库", "Qdrant"]),
("系统支持学习笔记、工作任务等多种记忆类型", ["功能", "记忆类型"]),
]
for content, tags in test_memories:
memory_id = memos.add_memory(content, tags=tags)
print(f" ✅ 添加记忆 #{memory_id}")
# 测试智能查询
print("\n🔍 测试智能查询...")
test_queries = [
"项目的技术架构是什么?",
"当前使用的LLM模型",
"MemOS的主要功能",
"数据存储方案",
"完全不相关的查询测试"
]
for query in test_queries:
print(f"\n查询: {query}")
print("-" * 30)
result = memos.intelligent_query(query, max_memories=3)
print(f"查询摘要: {result['query_summary']}")
print(f"相关记忆数量: {len(result['relevant_memories'])}")
if result['relevant_memories']:
print("相关记忆:")
for i, memory in enumerate(result['relevant_memories'], 1):
print(f" {i}. {memory['content']} (相关度: {memory['score']:.2f})")
print(f"\nLLM组织的上下文:")
print(f" {result['llm_context']}")
def test_mcp_format():
"""测试MCP格式输出"""
print("\n\n🔧 测试MCP格式输出")
print("=" * 50)
# 加载环境变量
load_env_file()
# 初始化MemOS
memos = AdvancedMemOS("./test_memos_data")
# 模拟MCP调用
query = "项目的技术架构"
result = memos.intelligent_query(query, max_memories=3)
# 格式化为MCP返回格式
context_text = f"""MemOS查询结果:
查询: {query}
{result['query_summary']}
LLM组织的上下文:
{result['llm_context']}
相关记忆详情:
"""
for i, memory in enumerate(result['relevant_memories'], 1):
tags_str = ", ".join(memory['tags']) if memory['tags'] else "无标签"
context_text += f"{i}. {memory['content']} (相关度: {memory['score']:.2f}, 标签: {tags_str})\n"
print("MCP返回格式:")
print(context_text)
if __name__ == "__main__":
test_intelligent_query()
test_mcp_format()