Skip to content

Repository files navigation

Memory Engineering

把 LLM 从"语言模型"升级为"具有时间结构的经验系统"。

Memory Engineering 的本质不是做 memory retrieval,而是在做 system cognition architecture(系统认知架构)。

612 行纯 Python。零外部依赖。已部署于 CiteFlow 生产环境,管理 3 个 AI Agent 的跨会话认知。


它解决什么

不是"记忆问题",是三个更底层的结构性问题:

问题 A:LLM 是无状态系统

每次调用都像第一次见面。无法积累经验、无法形成用户长期理解、无法做真正的 Agent。

引入跨 session 状态系统。

问题 B:Agent 没有时间连续性

传统 Agent 是"点",不是"线"。任务无法延续、计划无法递进、策略无法优化。

Event Layer + Trigger,让系统具备时间轴。

问题 C:记忆被视为存储问题,而非计算问题

大多数系统只做 embedding + vector DB + retrieval。但"什么时候用记忆"比"存什么记忆"更重要。

Trigger Layer,把 memory 变成行为系统的一部分。


四层系统认知架构

Memory Engineering 不是做"一个 memory",而是构建一个完整的认知结构:

职责 回答的问题
Identity Layer 身份层 稳定认知:是谁、目标、约束、长期上下文 "我是谁,我在做什么"
Event Layer 事件层 结构化经验:可回放、可归纳、可用于策略更新 "发生过什么"
Knowledge Layer 知识层 抽象后可复用的信息:决策、教训、规则 "学到了什么"
Trigger Layer 触发器层 何时调用哪段记忆:条件触发、状态触发、任务触发 "什么时候该想起来"

核心突破

从"被动记忆"升级为"可触发记忆"。 传统 RAG / memory 系统有记忆但不会主动用。Trigger 机制让 memory 从"数据库"变成"行为系统的一部分"——Agent 不再每轮重新开始,而是延续任务状态。


引入后的四个系统跃迁

① Stateless → Stateful

以前每次调用都是新系统。现在系统有持续状态——Identity 锁定目标,Event 追踪过程,Knowledge 沉淀经验。

② Prompt-driven → Memory-driven

以前能力来自 prompt engineering。现在能力来自 memory + state evolution。Prompt 退化为接口层。

③ Reactive → Proactive

以前用户问什么答什么。现在 Agent 会根据记忆主动调整行为——提前纠偏目标、自动补充上下文、触发下一步行动。

④ 单轮智能 → 经验增长型智能

智能形态从静态变为累积式,记忆从可选变为核心,任务从单步变为全生命周期。


V1 实现状态

当前 V1 覆盖了部分层:

V1 状态 实现
Identity ✅ 已实现 session_start.py 自动恢复身份 + 项目状态 + 活跃决策
Knowledge ✅ 已实现 decision / lesson / sop_rule 三种类型,五类型分类器
Trigger ⚠️ 部分 仅 Session Start(每次新会话)和 Task Start(手动调用)两个触发点
Event ❌ 未实现 尚无结构化事件流、回放、归纳能力

五个记忆类型(V1)

类型 用途 示例
identity 用户偏好、学习风格、设计约束 "偏好自下而上学习"
project_state 当前阶段、阻塞项、下一步 "V1 完成,Stripe 待集成"
decision 选了什么、备选方案、理由 "SQLite vs PostgreSQL,选前者因为零运维"
lesson 跨项目通用教训 "Agent 不会自动加载 skill——需硬编码到 system prompt"
sop_rule 行为规则:必须/禁止 "改字段名后 grep 全项目搜所有消费者"

技术实现

三个 Hook

Hook 脚本 触发时机 核心算法
Session Start session_start.py (53行) 每次新会话 扫描 memory 目录 → 加载 active 状态文件
Task Start task_start.py (180行) 用户提具体任务 BM25 排序检索(k1=1.5, b=0.75, 中文 bigram, 零外部依赖)
Write Hook write_hook.py (379行) 对话产生新信息 Trigger → Classify → Lifecycle → Storage 四步管线

