01项目概览
AI 论文管线
把“今天看什么、怎么看、看完留什么”接成一条研究工作流。
我正在做一个本地研究助手:按关注方向收集论文与长文,读取全文后筛选和解读,再把原文、追问、评价与知识整理放在同一个工作区。系统提出建议,我决定读什么,以及哪些内容值得留下。
查看项目代码 ↗02项目目标
把阅读接到研究
阅读研究材料时,我需要判断它与当前问题有什么关系、结论依据是什么,以及读完之后怎么用。因此,产品从个人关注点出发,把筛选、阅读和后续整理连接起来。
- 选得有依据分别展示关注相关度、内容质量和判断置信度,也保留落选内容的去向。
- 能追到原文把解读与来源放在同一个阅读空间,遇到疑问可以继续核对和追问。
- 读完能整理读完后决定略过、了解、深入或更新知识,把有价值的内容整理到长期栏目。
03产品功能
使用过程
设置关注
在 Focus 关注清单中写下研究主题、优先级和排除项,也可以为临时关注设置截止日期。例如把“Agent 长任务可靠性”设为关注方向,后续筛选就会结合这个问题判断内容是否相关。
整份日报和长期主题栏目可以分别设置关注清单。
筛选内容
论文来自 Hugging Face Daily Papers 和 arXiv;文章来自研究博客、RSS 与 Anthropic Research。系统先归并重复内容,再建立候选池,获取全文并略读,最后根据相关度、质量和置信度选择正式解读。
日报显示各阶段的处理数量。未入选内容保留在候选账本中,列出来源、摘要、评分和去向,方便检查遗漏。
2026 年 8 月 27 日:收集 21 篇,12 篇进入候选池并完成略读,生成 3 张卡片,其中 1 篇精读。各阶段的处理和消耗记录保存在日报中。
阅读与追问
解读先回答“核心命题是什么”和“为什么值得看”,再说明作者怎样论证、用了哪些证据、结论在哪里成立。精读会继续展开论证步骤、基线比较和可以进一步核验的问题。
已有的多代理研究文章被拆为协调收益、协作失败、信任和目标冲突几组问题,可以沿其中一组继续追问。
三栏页面把解读、原始资料和对话放在一起。论文可以在中间核对 PDF,网页文章保留原文入口。读者可以选中一段解读加入上下文,再询问术语、机制或证据;不同问题分支按对话树保存,便于继续追下去。
我问:“请用两段简短文字,说明这篇文章中多代理协作失败的两个机制,并分别指出文章中的对应例子。”系统返回了“从众导致系统性脆弱”和“信任失准”两组解释,并列出重复创建同名分支、过量轮询,以及侦察者真假信息判断等原文例子。问题和回答随后保存在对话树中。
成品评价
每个解读版本都能按忠实度、讲解清晰度和可用性评分,再补充评语。选稿分数回答“值不值得读”,这里的分数回答“解读写得怎样”。
本次体验保存了一条 4 / 5 的评价:解读结构便于核对,但正文较长、部分表述重复,建议压缩关键结论。记录注明“本次作品集体验”,可以在历史评价中回看。
整理知识
文章下方提供略过、追问、了解、了解并更新、深入并更新五种动作,也可以填写批阅意见、分类和标签,放入主题栏目。AI 的建议与我的决定分别保存,之后可以回看两者是否一致。
选择更新知识后,系统先生成修改提案,列出准备新增或改动的文字。使用者审阅后,通过命令确认写入知识库;网页只预览提案。日报、卡片和栏目另以 Markdown 保存到 Obsidian,方便继续阅读和链接。
模型实验
在工作区组合资料、模型与提示词,建立一轮实验。结果先显示编号,评价后再揭示配置,供使用者选择版本。当前可回看导入的三轮 CritICL 历史实验。
第三轮的 R3-003 保留了完整解读:从“只有一次作答预算”出发,讲解如何把小模型的失败模式整理成给大模型的提示。可以打开正文比较不同配置的讲解效果。
04实现逻辑
技术实现
AI 论文管线 采用 Python 编排任务,FastAPI 提供本地网页接口,SQLite 保存运行和内容版本,Markdown 承接日常阅读与知识整理。模型通过 API 调用,网页与资料库在本机运行。
技术分工
| 部分 | 实现方式 | 承担的工作 |
|---|---|---|
| 采集与正文 | Python · httpx · pypdf | 读取论文源和文章列表,归并重复内容,获取正文并提取可供分析的文本。 |
| AI 分析 | 可切换的模型 API Pydantic 结构校验 | 提取主张与证据、评分、生成解读和回答追问,再检查结果是否符合约定栏目。 |
| 本地界面 | FastAPI · JavaScript | 显示日报、候选、三栏阅读、评价和模型实验。 |
| 持久化 | SQLite · Markdown | 数据库保存任务、成品和操作记录,Markdown 提供可阅读、可编辑的知识材料。 |
| 运行维护 | CLI · macOS 定时任务 | 启动每日处理、补跑指定日期、检查配置与故障,并管理知识库提案。 |
代码结构
核心代码位于 src/paper_digest/,以下路径均相对这个目录。采集与分析各自处理内容,网页读取统一保存的结果。
config/输入配置- 管理来源、筛选配额、路径与初始模型设置,读取时统一校验。
pipelines/日报流程- 分别编排论文和文章的处理步骤,两类内容各有配额和输出目录。
components/可替换能力- 提供筛选策略和分析能力,让来源变化不必连带重写整条流程。
llm/模型接口- 统一模型调用与结果格式,对接 OpenAI 兼容协议和 Anthropic 协议。
webui/阅读与批阅- 通过服务层读取资料、任务和成品,提供页面与操作入口。
orchestration/运行管理- 记录每次运行、处理失败、安排重试和定时执行。
persistence/数据保存- 保存来源、任务、成品、配置版本和人工决定,管理数据库结构。
筛选与生成
实验区的可选模型配置包括 claude-opus-4.8、deepseek-v4-pro 和 gpt-5.6-sol,可组合不同提示词比较结果。正式任务使用数据库中已发布的模型与提示词版本。
选稿先对候选全文做低成本略读,再分别评估关注相关度、内容质量和判断置信度。终选按 50%、30%、20% 加权排序,进入正式名单后才分配摘要、阅读或精读任务。把较贵的深入处理留给少量内容,就能控制每日报告的规模与消耗。
结构化分析要求模型按固定栏目返回,程序再检查字段和类型;长篇解读则保存完整正文与原始响应。每个任务绑定当时的原文和配置,重试时继续使用同一份输入,便于比较结果和排查问题。
数据与版本
SQLite 是系统的主记录,保存内容来源、任务状态、成品版本、模型配置和人工决定。网页从这些记录读取数据;Obsidian 中的日报和卡片由它们生成,因此网页重启后仍能找到原来的工作。
关注清单则直接以 Markdown 文件为准。网页保存时携带读取到的版本标识,如果文件已被另一处修改,就提示冲突,避免覆盖新内容。知识库更新提案也记录原文件版本,确认写入前再次核对。
同一篇论文来自多个渠道时,用论文编号和版本识别;文章按规范化网址识别,正文变化再产生新版本。来源、内容和版本分别保留,让一份解读能追到当时使用的资料。
本地运行
项目使用 Python 3.12 及以上版本,先用 uv sync 安装依赖,再用 uv run paper-digest web --open 启动本地网页。模型通过 API 调用,数据库、关注清单和密钥留在使用者自己的环境中。
日报通过 paper-digest run 手动运行,也可安装 macOS 定时任务。代码更新与阅读资料分开保存,安装新版本后继续使用本地数据库和知识目录。
运行过程按采集、正文获取、略读、精读和追问等阶段记录状态与消耗。某一天失败后可以补跑;已有可用日报保留,失败记录单独显示。模型和提示词实验也与正式配置分开,选择发布结果之后才用于后续正式任务。
05我的工作
产品设计与实现
这是我的个人项目。我负责产品定义、信息架构、评估规则和实现,围绕自己跟进 AI 研究与积累知识的需要持续调整。
- 定义工作流把搜索、筛选、解读、追问和知识整理放进同一条路径,明确每一步留下什么结果。
- 设计判断规则把内容质量、个人相关度和置信度拆开,区分模型建议、用户决定与输出质量评价。
- 组织信息设计每日候选账本、三栏阅读、主题栏目和知识提案,让原文、生成内容和后续行动能互相连接。
- 推进工程实现完成来源接入、本地界面、模型调用、版本记录和任务运行,并逐步统一生成与实验使用的底层流程。
筛选建议、我的批阅决定和成品质量评价分别保存。生成任务同时固定原文与配置版本,这样回看一篇解读时,能查清它依据什么、由哪个配置生成,以及后来做过什么调整。
06完成情况
当前版本
项目在本地运行,代码已公开。已有采集筛选、文章阅读、追问、成品评价、归类和知识提案;历史论文列表与新工作区的衔接仍在完善。
已有成果
- 论文与文章的独立日报及候选账本。
- 可阅读的历史文章精读卡与来源入口。
- 批阅、分类、主题栏目和知识提案。
- 模型与提示词组合、历史实验成品与评价。
- 本次体验完成一轮追问,并保存一条输出评价。
下一步
- 完成历史论文成品与新列表的衔接。
- 继续验证三栏阅读、生成和问答的完整使用流程。
- 以真实阅读反馈调整提示词和界面。
- 推进命题驱动的调研流程。