来源:互联网 更新时间:2026-06-30 14:54
OpenKB把Karpathy的Wiki理念落地成了一个可运行的开源项目,核心思路是用PageIndex构建一个无向量的知识库。简单说,它给知识管理提供了一条新路子。
一句话概括:OpenKB把Karpathy的Wiki型知识组织思路,变成了一条可运行的开源链路,这条链路和传统RAG的路线完全不同。
最近VectifyAI开源了一个叫OpenKB的知识库项目,它的核心逻辑跟Karpathy之前提到的Wiki型知识组织思路非常接近。这个项目集成了同样来自VectifyAI的开源项目PageIndex,用它来解析PDF长文档、构建章节树和页范围检索,然后再把内容编译成摘要页(summary)、概念页(concept)、实体页(entity)等Wiki页面。当需要AI问答召回信息时,先读这一层Wiki,内容不够了再回到原始资料里找。
Karpathy在他的LLM Wiki那篇笔记里写过一句很到位的话:LLM不会觉得维护Wiki无聊,也不会忘记更新交叉引用,一次还能改掉十几个文件。人类最不擅长做的那些文档维护杂活,恰好是LLM最擅长的部分。OpenKB项目做的,就是把Karpathy的这个思路,变成了一条可以跑起来的Wiki知识库。
传统RAG的思路通常是:先把文档切成小块,然后做向量嵌入,问答的时候召回一批相似片段,最后把这些片段塞给模型生成答案。
OpenKB走的是另一条路:先把文档导进来,长文档先建树,短文档先转成Markdown文本,然后把内容编成摘要页、概念页、实体页这些Wiki页面;查询时先读Wiki,不够再回原始文档补细节。
所以它不是把知识留到提问时召回再临时拼接入上下文,而是在一开始的导入阶段就先整理一遍。当然,这个设计也有短板:导入时需要强依赖LLM来构建树,因此质量跟LLM的能力关系很大。
PageIndex专注处理长PDF:先找出目录、章节和页范围,把整份文档组织成一棵树;查询时先看树,再决定去哪些页取证据。
OpenKB是上层知识库:它接收文件、目录和链接,把输入转成Markdown文本或者树结构(依赖PageIndex/LLM),然后生成摘要页、概念页、实体页、索引页和日志(依赖LLM),最后把这些页面交给查询、聊天、技能生成、演示文稿等能力使用。
简单说,OpenKB是基于PageIndex的上层应用。
如果只是想先跑起来,步骤其实很简单:
pip install openkb
mkdir my-kb && cd my-kb
openkb init
openkb add paper.pdf
openkb query "What are the main findings?"
openkb chat
开始前需要先配置模型。openkb init会把配置写入.openkb/config.yaml,模型名按LiteLLM格式填写。同目录下需要有一个.env文件,最少配置一个LLM_API_KEY=...。如果要接VectifyAI云端的复杂PDF处理能力,再加一个PAGEINDEX_API_KEY=...。
常用命令:
openkb init — 初始化知识库目录openkb add — 导入文件、目录或URLopenkb query — 一次性提问openkb chat — 多轮聊天openkb list / openkb status — 查看知识库状态openkb watch — 监听raw/目录,自动编译新文件真正的文档写入入口其实是openkb add。系统会判断输入文档的类型、长短、转换链路,以及后面需要更新哪些Wiki页面。
PageIndex专门用来解析长PDF文档、构建目录树。它本身是一套索引和检索引擎,不适合当SDK用。使用方式如下:
git clone https://github.com/VectifyAI/PageIndex.git
cd PageIndex
pip3 install --upgrade -r requirements.txt
OPENAI_API_KEY=your_openai_key_here
python3 run_pageindex.py --pdf_path /path/to/your/document.pdf
PageIndex的输出产物是JSON树结构文件,树里包含标题层级、页范围、节点摘要和文档摘要。后续的智能体问答等任务中可以直接读这棵目录树,也可以把结果接回OpenKB。
有开发者参考官方仓库的核心业务逻辑,实现了Node.js / TypeScript版本的SDK,可以接入TS技术栈的项目中。这个版本的实现思路与官方Python版本一致,但接口和工程组织完全不同——它是纯SDK抽象,不是CLI应用,适合作为npm包集成使用:
npm i @fastrag/pageindex
主入口是pageIndex()和mdToTree(),另外拆了两个子路径:
@fastrag/pageindex/vector — 树结果向量增强、分块、索引、搜索@fastrag/pageindex/retrieval — 文档注册、树搜索、混合检索、自托管retrieval层TypeScript版把LLM、文档解析等运行时完全抽象出来,可以接入任意模型和文档解析器(比如MinerU),暴露的接口包括LlmProvider、DocumentParser、VectorStore、Embedder等运行时。此外,向量增强和混合检索被显式拆成了独立层,更适合多文档和服务端工程接入。
OpenKB本地支持的输入文档类型包括:PDF、Markdown、Word文档、PowerPoint、Excel表格、HTML页面、TXT文本、CSV,也支持网页链接。
处理路径是这样的:
注意,这里没有一条类似传统RAG的"先分块再进库"的总流水线。短文档先统一成Markdown文本,长文档先统一成树结构。
导入后,原始输入进入raw/或source/目录,短文档整理成Markdown文本,长文档落成逐页JSON文件和树摘要。后面的编译流程再决定要更新哪些摘要页、概念页、实体页、索引页和日志。
这套结构不是为了喂向量库,而是为了让模型先读目录树,再决定往哪一段页范围继续下钻。
这里不是完全不切分,而是按章节边界递归下钻。某个章节节点如果覆盖页数和词元量都太大,代码会继续往下拆。它的主索引单元不是固定分块,而是树节点和页范围。
问题也在这里。PageIndex本地开源链路更接近PyPDF2这一类基础文本抽取。原生文本PDF问题不大,阅读顺序比较规整的文档也还可以。但到了扫描件、多栏论文、复杂表格、公式密集、跨栏版面这些场景,基础抽取的精度就不太稳了。
更强的OCR、复杂PDF处理和更快的结构生成,走的是PageIndex Cloud这条能力线,不在当前本地开源链路里。
对应到实际使用上,这套方案更适合两类输入:一类是本身就干净的原生文档,另一类是前面已经做过专业解析的文档。遇到扫描件、图表密集PDF、公式和表格很多的材料,前面最好接MinerU这类专业解析器,或者直接用官方云能力。前面的抽取一旦歪掉,后面的树和Wiki基本也很难稳得住。
文档进来以后,OpenKB做的不是"存起来等检索",而是继续编Wiki。大致分两步:
wiki/sources/所以新文档进来以后,不一定只是多一个摘要页,它还可能把已有概念页、实体页和索引页一起改掉。
如果把这一步拆开看,就是先拿新文档生成一份局部摘要,再和现有知识页做比对,然后决定哪些主题和对象值得沉淀,最后把页面之间的链接补回去。这一步更像在改Wiki,不像传统RAG那样只是多了一批可召回片段。
查询时通常按这个顺序走:
index.mdget_page_content,不是把整篇PDF一把拉进上下文在这里,原文更像是证据层,不是第一跳。
如果问题问的是抽象主题,系统往往会先停在概念页这一层;如果问的是具体对象,实体页往往会更早介入。只有页面层解释不了的细节,才需要回源文档取证。
前两条来自当前OpenKB开源仓库本身。第三条要单独说明一下:这不是说这条路线天然做不大,而是当前开源版还没把那一层放出来。PageIndex团队在2026年5月3日发布的《PageIndex File System》里,给出的企业级扩展路径,是在单文档树之上再加一层语料库树(corpus tree)/文件系统树(file-system tree),再用虚拟节点、按查询动态组织层级,以及动态展平(dynamic flattening)去处理百万级文档检索。但这套能力目前属于企业版/云端路线,不在现在这个OpenKB开源仓库里。
所以,更合适的看法是:OpenKB是一个很有意思的开源样板。它把一条不同于传统RAG的路线先跑通了——长PDF先做树索引,知识再编成Wiki,查询先读Wiki,再回原文取证。
如果目标是个人知识库、论文和报告的长期积累,这条路是成立的。如果目标是一套开箱即用的大型企业知识库,当前开源版还差复杂文档解析、语料库级检索、权限和治理这几层。
archiveofourown 实战指南:常见用法整理
币安Binance虚拟货币交易平台 币安官方APP安卓苹果下载入口
客单价碾压宝马奥迪!极氪5月交付新车34377辆:连续4个月双增长
折后价近千元 澳洲一店主将真老鼠缝到内裤上当时尚单品卖
电视剧《小欢喜》剧情介绍
如何在夸克浏览器中开启网页视频的倍速播放功能?
《梦幻西游》159五开五门怎么搭配-159五开五门常见搭配
美好的简约网名男生(精选100个)
植物娘大战僵尸电脑端与手机端存档转移的方法
欧易OKX官方网站直达入口 2026欧易官方App安卓版v7.1.0下载安装
腾讯元宝怎么用来分析股票基金的基本面信息?
盖乐世社区怎么删除帖子?盖乐世社区个人发布内容撤回步骤
wallpaper壁纸声音怎么开启
独家/李宰旭入伍前「登上孤岛服役」 惊见前辈裸体:忍不住笑了
国际贵金属走低,现货黄金价格跌0.49%
问题:CIA币好不?Cia Protocol币今日上线:价格预测、代币经济学和未来潜力
看韩漫的APP推荐 2026免费韩漫阅读软件大全
短剧《嫡女她是山大王》剧情介绍
OpenAI 调整手机端 ChatGPT,提示词可提前选 AI 响应档位
免费观看国外短视频的app有哪些 观看国外短视频的软件下载
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc