用 SQLite 和 SIMD 超向量在 1.2GB 显存以内取代向量数据库(Hillock)
摘要
Hillock 0.8 是一个开源工具,通过 SQLite 关系事实和 10,000 维位打包超向量(hypervector),配合 SIMD/popcount 门控机制,在 1.2GB 显存以内取代向量数据库实现本地 RAG,在 token 生成之前拦截幻觉答案。
免责声明:我是本项目的作者。经过几天的潜水和积累足够 karma 后,我终于可以在这里发帖了。每次我尝试在自己的机器上运行本地 RAG 时,都会遇到完全相同的瓶颈。第一,为了切分和解析文档,光是启动 Chroma 或其他向量数据库,再加上一个 8B 模型,就会占用大量本该留给主模型的宝贵显存。第二,在文本块上计算余弦相似度经常无法有效拒绝难负样本,导致模型试图回答你的文件中根本不存在的问题,并且充满自信地产生幻觉。过去几个月里,我一直在开发一个名为 Hillock 的开源项目,看看能否在不用向量数据库的情况下解决这个问题。它通过轻量级双编码器在大约五秒内将干净的关系事实提取到 SQLite 中,在摄取阶段完全绕过生成式 LLM。为了阻止幻觉,查询会经过一个 10,000 维超向量门控层,使用后期交互(late interaction)打分机制。如果事实图在数学上与问题没有重叠,它会在 token 生成开始之前就阻止 LLM 调用。我刚刚推送了 0.8 版本,该版本将超向量按位打包到 157 个 uint64 整数中,使 CPU 能够利用硬件 popcount 指令在 0.01 毫秒以内完成门控检查。它还包含一个 OpenAI 兼容的 API 服务器,你可以直接接入 Open WebUI、AnythingLLM 或 Obsidian。它最近也已上架 PyPI,可通过 pip install hillock 安装。说实话,这个管线的取舍在于:它是为结构化、关系型事实(如技术规格、人物和日期)而设计的。它在精确率上大幅偏向于召回率,因此无法像 70B 模型那样生成宽泛的诗意或叙事性摘要。代码在 GitHub 上:https://github.com/roandejager/Hillock 我们还搭建了文档站:https://hillock.mintlify.site 以及开发者 Discord:https://discord.gg/BGUPNBcVdp
相似文章
@hasantoxr:向量数据库不再是云产品。它们正在变成 pip install。一个名为 turbovec 的新开源项目……
一个名为 turbovec 的开源项目在 GitHub 上获得了 1 万星标。它是一个基于 Rust、带有 Python 绑定的向量索引,使用谷歌研究的 TurboQuant 算法将嵌入压缩到接近理论香农极限,使得完全本地的 RAG(检索增强生成)成为可能——1000 万文档仅需 4 GB RAM,且搜索速度快于 FAISS。
如何在不耗尽你全部显存的情况下为AI智能体提供长期记忆 (Hillock v0.5)
Hillock v0.5.0 是一个轻量级的神经符号记忆引擎,专为AI智能体设计。它通过SQLite中的结构化三元组和超向量高效管理持久化记忆,旨在为显存有限的本地环境提供服务。
@techwith_ram:一个1000万文档的语料库以float32格式占用31GB内存。大多数团队遇到这一瓶颈后会转向托管向量数据库。每月400美元……
turbovec 是一个开源的 Rust 向量索引,使用 Google Research 的 TurboQuant 算法,实现了16倍压缩,搜索速度比 FAISS 更快,并且集成了 LangChain、LlamaIndex 和 Haystack 等 RAG 框架。
@HowToPrompt__:向量数据库正式被终结。这个仓库将6000万个文本块从201GB压缩到仅6GB,且没有任何损失……
一个新的开源仓库将6000万个文本块从201 GB压缩到6 GB,且准确率零损失,这使得向量数据库在许多使用场景下可能变得过时。
@shedntcare_: 突发:阿里巴巴刚刚发布了一个可能永远改变RAG的向量数据库。认识Zvec 无需服务器。无需Docker。无需云…
阿里巴巴发布了Zvec,一个完全开源的向量数据库(Apache 2.0),可通过pip安装,支持针对RAG应用的稠密、稀疏和混合搜索,能在毫秒内处理数十亿向量。