redcache-ai
为LLM和AI Agent打造的轻量级记忆管理框架,支持本地存储、向量相似度检索和LLM驱动的记忆增
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
为LLM和AI Agent打造的轻量级记忆管理框架,支持本地存储、向量相似度检索和LLM驱动的记忆增
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象你正在开发一款 AI 心理辅导聊天机器人。用户 A 上周倾诉了工作压力,三天后又来聊天——如果 AI 完全不记得这段对话,它只能从头开始,既无法表达理解,也无法提供连贯的建议。这种失忆症是所有 LLM 应用开发者的共同噩梦:LLM 本身是无状态的,每一次对话都像是全新的开始。
RedCache-AI 正是为解决这一问题而生。它是一个专为 LLM 和 AI Agent 设计的轻量级记忆管理框架,允许开发者为每个用户、每个对话会话持久化存储、检索、增强和管理记忆数据,让 AI 应用真正拥有连续记忆的能力。

图1:RedCache-AI 核心功能示意——存储、检索、增强三大能力
大语言模型本身是无状态的——每次 API 调用结束后,所有上下文都会被丢弃。传统解决方案要么把历史对话塞进 prompt(成本高、长度受限),要么用向量数据库做语义检索(复杂度高、依赖重)。
RedCache-AI 的作者 Warren Chisasa 在开发聊天应用时,发现市面上的记忆方案要么价格昂贵(闭源 SaaS),要么功能残缺(缺乏外部依赖支持),于是决定自己动手,写一个轻量、透明、完全开源的记忆框架。2024年7月首次发布,2026年6月最新更新,GitHub 累计获得 181 颗星。
RedCache-AI 提供开箱即用的双重存储引擎:
DiskStorage(默认):将记忆以 JSON 文件形式存储在本地磁盘(默认路径 redcache_data.json),零配置、零依赖,适合单机场景和快速原型开发。
SQLiteStorage:将记忆存入 SQLite 数据库,支持复合主键(user_id + memory_id)唯一约束,INSERT OR REPLACE 语义保证数据一致性,适合需要持久化查询的生产环境。
存储层采用策略模式(Strategy Pattern):通过抽象基类 StorageBackend,新增存储后端只需实现 save() 和 load() 接口,无需改动核心逻辑。
这是 RedCache-AI 最具特色的部分——完全自包含的向量检索引擎,无需依赖 Chroma、Pinecone 等外部向量数据库。
核心流程:
向量化(_vectorize_text):对输入文本进行预处理(小写化、去除非字母数字字符),构建词表,然后生成固定长度(默认100维)的向量表示。向量生成逻辑分两种模式:词表不足 vector_size 时用 Counter 统计词频;超过时用 hash(word) % vector_size 做哈希映射。
相似度计算:检索时用余弦相似度(np.dot)在用户的所有记忆向量中寻找最相似的 Top-K 条目。
CRUD 操作:支持按 memory_id 精确更新指定记忆、删除单条记忆、清空用户全部记忆,数据变更后自动落盘。
需要注意的是:RedCache-AI 的向量方法本质上是基于词频的哈希向量(类 TF-IDF),而非真正的语义嵌入。这意味着它在处理同义词、语义相似但词汇不同的查询时能力有限。
这是最有想象空间的功能。当配置了 OpenAI API Key 后,RedCache-AI 可以:
enhance_memory():将原始记忆丢给 GPT-4 进行语义增强——补充上下文、修正语法、丰富细节——然后将增强后的文本作为新记忆存入。generate_summary():将用户所有记忆汇总,让 LLM 生成一段连贯的总结摘要。LLM 集成采用适配器模式(Adapter Pattern):BaseLLM 抽象基类 + OpenAILLM 具体实现,便于后续接入 Claude、Llama、Mixtral 等其他 LLM 提供商。
RedCache-AI 的代码库约 1200 行 Python,结构清晰:
redcache_ai/
├── __init__.py # 导出 RedCache, load_config, set_openai_api_key
├── core.py # 核心类:向量引擎 + CRUD + LLM 增强
├── storage.py # 存储抽象层:DiskStorage + SQLiteStorage
├── config.py # 配置管理(默认 GPT-4o-mini)
└── llm/
├── base.py # LLM 抽象基类
└── openai_llm.py # OpenAI 适配器(支持 base_url 自定义)
技术栈:openai(官方 SDK)、scikit-learn、numpy。依赖极简。
向量方案局限性:当前实现使用的词频哈希向量存在明显局限:无法捕捉语义相似性;维度固定(默认100),向量碰撞概率随词表增大而上升;不支持批量向量检索优化,O(n) 线性扫描。这也是作者在 README 中明确提到的改进方向——计划引入真正的语义嵌入模型。
安装只需一条命令:pip install redcache-ai,零额外依赖,Python >= 3.6 即可。API 设计直观,storage.add() → storage.search() → storage.update/delete,开发者几乎不需要阅读文档即可上手。LLM 增强功能需要自行准备 OpenAI API Key,不提供免费额度。
1. 向量检索质量偏低:这是最被社区诟病的问题。相比 Mem0(支持多信号检索:语义 + BM25 + 实体关系图),RedCache-AI 的词频向量方案在语义理解上差距明显。有用户在 Reddit 帖子下评论指出:简单用 pip install 就能跑确实方便,但如果要做真正有价值的 AI 应用,还需要自行替换为 sentence-transformers 等专业 embedding 方案。
2. 多模态支持缺失:只能处理纯文本,无法存储图片、音频、文档等多模态记忆,限制了其在复杂 Agent 场景中的应用。
3. 生态尚处早期:181 星的关注度相对同领域竞品(如 Mem0 拥有数千星)较小,缺少完整 API 文档,版本号 0.1.1 表明项目仍处于早期阶段。
LLM 记忆管理是 AI Agent 时代的核心基础设施之一。RedCache-AI 的最大价值在于降低了 AI 记忆的入门门槛——不需要部署向量数据库,不需要理解 RAG pipeline,任何会用 Python 的开发者都能在 5 分钟内为 AI 应用添加记忆功能。
作者规划的路线图(接入 Claude/Llama/Mixtral、支持 Agent、提供托管版本)若能实现,项目有望从学习玩具升级为真正可用的生产级组件。
| 维度 | 评分 | 说明 |
|---|---|---|
| 上手难度 | 5星 | pip install 即可,零配置 |
| 功能完整性 | 3星 | 存储+检索+LLM增强,基础能力齐全 |
| 向量检索质量 | 2星 | 词频哈希向量,语义检索能力弱 |
| 扩展性 | 3星 | 抽象层设计合理,但需自行替换核心向量模块 |
| 文档质量 | 3星 | README 覆盖基础用法,缺少完整 API 文档 |
| 生产可用性 | 2星 | 适合快速原型,生产环境建议替换向量引擎 |
适合场景:AI 应用快速原型开发、学习 LLM 记忆原理、单机轻量级记忆管理。 不适合场景:对语义理解有要求的生产级应用、需要多模态记忆的场景、大规模数据管理。