四步写入管线

Trigger (DROP/PASS)
    → 问候语/疑问句丢弃,决策/教训/规则通过
Classify (5-type scoring + negation detection)
    → 每种类型独立打分,阈值经过测试校准
    → 否定词检测:window=3,"不喜欢 X" ≠ "喜欢 X"
Lifecycle (CREATE / UPDATE / MERGE / DROP)
    → 词重叠率匹配已有记忆,避免重复
Storage (JSON serialization)
    → 零外部依赖,纯文件系统

算法亮点

  • BM25 自实现:不依赖 jieba/NLP 库,中文用字符 bigram 切分,英文用单词切分,104 个停用词过滤
  • 五类型分类器:每种类型独立打分规则 + 独立阈值,否定词检测覆盖 ~80% 否定场景
  • 生命周期决策:词重叠率匹配(>0.6 UPDATE, >0.3 MERGE, 否则 CREATE),自动合并重复信息

架构洞察:义肢 vs 原生器官

AI Agent 平台有两种信息注入通道:

通道 机制 Agent 可忽略? 可靠性
System Prompt(原生器官) 注入模型上下文,生成前强制执行 ❌ 无法绕过 ✅ 高
Tool Return Value(义肢) Agent 调用工具,读取返回值 ✅ 可选择忽略 ❌ 低

V1 限制:Task Start 走义肢通道——检索正确但 Agent 可能只看 stats、不看 lesson。

V2 方向:把 Task Start 改为平台 pre-turn 自动注入(原生器官通道),消除 Agent 的选择性忽略。或迁移到支持 pre-turn hook 的平台。


真正差异化

很多人会做 RAG、long-term memory、vector DB memory。

我们不是在做 memory retrieval,而是在做 system cognition architecture(系统认知架构)。

区别在于:

  • Memory retrieval 回答"存了什么、怎么找"
  • System cognition 回答"什么时候该想起来、想起来之后怎么用、用了之后怎么沉淀"

部署

# 1. 复制脚本
cp session_start.py task_start.py write_hook.py ~/your-agent/

# 2. 创建记忆目录
mkdir -p ~/your-agent/memory/{shared/{lesson,sop_rule},agent/{identity,project_state,decision,lesson,rule}}

# 3. 在 Agent 的 system prompt 最高优先级注入
# 【Session Start — 强制执行】
# terminal("python3 ~/your-agent/session_start.py")

# 4. 写入新记忆
echo '{"type":"decision","content":"...","source":"...","alternatives":[...]}' | python3 ~/your-agent/write_hook.py

详见 test_protocol.md


已知限制

  • 消费链路断裂(V1):Task Start 走义肢通道,Agent 可能忽略检索结果内容
  • Event 层未实现:尚无结构化事件流、回放、归纳能力
  • Trigger 层不完整:仅两个触发点,缺少条件触发、状态触发、时间触发
  • 中文 bigram 分词:无 jieba 依赖的代价是切分精度有限
  • 否定窗口=3:覆盖 ~80% 否定场景,完全解决需依存句法分析

生产部署

已部署于 CiteFlow(AI 搜索可见度诊断 SaaS),管理 3 个 AI Agent(药老/海老/玄老)的跨会话认知。

  • 每次新会话:Session Start 自动恢复 Agent 身份 + 项目状态 + 活跃决策
  • 结果:Agent 行为一致性从随机变为稳定——不再出现"上次定了 Kami 风格、下次用 Linear 暗色"

License

MIT © 2026 You Jingfeng

About

Event-Driven Cognitive Execution Engine for AI Agents — 612 lines of pure Python, zero dependencies. BM25 retrieval + 5-type classifier + negation detection. Deployed in production for CiteFlow's 3 AI Agents.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages