跳到正文
Hacker News· Corbenic·· 7 天前AI 评分69

Corbenic AI 发布 Galahad:为 AI 提供 5000 万 token 长期记忆层

Show HN: Try Free Long-Term Memory for AI 50M-Token Window

AI 导读

Corbenic AI 发布 Galahad 记忆层,通过 pip install galahad-kv 安装,可接入 llama.cpp、vLLM 和 SGLang,把模型已读过的 KV cache 存盘复用,避免重复计算。

正文 · AI 翻译

Corbenic

pip install galahad-kv

现已上线:pip install galahad-kv

Follow @CorbenicAI on X Corbenic AI on LinkedIn Corbenic AI on Crunchbase corbenic.ai

arXiv 2605.09611: Byte-Exact Deduplication in Retrieval-Augmented Generation arXiv 2605.09990: Merlin: Deterministic Byte-Exact Deduplication arXiv 2607.14431: Byte-Exact KV-Cache Grafting: a Verified-Knowledge Flywheel arXiv 2607.23806: A Frozen 12B Beats Frontier Models on Verified Work

All papers on arXiv Google Scholar Semantic Scholar NASA ADS ORCID 0009-0003-9309-4586

Patent pending Works with vLLM Works with SGLang Works with llama.cpp

GALAHAD, the memory layer for AI. C++ core. Never reads twice. 100/100 recall.

Galahad 是什么?

Galahad 是 AI 的记忆层。模型读一次文本,Galahad 就保留这次阅读。当再次需要该文本时,Galahad 把阅读结果返回,因此 GPU 永远不会重复读取同一文本。Galahad 还保存文档本身,并找到问题所涉及的部分,因此模型只读取重要的内容。

Galahad 拥有 C++ 核心,可运行在 llama.cpp、vLLM 和 SGLang 中。

为什么重要

  • 不要为相同的 token 重复付费。 模型已经处理过的 token 不会再次处理。Galahad 返回阅读结果,而不是重新计算。 99.6% 的 token 从记忆中返回;在 vLLM 上快 14 倍,每个问题 0.59 秒。
  • 字节级精确,而非近似。 返回的内容与输入完全相同:模型精确的阅读结果,以及以精确文本存储的文档。没有有损嵌入,没有 RAG 流水线那种“差不多就行”。100/100 正确,而 RAGFlow 为 77。
  • 只读取重要的内容。 Blaise 找到问题所涉及的章节,因此模型读取 670 个 token,而不是 9,700 个。
  • 读取超出上下文窗口的内容。 远超模型上下文的文本,实测最高达 5000 万 token,会被分部分读取;每部分的阅读结果被保存,问题所需的部分会被返回。无论文本是 100 万还是 5000 万 token,GPU 内存都稳定在 34.1 GB。
  • 重启后依然存在的记忆,静态加密,且你的密钥永远不会离开你的机器。

14 times faster on vLLM with Galahad, 0.59 s per question. 100 vs 77 against RAGFlow. 99% comes back from memory. 91 to 95% right on messy real data.

How Galahad works. Your app or agent asks a question; your model on vLLM, SGLang, llama.cpp or your own C++ gives the answer. Inside Galahad, Blaise the library finds the chapter the question is about, and Taliesin the memory keeps what the model has read and gives it back. Tools for agents: agent connectors, replay, fault finder, branching, inspector and rewind. For many users: prefix sharing, pinning, tenants. Trust and cost: encryption at rest, sanitizer, FinOps. Underneath, the engine saves everything once, byte-exact, loads only when faster than reading again, and stays inside its disk budget.

安装

1 块 GPU 免费。

pip install galahad-kv

然后激活它(一条命令搞定所有):

galahad free --org <your-secret-key> --email you@company.com --accept-non-commercial
galahad doctor          # library loads? licence valid? store writable?
  • vLLM: vllm serve <model> --kv-transfer-config '{"kv_connector":"GalahadConnector","kv_role":"kv_both"}'
  • SGLang: 添加 --hicache-storage-backend dynamic 并使用 Galahad 后端(见 wiki)
  • 裸机 / 你自己的代码: 链接 libgalahad.so(随 wheel 提供)

Linux x86-64,Python 3.10–3.14。在 PyPI 上。 完整指南:wiki。

主要功能

核心

功能 作用 实测
💾 Taliesin · 记忆 保留模型已读取的内容。GPU 永远不会重复读取同一文本。 99.6% 的 token 从记忆中返回
📚 Blaise · 库 保存你的文档,并找到问题所涉及的章节。 100/100 正确,读取 670 个 token 而非 9,700 个
🪟 5000 万 token 窗口 · 读取超出上下文限制 远超模型上下文的文本会被分部分读取;窗口在磁盘上移动,GPU 只保留一部分。 在 100 万和 5000 万 token 时 GPU 内存稳定在 34.1 GB
⚙️ 在你自己的程序内 模型和 Galahad 在同一个 C++ 程序中。没有服务器,没有 Python。 100/100 正确,每个问题 0.65 秒

