面试被问到“记忆机制”?一个开源项目帮你理解!

最近 Claude Code 很火,但用过的同学都知道一个痛点:新开对话啥都不记得,上次说好的代码风格、踩过的坑、定好的方案——重新来过。

而且在目前的面试中,面试官已经不仅仅询问你Skills,MCP,他们更看重你对于实际工程中的痛点有没有深刻的认识。

最近的一场面试中,面试官就深入的与我讨论了记忆机制的落地场景,在什么时候应该用什么,然后我忽然发现,mem0并不是最好的解法,至少它绝不是唯一的解法。

考虑到这儿,索性就自己写了一个开源项目,既是增强简历的竞争力,也是希望在ai浪潮中做出自己的贡献。

项目是什么

CapsuleMemory —— 给 AI 系统加「胶囊式记忆」的 Python 框架。

  • GitHub:https://github.com/Musenn/capsule-memory
  • PyPI:pip install capsule-memory
  • npm(TS SDK):npm install @capsule-memory/sdk
  • 协议:Apache 2.0,完全开源

最直接的用法:让 Claude Code 记住你

pip install 'capsule-memory[mcp]'
capsule-memory-mcp

把这个 MCP Server 注册到 Claude Code 配置里(Cursor、Windsurf 同理),然后:

  • 每次对话开始,Claude 自动拉取历史相关记忆
  • 对话中自动检测可复用的「技能」(你的代码偏好、常用方案等)
  • 对话结束后自动封存,下次直接用

完全不用手动配置提示词,Server 内部已经内置了给 Claude 的操作指令。

核心设计:你的记忆你做主

和其他 AI 记忆方案最大的区别是:默认不自动存任何东西

每次对话都是一个独立的 Session,只有你主动调用 seal() 才会持久化。这样你能精确控制存了什么,不会出现「系统偷偷记住了一个错误方案」的情况。

from capsule_memory import CapsuleMemory

cm = CapsuleMemory()

# 被动模式:一行代码处理 recall + ingest + 生命周期
result = await cm.remember(
    user_message="我偏好 black 格式化",
    ai_response="好的,记住了。",
    user_id="alice"
)

# 手动封存这次对话
await cm.seal_session(user_id="alice", title="代码风格偏好", tags=["python"])

架构上有哪些亮点

1. 技能提取引擎

不只是存对话记录,会实时识别对话中的「可复用技能」:

UserAffirmation

用户明确肯定了某个方案

RepeatPattern

同类问题多轮出现

StructuredOutput

AI 输出了完整脚本/配置

LengthSignificance

单次响应内容极长

触发后会生成事件,让用户决定要不要提取成独立技能胶囊,不强制。

2. 四种存储后端

pip install capsule-memory               # Local 文件(默认,开发够用)
pip install 'capsule-memory[sqlite]'     # SQLite + 384维向量检索
pip install 'capsule-memory[redis]'      # Redis(多服务场景)
pip install 'capsule-memory[qdrant]'     # Qdrant(生产级向量数据库)

SQLite 和 Qdrant 用 sentence-transformers 做语义向量,支持 recall("部署问题") 匹配语义相近的历史记录。

3. 三种接入方式

  • SDK:直接在代码里调用(见上面示例)
  • MCP Server:给 Claude Code / Cursor 用(10 个工具)
  • REST API:FastAPI 服务,16 个端点,任何语言都能调
# 启动 REST API 服务
pip install 'capsule-memory[server]'
capsule-memory serve --port 8000
# 访问 localhost:8000/docs 有完整 Swagger UI

4. 多框架适配器

# LangChain 直接替换记忆组件
from capsule_memory.adapters.langchain import CapsuleMemoryLangChainMemory

# LlamaIndex 同理
from capsule_memory.adapters.llamaindex import CapsuleMemoryLlamaIndexMemory

工程质量怎么样

  • Python 3.11 / 3.12 / 3.13 全覆盖
  • 431 个单元测试,全过
  • mypy strict 模式 + ruff lint 零报错
  • CI 完整跑 lint → 类型检查 → 单元测试 → 集成测试
  • 核心只依赖 5 个包(pydantic、msgpack、rich、aiofiles、typer),LLM 相关全部可选,基础安装包很轻

已发布到 PyPI 和 npm

# Python
pip install capsule-memory

# TypeScript / JavaScript
npm install @capsule-memory/sdk

Release 页面也挂了预编译包:https://github.com/Musenn/capsule-memory/releases/tag/v0.1.1

项目刚开源不久,Alpha 阶段,如果你用了有什么问题欢迎开 Issue 反馈。

觉得不错的话点个 Star 支持一下 ⭐

#AI求职实录#
全部评论
点赞 回复 分享
发布于 今天 00:32 广东
点赞 回复 分享
发布于 今天 00:12 广东

相关推荐

评论
6
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务