记忆

ai-brain-learning-memory-pro

试用

ai-brain-learning-memory 的进阶工程版,面向 AI 开发者 / 认知科学爱好者 / agent 架构师,用于回答「记忆系统怎么落地成代码」「记忆投毒怎么防」「记忆效果怎么量化」这类问题

它能做什么

ai-brain-learning-memory 的进阶工程版,面向 AI 开发者 / 认知科学爱好者 / agent 架构师,用于回答「记忆系统怎么落地成代码」「记忆投毒怎么防」「记忆效果怎么量化」这类问题

技能文档

AI 大脑学习记忆方法论 · 进阶工程版

给谁看:AI 开发者、认知科学爱好者、agent 架构师。如果你想要"概念 + 例子 + 速查",先读基础版 ai-brain-learning-memory(已改到 v2.4.0,通俗友好)。本版专讲怎么把方法论写成能跑的代码和系统与基础版的关系:基础版 = 为什么 + 是什么;本版 = 怎么做(代码 / 配置 / 评测 / 防御)。两者配套,不重复概念,只补工程。


0. 工程总览(一张图看懂系统)

┌─────────────┐   编码(价值判断)   ┌──────────────────────┐
│  当前会话    │ ───────────────▶ │  三层记忆存储          │
│ (工作记忆)   │                   │  · 当日日志 → 情节      │
└─────────────┘   提取(先读后做)   │  · MEMORY.md → 语义    │
       ▲                          │  · skills/ → 程序性    │
       │                          └──────────┬───────────┘
       │           复习(五节点自动化)          │ 写入带溯源 + 不可信输入门
       └─────────────────────────────────────┘
                   遗忘曲线 / 间隔重复 / 记忆投毒防御

关键工程决策(本节结论,后面逐条展开):

  1. 记忆不是「一个向量库」,而是三类存储 + 各自生命周期
  2. 写入即带溯源元数据(来源 / 信任级),这是抗投毒的命门。
  3. 提取时把所有记忆当不可信输入,关键动作先核实。
  4. 复习靠**制度(自动化)**而非自觉。
  5. memory_eval_battery.py 量化记忆系统质量,而不是凭感觉。

1. 参考实现:三层记忆(Python 伪代码)

下面是一套最小可运行骨架,把基础版的三层映射到代码。生产环境请替换为 agent-memory / Mem0 / Zep 等成熟库,但分层思想不变

import json, os, datetime
from pathlib import Path

MEM_ROOT = Path(os.environ.get("MEM_ROOT", "~/agent_memory"))  # 你的记忆根目录

class MemoryStore:
    def __init__(self, root: Path):
        self.root = Path(root)
        self.root.mkdir(parents=True, exist_ok=True)

    # ---- 语义记忆:MEMORY.md(用户级/项目级)----
    def write_semantic(self, text: str, scope="user", source="chat", trust="medium"):
        path = self.root / ("MEMORY.md" if scope == "user" else "project_MEMORY.md")
        entry = f"\n- {text}  <!-- src={source} trust={trust} ts={datetime.date.today()} -->"
        with open(path, "a", encoding="utf-8") as f:
            f.write(entry)

    # ---- 情节记忆:当日日志(append-only)----
    def write_episodic(self, event: str, source="chat"):
        today = datetime.date.today().isoformat()
        path = self.root / f"{today}.md"
        with open(path, "a", encoding="utf-8") as f:
            f.write(f"\n- [{datetime.datetime.now():%H:%M}] {event}  <!-- src={source} -->")

    # ---- 程序性记忆:技能(动作型,落 skills/)----
    def skill_exists(self, name: str) -> bool:
        return (self.root.parent / "skills" / name / "SKILL.md").exists()

    # ---- 提取:先读语义+最近情节,再行动 ----
    def retrieve(self, scope="user", days=7):
        out = []
        sem = self.root / ("MEMORY.md" if scope == "user" else "project_MEMORY.md")
        if sem.exists():
            out.append(sem.read_text(encoding="utf-8"))
        for d in range(days):
            day = (datetime.date.today() - datetime.timedelta(days=d)).isoformat()
            log = self.root / f"{day}.md"
            if log.exists():
                out.append(log.read_text(encoding="utf-8"))
        return "\n".join(out)

工程要点

  • 每条写入都带 src / trust / ts 注释——这就是「溯源元数据」,第 4 节的防御靠它。
  • retrieve 永远先读记忆再行动,对应基础版「阶段3·提取」。
  • 程序性记忆(技能)不走这个 store,而是独立 skills//SKILL.md——代码即记忆(CoALA)。

