不用向量数据库,我做了一个本地优先的 PDF 论文阅读工具: Lumenfolio

查看 15|回复 0
作者:Onlybaidian   
最近在做一个本地优先的 PDF 论文阅读工具,叫 Lumenfolio 。
GitHub: https://github.com/tanghui315/lumenfolio
技术原理介绍文章: https://zhuanlan.zhihu.com/p/2044458693488637381
起因其实很简单:现在论文越来越多,找论文不难,难的是打开一篇论文之后,怎么快速、可靠地理解它。
很多 PDF Chat 工具现在都能做总结,但我自己用下来最不满意的是:回答经常很流畅,但证据不够清楚。有时候模型看起来像是读懂了,实际上可能只是根据上下文补了一段“很像论文内容”的话。
所以我想做的不是单纯的“和 PDF 聊天”,而是一个更偏证据链的论文阅读工具:
  • 本地优先,PDF 、索引、聊天历史、笔记都在本机
  • 回答尽量能回到原文 page / quote / bbox
  • 不默认使用向量数据库
  • 用 PDF 结构树 + SQLite FTS + page/block evidence 做检索
  • 支持 Agentic RAG:不是一次检索直接回答,而是分步找证据、判断证据是否足够,再生成回答
  • 支持 PDF 翻译,接了 PDFMathTranslate sidecar ,目标是保留双栏、图表、公式等版面结构
  • 支持锚定笔记,笔记可以回跳到 PDF 原文位置

    为什么没有一开始就用向量检索?
    不是说向量检索没用。跨文档搜索、大规模知识库里它很有价值。但在“单篇论文精读”这个场景里,我更关心的是可解释性和证据路径。
    向量检索的问题是,它召回的是语义相似 chunk ,但语义相似不等于证据充分。论文里的关键信息经常分散在 abstract 、method 、实验表格、figure caption 里。单靠 chunk 相似度,很容易召回“相关但不够”的内容。
    所以我现在的思路是先把 PDF 解析成本地可审计的证据层:
    PDF
    -> pages / lines / blocks / chunks
    -> structure tree
    -> SQLite FTS
    -> bbox citations
    -> tables / visual evidence
    -> agentic retrieval
    -> answer + citations + trace
    目前基础索引在一些常见论文上可以做到几秒级,目标是打开 PDF 后尽快进入可读、可问、可跳转的状态,而不是先等一套很重的索引流程。
    现在项目还比较早期,肯定有不少粗糙的地方,比如复杂 PDF 结构识别、多文档对比、表格理解都还需要继续迭代。但主线已经跑通了:本地 PDF 阅读、索引、无向量 Agentic RAG 、证据链、翻译和笔记。
    长远一点,我希望它能变成一个面向论文阅读和分析的 Cursor-like workspace:不是泛泛地总结 PDF ,而是围绕论文结构、证据、图表、实验和笔记来帮助理解论文。
    项目地址:
    https://github.com/tanghui315/lumenfolio
    技术原理介绍文章:
    https://zhuanlan.zhihu.com/p/2044458693488637381
    如果你也经常读论文,或者对无向量 RAG 、PDF 结构解析、本地优先桌面应用感兴趣,欢迎看看,也欢迎提 issue / 拍砖。
  • 您需要登录后才可以回帖 登录 | 立即注册

    返回顶部