起因:现在的 AI 都能记住我们。ChatGPT 有记忆,Cursor 有记忆,各种 AI 伴侣都有记忆。但没人能回答四个致命问题:它凭什么知道?有多大把握?谁授权的?真删干净了吗?
为了解决这个问题,花了一天时间,从零设计并实现了一个名为 AMP (Attestation Memory Protocol) 的开源协议,并写好了参考实现。今天借此机会,和大家分享整个架构设计与代码实现。
为什么我们需要 AMP?
试想一下你在现实场景中遇到过的问题:
- 73% 的消费者曾因为 AI 客服缺乏其账户的基本信息而放弃互动。
- 更可怕的是,用户投入数月"喂养"出的 AI 人格和记忆,在平台关停时,没有任何导出和证明机制,说清零就清零。
目前的 AI 记忆,全是一个个黑盒。应用各自建库,数据无法迁移,权限无法追溯。
我们缺的不是一个更强大的记忆数据库,而是一个在应用与数据库之间的"证据编排层"。
AMP 的核心设计:证据优先,存储其次
AMP 的精髓在于:AMP 不拥有记忆,AMP 让 AI 对记忆的每一次读写都带上可验证的来源、局限、授权和审计轨迹。
具体来说,我们定义了四个核心对象:
1. Attestation(证据声明)
每一条写进系统的记忆,都必须携带这个结构,缺一不可:
json
{
"source": "user", // 谁产生的(user/app/model/import)
"method": "user typed", // 如何获得的
"confidence": 0.95, // 置信度(0-1)
"limitations": [], // 明确不知道什么
"capturedAt": 1700000000000 // 采集时间
}
没有证据,系统直接返回 400 invalid_attestation 拒收。
2. Event(不可篡改的审计链)
每一次读、写、授权、撤销,都会追加一条 Event。
Event 通过 Hash Chain 串联:
hash = sha256(seq|id|actor|action|target|payloadHash|at|prevHash)
这意味着,任何人只要拿到 /v1/events 的数据,就能独立验证这几万条日志是否被中间人篡改过。
3. Tombstone(墓碑删除机制)
当用户要求删除记忆时,我们不物理删除行,而是将内容清空(content = ""),保留 contentHash。
这产生了一条"墓碑",证明"这条数据确实已经被删除了",真正做到可验证删除。
4. Grant(细粒度授权)
允许用户把特定范围的记忆授权给特定的 App。比如:
grant --app cursor --scope work --ttl 7d(只给 Cursor 应用读工作区记忆的权限,7天过期)。
极简实现:300 行代码跑通
为了证明这个协议不是纸上谈兵,我用 Node.js 写了一个无外部依赖 (只用 http 和 crypto)的单文件参考实现:reference/daemon.js。
跑起来非常简单:
bash
# 启动服务
node reference/daemon.js
# 在另一个终端运行一致性测试套件
node conformance/run.js
你会看到 8 个测试用例全部通过:
sql
PASS write without attestation rejected
PASS grant work scope to app-a
PASS write with full attestation succeeds
PASS read without grant forbidden
PASS read with grant returns attestation
PASS revoke grant
PASS read after revoke forbidden
PASS verify chain ok
8 passed, 0 failed
如果你在浏览器打开 http://127.0.0.1:7717/v1/events,你会看到一条完美的哈希链 JSON,这就是"证据编排层"的具象化。
最后:寻找第二个实现
这个项目的所有规范和代码已全部采用 Apache-2.0 协议开源。
正如我在 README 里写的:任何能够通过 conformance/run.js 测试套件的实现,都可以称为 AMP-compatible。
目前只有 Node.js 版本。如果你对 Go、Rust、Python 感兴趣,非常欢迎来提 PR。有第二个实现,才能叫标准。
- GitHub 仓库 :github.com/doujiaozh/a...
- SPEC 协议规范 :SPEC.md
如果这个思路对你有启发,欢迎点个 Star ⭐ 支持一下!也可以在评论区聊聊:你觉得现在的 AI 记忆,最让你担心的点是什么?