用途
Shodh-Memory 为 AI 智能体和机器人提供持久的认知记忆。它解决的是智能体在会话之间遗忘一切、机器人在任务之间丢失上下文、重复犯错并忽视模式的问题。其定位是本地、无 LLM 的记忆层——智能体的 LLM 负责推理,记忆本身不需要 LLM。
主要能力
- 记忆环路中零 LLM 调用:存储和回忆记忆均不调用 LLM。实体抽取、关系类型化、知识图谱构建、因果追踪、排序、衰减、巩固全部以本地算法运行。
- 本地嵌入:通过 ONNX Runtime 使用 MiniLM(22MB,INT8),在设备上进行语义搜索。
- 本地重排序:交叉编码器(ms-marco-MiniLM-L6,23MB int8,ONNX)同时读取查询与前 30 个候选,服务器中默认开启,在 LoCoMo(1,531 个留出问题)上提升 precision@1 16.5 个百分点、recall@10 8.7 个百分点。
- 本地 NER:GLiNER bi-edge-v2 span 类型器(ONNX,模式驱动:141 个细粒度/18 个粗粒度实体类型),首次运行从固定发布自动下载,并提供基于规则的回退。
- 无 LLM 的类型化关系抽取:通过定向词汇线索与范例匹配的语义类型化,从纯文本构建类型化知识图谱(LocatedIn、WorksAt、Causes 等)。
- 因果谱系:通过在图谱中沿类型化因果边回溯来回答“X 的根本原因是什么”,而非询问模型。
- 数学化记忆动态:Hebbian 强化、指数→幂律衰减、扩散激活、长时程增强。
- 三层记忆架构:基于 Cowan 工作记忆模型与 Wixted 记忆衰减研究。
- 内容哈希去重,确保相同记忆不会被存储两次。
- 单二进制,无需 GPU,无 Docker,无 API 密钥,无外部依赖。
- 160+ 个 HTTP 端点,运行于 http://localhost:3030,所有 /api/* 端点需要 X-API-Key 请求头。
- 本地 IPC:服务器默认启用带认证的本地 IPC,同时保留 HTTP。原生 shodh serve 优先使用平台默认 IPC 端点,回退到 SHODH_API_URL(除非启用 fail-closed 模式);TypeScript MCP 客户端仅在设置 SHODH_IPC_ENDPOINT 时使用 IPC。
- 服务器默认绑定 127.0.0.1,网络部署需置于反向代理之后。
使用方式
- 通过 MCP 或 HTTP 提供给聊天智能体使用。第一步为 Claude 提供持久记忆工具;第二步安装 Claude Code hooks 自动捕获每次会话的上下文。
- 本地使用时无需 API 密钥,系统会自动生成一个;远程服务器则添加 "env": { "SHODH_API_KEY": "your-key" }。
- Linux 用户可将 Rust HTTP 服务器通过 systemd 单独监管,与 MCP 客户端分离(Direct server mode with systemd)。
- 面向 Claude、Cursor 及其他 MCP 客户端提供完整工具集,包括:remember、recall、recall_by_tags、proactive_context、context_summary、list_memories、read_memory、forget;quick_recall、query、topic、what_i_know、recent_memories、pending_work、count、memory_health、session_summary;session_digest、session_history、fact_narratives、purge_facts;add_todo、list_todos、update_todo、complete_todo、delete_todo、reorder_todo、list_subtasks、add_todo_comment、list_todo_comments、update_todo_comment、delete_todo_comment、todo_stats;add_project、list_projects、archive_project、delete_project;set_reminder、list_reminders、dismiss_reminder;memory_stats、verify_index、repair_index、token_status、reset_token_session、consolidation_report、backup_create、backup_list、backup_verify、backup_restore、backup_purge。
- 机器人场景支持 Zenoh/ROS2:每个机器人使用自己的 user_id 作为键段(例如 shodh/spot-1/remember),robot_id 是可选载荷字段用于机群分组。每个 Experience 携带 26 个机器人专用字段:geo_location、local_position、heading、sensor_data、robot_id、mission_id、action_type、reward、terrain_type、nearby_agents、decision_context、action_params、outcome_type、confidence、失败/异常跟踪、恢复动作与预测学习。
- 兼容 ROS2 Kilted(rmw_zenoh)、PX4 无人机、Boston Dynamics Spot、人形机器人等支持 Zenoh 或 ROS2 DDS 的系统。
- 平台支持:Linux x86_64、Linux ARM64、macOS Apple Silicon、macOS Intel、Windows x86_64。
- 分发渠道包括 MCP Registry、Docker Hub、PyPI、npm、crates.io 及文档站点。
适用场景
- 需要完全离线、毫秒级延迟、零推理成本、确定性可测试行为的 AI 智能体记忆。
- 聊天智能体(如 Claude、Cursor)的长期记忆与会话上下文自动捕获。
- 机器人(Spot、无人机、人形机器人)在断电重启后仍保留的持久记忆,并从奖励中学习。
- 边缘设备、气隙(air-gapped)环境中的 RAG 替代方案。
- 需要数据永不离开本机的隐私敏感场景。
限制
- 重排序器的性能数字量级受运行器速度影响:相同代码在不同运行间门控 p50 可波动最多 2.3 倍(140 至 544ms)。门控现启用分阶段计时(SHODH_STAGE_TIMING=1,recall-eval.log 中的 STAGE_TIMING 行)以归因交叉编码器成本。
- 网络部署需反向代理;默认仅绑定 127.0.0.1。
- TypeScript MCP 客户端仅在设置 SHODH_IPC_ENDPOINT 时使用 IPC。
- 参考资料中未提供收费、定价或商业模式的明确信息。