工作原理

  • Taliesin 将模型的 KV 缓存保存到磁盘并恢复。它作为 vLLM KV 连接器、SGLang HiCache 存储后端以及 llama.cpp 槽保存和恢复功能接入。
  • Blaise 将你的文档保存为精确文本,并返回问题所涉及的章节。文本以字节级精确方式存储。
  • 5000 万 token 窗口: 长文本被分部分读取;每部分的阅读结果保存到磁盘,该部分从 GPU 中移除,因此当窗口在整个文本上移动时,GPU 内存保持稳定。问题所需的部分会被返回并据此作答。无需开启任何东西。见 wiki。
  • 在你自己的程序中:llama.cpp 内置于 Galahad 库中;你的程序直接调用其 C API。

面向智能体

功能 作用 实测
🔗 智能体连接器 记录智能体的每一步。绝不改变其行为。 0 个答案被改变,无可测量的性能下降
🔁 回放 将一次运行与录制内容对比,并显示发生变化的确切步骤。 在 第 0 步、第 0 个词 发现一个被改动的词
🎯 故障查找器 指出失败的原因:你的代码、模型,还是保存的读取结果。 在全部 3 个运行时上均正确找出原因,耗时 0.001 ms
🌿 分支 从一个起点产生多次尝试,无需复制该起点。 每个分支 0.18 ms,而非 269 ms
🕰️ 检查器与回退 查看内存中的内容。将智能体恢复到较早的时间点。 回退通过了 27/27 项检查

工作原理

  • 智能体连接器:每一步一个装饰器,适用于 LangGraph、LangChain、CrewAI 或你自己的循环。每次运行都会变成一个因果图。
  • 回放:一个 pytest 插件。录制一次;每次 CI 运行都会与录制内容对比,因此导致智能体出错的提示词改动会让构建失败。
  • 故障查找器:返回所在层、做出决定的规则以及可疑块。证据不足时它会说“未知”,而不是猜测。
  • 分支:KV 缓存的写时复制分支(fork、snapshot、restore、discard)。在 vLLM 和 SGLang 上通过每请求的 galahad_branch 标志实现;快照在重启后仍然存在。
  • 检查器与回退:一个位于令牌之后的本地网页和 API,带有审计日志。回退必须由主机开启。

面向多用户

功能 作用 实测
🧩 前缀共享 许多请求共享的起点只读取一次。 50 个智能体的计算量减少 22×
📌 固定 保留每个请求都需要的内容,例如系统提示词。 在 181 次驱逐后仍然存活
🏢 租户 一个服务器,多个客户,彼此隔离并分别计量。 来自两个客户的相同问题保持隔离

工作原理

  • 前缀共享:共享的起点被保存为一系列块,查找会找到最长的已保存起点。仅当加载比计算更快时才会使用。
  • 固定:当 Galahad 必须释放空间时,被固定的块会被跳过。
  • 租户:每个租户有自己的键空间,命中、未命中和驱逐按租户分别计数。

信任与成本

功能 作用 实测
🔐 静态加密 所有保存的内容都经过加密。被遗忘的客户将彻底消失。 磁盘上可读 0 字节
🛡️ 净化器 在保存前拒绝损坏的读取结果。 在 0.05 ms 内完成检查
💰 FinOps 以 GPU 时间和金钱显示内存节省了多少。它从不猜测。 每 100 个问题节省 746–960 GPU 秒

工作原理

  • 静态加密:对每个保存的块和目录使用 AES-256-GCM,密钥来自你自己的密钥服务。密钥错误时,存储会拒绝打开。
  • 净化器:按主机声明的数字格式(bf16、f16)检查 NaN 和无穷大,并检查大小。
  • FinOps:使用你的每小时 GPU 价格和使用水平。没有价格时它不给出数字,并说明缺少什么。

使用 Gemma 4 31B 在 llama.cpp、vLLM 和 SGLang 上实测,2026 年 9 月。

已测试模型

Galahad 在来自 10 个系列的 30 个开放模型上进行了测试,规模从 7B 到 70B。

系列 模型
Qwen Qwen3 8B · Qwen3 14B · Qwen3 32B · Qwen3.5 9B · Qwen3.8 27B · Qwen3.6 35B-A3B · Qwen3 Coder 30B-A3B
Gemma Gemma 4 12B · Gemma 4 26B-A4B · Gemma 4 31B
Mistral Ministral 3 8B · Ministral 3 14B · Mistral Small 3.2 24B · Devstral Small 2 24B
GLM GLM-4.6V-Flash 9B · GLM-4.7-Flash 30B-A3B
Llama Llama 3.1 8B Instruct · Llama 3.3 70B Instruct
DeepSeek R1 Distill Qwen 7B · R1 Distill Qwen 14B · R1 Distill Qwen 32B · R1 Distill Llama 8B · R1 Distill Llama 70B · R1-0528-Qwen3-8B
Phi Phi-4 14B · Phi-4 Reasoning 14B
GPT-oss GPT-oss 20B
Nemotron Nemotron 3 Nano 30B-A3B
Olmo Olmo 3 7B · Olmo 3 32B

© 2026 Corbenic AI - Sietse Schelpe. 专利申请中。

来源:Hacker News · github.com