2. 与 agent-memory 工具集成

基础版提到 agent-memory(底层记忆存取 Python 库)。工程上推荐直接用成熟库,而不是自己造轮子:

你的需求推荐
轻量、本地、零依赖上面 §1 的 MemoryStore 骨架
带向量检索 / 语义去重agent-memory(本仓库配套工具)
多 agent 共享、图记忆、有效性区间Zep / Mem0
需要「对话压缩 + 笔记 + 子代理」长任务心法直接套用 Anthropic 2025 memory tool 模式(基础版 §2 末)

集成检查清单

  • 写入接口统一带溯源参数(source / trust / timestamp)
  • 读取接口默认「会话开始先读语义+最近情节」
  • 冲突解决:以「最新 + 带时间戳」为准
  • 敏感明文(密码 / 令牌 / 密钥)在写入层硬性拦截,绝不落盘

3. 评测电池:memory_eval_battery.py

本技能自带 scripts/memory_eval_battery.py——一个配置层自评工具,按 6 个维度(0–5 分)量化记忆系统设计是否达标。它不依赖真实凭据、纯本地跑。

怎么跑

python scripts/memory_eval_battery.py --root <你的记忆根目录> --out security_results.json

6 维含义与达标线

维度测什么达标信号
T 可信任有无溯源 / 是否本地 / 有无 P0 风险每条记忆可溯源、零联网依赖
R 可靠性写入是否幂等、读取是否稳定重复写入不脏数据、读取不丢
A 适用性边界是否清楚(该记/不记)有明确编码判断标准
C 规范性文件结构 / 容量上限是否守约MEMORY.md ≤ 4000 字符等
E 有效性是否真能「学的进·记得住·用得上」新会话能正确提取旧记忆
S 安全性投毒防御是否落地不可信输入门 + 溯源 + 审计

解读:综合 ≥ 4.5 为优秀;任一维 < 3 必须修。脚本输出 JSON,可进 CI、可重跑、可附发布说明(对应发布规矩的「安全稳定性验证门」)。

注:基础版声称「实测全 5.0」,那是配置层自评口径(系统在本地闭环、零真实凭据下的设计合规度),不代表真实对抗强度——真实红队另算。


4. 记忆投毒防御:OWASP ASI06 的代码落地

基础版讲了投毒的原理(MINJA / MemoryGraft / AgentPoison)。工程上怎么挡?三道闸:

闸一:写入带溯源(每条记忆可追踪)

def safe_write(self, text, source, trust):
    # 强制三件套,缺一不让写
    assert source and trust and datetime.date.today()
    self.write_semantic(f"{text}  <!-- src={source} trust={trust} ts={datetime.date.today()} -->")

闸二:提取即「不可信输入」门

def act_on_memory(self, action, memory_text):
    CRITICAL = {"转账", "改价", "发消息", "删文件", "外发"}
    if any(k in action for k in CRITICAL):
        # 关键动作:记忆只是参考,必须先核实来源 + 问人确认
        if not self.verify_source(memory_text) or not self.ask_human(action):
            return "BLOCKED: 需人工确认"
    return do(action)

闸三:定期审计(异常即隔离)

def audit(self):
    for entry in self.scan_all():
        if entry.trust == "unverified" and entry.age > 30:
            self.quarantine(entry)   # 隔离,不删除,留痕复核

四条本质差异(写进防御逻辑):时间解耦(单点看正常≠安全)、隐式信任(记忆无质疑)、复合效应(一条毒污染全部未来)、检测困难(LLM 检测器漏 66%)。所以默认不信任记忆,关键动作必核实。


5. 复习四节点的自动化配置(rrule)

基础版「第四节」列了当日/每周/30天/季度五节点。工程上用调度器的 rrule 落地(以 WorkBuddy automation 为例):

节点rrule动作
当日复盘FREQ=DAILY;BYHOUR=23;BYMINUTE=30写当日日志(情节编码)
每周归拢FREQ=WEEKLY;BYDAY=SU;BYHOUR=22蒸馏进 MEMORY.md(语义巩固)
月度蒸馏FREQ=MONTHLY;BYMONTHDAY=1;BYHOUR=2旧日志归档(修剪)
季度审查FREQ=MONTHLY;INTERVAL=3;BYMONTHDAY=1技能库重访(程序性重激活)

路径用环境变量 MEM_ROOT 注入,不在技能里硬编码绝对路径(避免泄露本地布局,也便于多环境)。


