核心用法
ChromaDB Memory 是一款面向 AI Agent 的长期语义记忆插件,通过本地 ChromaDB 向量数据库与 Ollama 嵌入模型实现上下文持久化。其核心工作流程为:用户每条消息自动经 Ollama(默认 nomic-embed-text)生成 768 维向量 → 检索 ChromaDB 中相似度高于阈值(默认 0.5)的记忆 → 将前 3 条结果注入当前对话上下文。此外提供 chromadb_search 工具支持手动检索。
部署需三步:启动 ChromaDB Docker 容器(端口 8100)、Ollama 服务(端口 11434)并拉取嵌入模型、配置 OpenClaw 插件参数(集合 ID/名称、服务端点等)。支持通过 collectionName 或 collectionId 指定目标集合。
显著优点
- 完全离线:零调用 OpenAI/Claude 等云端 API,数据不出本地,满足敏感场景合规要求
- 自动无缝:无需用户手动触发,每轮对话自动完成嵌入-检索-注入,体验无感
- 成本极低:单次召回约 275 token,对 200K+ 上下文窗口模型可忽略
- 高度可调:相似度阈值、返回数量、自动/手动模式均可灵活配置
潜在局限
- 基础设施负担:需自行维护 ChromaDB + Ollama 双服务,对非技术用户门槛较高
- 召回质量依赖嵌入模型:nomic-embed-text 虽轻量但语义理解弱于商业大模型,可能出现语义漂移
- 无记忆管理功能:缺少遗忘、编辑、冲突解决等高级记忆治理机制
- 冷启动问题:空集合时无记忆可用,需额外文档索引流程
适合人群
- 隐私优先场景(医疗、法律、金融本地部署)
- 已有 ChromaDB/Ollama 技术栈的团队
- 希望降低长期记忆 API 成本的自托管用户
常规风险
- 服务可用性:ChromaDB/Ollama 任一服务宕机将导致记忆功能失效,需监控与备份
- 数据持久化:默认 Docker 部署未配置数据卷,容器重建可能丢失记忆
- 相似度阈值误设:过高导致上下文缺失,过低引入噪声,需根据业务调优
- 模型一致性风险:若更换嵌入模型,历史记忆需重新索引,否则向量空间不匹配