-
Embedding 抽象层 (
embedding.py)BaseEmbedding基类(统一接口)SentenceTransformerEmbedding— 基于 sentence-transformers 的语义嵌入OpenAIEmbedding— OpenAI text-embedding APITFIDFEmbedding— TF-IDF 向量化HashEmbedding— 哈希特征(零依赖)create_embedding()— 工厂函数(支持自动降级)
-
SQLite 持久化层 (
persistence.py)MemoryDatabase— 数据库连接管理(WAL 模式)MemoryRepository— 记忆 CRUD 操作,JSON 导入/导出
-
记忆整合器 (
memory_consolidator.py)MemoryConsolidator— 统一整合入口RuleBasedImportanceScorer— 基于规则的重要性评估LLMImportanceScorer— LLM 驱动重要性评估- 记忆压缩(旧记忆按日期分组摘要)
- 去重器(Deduplicator,编辑距离相似度)
-
混合检索器 (
retriever.py)BM25Retriever— 关键词检索(Okapi BM25 算法,纯 Python 实现)SemanticRetriever— 语义向量检索HybridRetriever— 混合检索(BM25 + 语义,RRF 融合)Reranker— 重排序器RetrievalResult— 检索结果数据类
-
情景记忆 (
memory_store.py)EpisodicMemory— 对话历史管理(按会话/对话组织)DialogueTurn— 对话轮次
-
语义记忆 (
memory_store.py)SemanticMemory— 事实知识图谱(三元组存储)Fact— 事实条目(subject-predicate-object)
-
Web API (
web/app.py)- FastAPI REST API,13 个端点
- 支持远程记忆管理
-
macOS 桌面 GUI (
macos/app.py)- tkinter 图形界面,四个标签页
- MemoryManager 集成所有新组件
add_episodic()— 添加情景记忆add_semantic()— 添加语义记忆search_memories()— 混合检索所有记忆get_context_for_llm()— 为 LLM 生成结构化上下文auto_consolidate()— 自动整合compress_memory()— 压缩旧记忆save_to_db()/load_from_db()— SQLite 持久化get_observability_report()— 可观测性报告
- 向后兼容 v1.x API:perceive / remember / recall / get_context / consolidate / forget 全部保留
examples/enhanced_demo.py— v2.0 完整功能演示
-
Memory Store 模块
- MemoryEntry 记忆条目(含艾宾浩斯衰减)
- SensoryBuffer 感觉记忆(环形缓冲区)
- ShortTermStore 短期记忆(重要性淘汰)
- WorkingMemory 工作记忆(LRU 淘汰)
- LongTermStore 长期记忆(三因子评分)
-
Memory Manager 模块
- perceive() 感知输入
- remember() 主动记忆
- recall() 回忆检索
- get_context() 获取上下文
- consolidate() 记忆整合
- forget() 遗忘机制
-
Vector Store 模块
- SimpleVectorStore 向量存储
- 余弦相似度和欧氏距离计算
- 文本向量搜索
examples/memory_demo.py— 记忆系统演示examples/vector_search.py— 向量搜索演示
README.md— 项目说明docs/技术文档.md— 技术文档docs/TECHNICAL_DOC.md— 英文技术文档docs/DIRECTION.md— 方向指引