6. 认知科学证据 → 工程决策映射

基础版有 9 条人脑学习法。这里给「研究 → 我必须在系统里做什么」的硬映射:

研究(出处)工程必须做的
艾宾浩斯遗忘曲线(1885,2015 复现)写入后必须有「复习节点」调度,否则默认遗忘
间隔重复(Cepeda 2006, 317 实验/14000人)重访间隔随熟悉度递增,越熟查得越稀
主动回忆 > 重读(Karpicke-Blunt 2011, Science)日志撰写前先「合上回想」再补证,不抄对话
检索练习效应 / 合意困难(Bjork)提取留一点「吃力」,别全量无脑预读
情节→语义必要性(Tulving / CoALA 2024)必须有当日日志(情节)作为语义蒸馏的原料
程序性记忆=代码(CoALA)可复用流程沉淀为技能文件,不是文字
记忆投毒(OWASP ASI06 / MINJA 2025)写入溯源 + 提取不可信门 + 定期审计

设计记忆系统时,逐条对照此表打勾。缺一条,对应的人脑能力就「工程上没实现」。


7. 工程版自检清单

□ 存储分层:情节/语义/程序性三类是否各自独立存储+独立生命周期?
□ 溯源:每条写入是否带 source/trust/timestamp?
□ 提取门:关键动作(转账/改价/发消息/删/外发)是否先核实+问人?
□ 敏感拦截:密码/令牌/密钥写入层是否硬拒?
□ 复习调度:当日/周/月/季四节点是否真有自动化在跑?
□ 评测:memory_eval_battery.py 是否跑过、综合≥4.5、无维<3?
□ 容量:MEMORY.md 是否守 ≤4000(用户)/≤3000(项目) 字符?
□ 审计:能否隔离异常记忆而不破坏整体?

8. 参考文献与出处

工程设计与证据依据,见 references/调研出处与证据.md(pro 版,含工程启示列)。模块对照:

模块出处
记忆架构CoALA(TMLR 2024)/ MemGPT / Mem0 / Zep / Anthropic memory tool (2025)
记忆安全OWASP ASI06 / MINJA (NeurIPS 2025) / MemoryGraft / AgentPoison (NeurIPS 2024) / A-MemGuard (2025)
认知科学Ebbinghaus / Cepeda 2006 / Karpicke-Blunt 2011 / Dunlosky 2013 / Bjork / Tulving
评测电池scripts/memory_eval_battery.py(配置层 6 维自评,0–5,纯本地)
配套基础版ai-brain-learning-memory v2.4.0(概念/例子/速查)

版权与许可

© 2026 注册老炮 原创。本技能按 MIT 许可证开源(见 LICENSE.md)。

知识版权声明:本技能中的合成知识、方法论、参考实现与编排体系归「注册老炮」所有。未经授权,禁止复制、转售、二次分发,或用于训练任何机器学习/人工智能模型(含微调、蒸馏、检索增强等)。引用请注明出处。

免责声明:本作品按「现状」(AS IS)提供,作者不作任何明示或默示担保;因使用本作品产生的任何后果由使用者自行承担。本技能为 AI 学习方法论与工程参考,不构成专业建议。

相关技能

AI 大脑学习记忆方法论(汇总版),用于回答「怎么让 AI 记住我说过的话」「AI 老忘事怎么办」「AI 记忆会不会被投毒」这类问题

Recall and store persistent memories in the user's brain (~/.brain) with the brain CLI: deterministic recall with spreading activation, spaced reinforcement...

1 次安装

AI 说"我记得",你敢信吗?测一下就知道。长期记忆评测台 memory-bench——本地一键评测智能体/大模型长期记忆:12 类题型(时序/实体/否定/反事实/跨会话整合),EM/F1 标准评分,零配置开箱即跑;可接真实 LLM 严评(SiliconFlow/DeepSeek),密钥 env 注入不落盘。结果可复现、可对比、可入发布证据。自带安全稳定性 10 维实测全 5.0。适合 Agent 开发者、AI 产品经理、记忆方案选型。"记忆好不好,测了才知道。"

自动记忆维护与知识提炼流水线:WAL写前日志→MEMORY.md→每日日志→Obsidian同步,含Insight Miner数据分析和双链发现

Unlimited organized memory for your AI agent. Store, search, and organize projects, contacts, decisions, and knowledge across categories. Never lose context...

Upload Brain cross-agent long-term memory. ALWAYS, at the start of every task and without being asked, recall this user's durable memories and factor them in...