AI News HubLIVE
站内改写

Show HN:开源AI记忆工具包,支持大规模扩展

Lithium是一个基于PostgreSQL ltree的分层版本化存储引擎,提供确定性、范围化的检索,内置版本控制,零运行时依赖。它通过MCP服务器与AI工具集成,适用于AI代理记忆、决策跟踪等场景。

文章情报

工程师进阶

要点

  • 使用PostgreSQL ltree实现分层版本化存储,查询速度优于图数据库
  • 提供TypeScript API,支持范围化检索和内置版本控制
  • 包含MCP服务器,可与Claude等AI工具连接
  • 零运行时依赖,利用现有PostgreSQL基础设施

为什么重要

这条新闻值得关注,因为使用PostgreSQL ltree实现分层版本化存储,查询速度优于图数据库。

技术影响

可能影响模型选型、推理成本、产品能力和评测基准。

Lithium是一个开源工具包,专为AI记忆系统设计,旨在解决树状数据结构的扩展性问题。与依赖图遍历的图数据库不同,Lithium利用PostgreSQL的ltree扩展实现索引支持的子树查询,显著提升查询速度。它提供了分层版本化存储,支持范围化检索和内置版本控制,零运行时依赖。

为什么选择Lithium?

记忆图在处理树状数据时无法扩展,图遍历成为瓶颈。向量搜索给出“与X相似”的结果,但你可能需要“X下的所有内容”。PostgreSQL的ltree处理树查询速度明显更快,基于索引的子树查找,而非遍历。Lithium将其封装在干净的TypeScript API中,并内置版本控制。

核心特性

  • 分层结构:树层次结构,而非任意图
  • 查询速度:ltree索引支持,而非图遍历
  • 检索方式:确定性、范围化,而非模式匹配
  • 版本控制:内建、不可变,而非手动覆盖
  • 基础设施:利用现有PostgreSQL,无需额外服务

包介绍

  • @lithium-ai/core:零依赖存储引擎
  • @lithium-ai/postgres:PostgreSQL ltree适配器
  • @lithium-ai/drizzle:Drizzle ORM适配器
  • @lithium-ai/mcp:用于AI工具的MCP服务器

快速开始

需要PostgreSQL并启用ltree扩展。使用Drizzle时,安装@lithium-ai/core@lithium-ai/drizzle,然后通过new Lithium(drizzleAdapter(db))初始化。使用原生PostgreSQL时,安装@lithium-ai/postgrespostgres,传入连接对象。创建层次结构:lithium.clusters.create({ name: "infra" }),然后添加子集群和条目,最后通过lithium.getContext({ path: "infra" })进行范围化检索。

连接到Claude

通过MCP服务器,可以将Lithium与Claude Code集成。在服务器文件中,设置内容解析器以从自定义表加载实际内容,然后运行serveMcp(lithium)。在Claude Code的配置中添加MCP服务器条目即可使用。

数据模型

条目是纯结构,内容存储在用户自己的表中,通过条目版本ID引用。模型包括Cluster(id, parentId, path, name, description)、Entry(id, clusterId)和EntryVersion(id, entryId, version, createdAt)。用户的内容表通过外键引用EntryVersion。

API概览

  • 集群操作:create、findByPath、list、listDescendantIds(ltree子树查询)
  • 条目操作:create、update(自动递增版本)、get、list、listWithLatestVersion
  • 上下文操作:getContext(带可选内容解析器的范围化检索)

错误处理:所有方法返回Result对象,不抛出异常。

迁移

Drizzle用户导入模式并使用drizzle-kit push;原生SQL用户运行提供的迁移文件,需先启用ltree扩展。

路线图

已完成核心存储引擎、PostgreSQL适配器、MCP服务器、Drizzle适配器、CI和集成测试。计划包括事务支持、MCP写入工具、示例项目及Prisma适配器。

用例

  • AI代理记忆(结构化检索,范围化上下文)
  • 团队间决策跟踪
  • 配置版本控制
  • 文档层次结构

目前,Lithium已在GitHub上开源,采用MIT许可证,获得2个星标。项目团队已发布v0.0.5(支持事务),并持续活跃开发。