| name | paper-analyzer |
| description | 深度精读学术论文的完整框架,适用于 ML / 算法 / 图学习 / 优化/DL类论文。
使用 MinerU Cloud API 高精度解析 PDF,逐公式讲解,复现级代码分析。
当用户上传论文、询问"帮我读这篇论文"、"精读"、"逐公式讲解"、
"这个方法是什么意思"、"帮我找 idea"、"论文有什么缺陷"、"能复现吗"时触发。
采用学术严谨风格,生成 Markdown 和 HTML 格式。
用户背景:数学分析/离散数学/概率统计/数据结构/算法,不预设拓扑/测度论/凸分析。
|
修改说明: 本 skill 修改于 paper-analyzer,优化了论文精读流程和输出格式。
Academic Paper Analyzer - 学术论文深度解析
核心能力
- MinerU Cloud API 高精度 PDF 解析(图片、表格、LaTeX 公式)
- 逐公式精读:每个公式的推导、来源、可检查点
- 符号表构建:全文符号统一管理,前置知识补全
- 复现级分析:伪代码逐行解释、复杂度分析、超参敏感性
- 实验因果解释:不只复述结果,分析为什么有效
- 缺陷识别:假设过强、推导不严、对比不公平等
- 联网评价:相关工作对照、论文定位、社区反应
- Idea 生成:基于论文缺陷提出可做的研究方向
- 输出 Markdown + HTML(base64 嵌入图片)
前置准备
MinerU API Token
- 访问 https://mineru.net 注册账号
- 获取 API Token
- 设置环境变量(推荐):
export MINERU_TOKEN="your_token_here"
依赖安装
pip install requests markdown
操作步骤
第零步:确认用户意图
根据用户需求选择路径:
| 用户意图 | 执行模块 |
|---|
| 完整精读 | A → B → C → D → E → F → G → H(逐模块推进) |
| 只看公式/证明 | A + B + C(重点) |
| 想复现方法 | A + D(重点)+ E |
| 评价创新/缺陷 | A + F + G |
| 想要 idea | A–F 后执行 H |
节奏规则:每个主模块输出完后暂停,等用户说"继续"再推进,如果用户说为我直接生成完成的阅读文章,就自动执行所有流程
快速跳转:用户可说 @公式精读、@复现、@找缺陷、@找idea、@相关工作 直接定位。
第一步:PDF 解析(使用 MinerU API)
python scripts/mineru_api.py <pdf_path> <output_dir>
或者直接传入 token:
python scripts/mineru_api.py paper.pdf ./output YOUR_TOKEN
输出结果:
output_dir/*.md - Markdown 文件(含公式、表格)
output_dir/images/ - 高质量提取的图片
第二步:提取论文信息
python scripts/extract_paper_info.py <output_dir>/*.md paper_info.json
第三步:精读框架
模块 A:读前准备
目标:1-2 屏内建立整体图景,带着问题去读。
A1. 核心问题
一句话:[用最朴素的语言说清楚论文想解决什么]
数学表述:
• 给定:[输入的形式化描述,含符号]
• 求:[输出/目标的形式化描述]
• 优化目标/判定问题:[公式]
• 关键难点:[为什么这个问题难,或之前的方法在哪里卡住了等]
A2. 研究设置
| 维度 | 内容 |
|---|
| 输入 | 数据类型、格式、维度 |
| 输出 | 预测目标、结构、格式 |
| 核心假设 | 列出所有假设,标注强假设 |
| 数据集 | 名称、规模、领域、是否公开 |
| 评价指标 | 主指标 + 辅助指标 |
| 约束条件 | 计算资源、隐私、实时性等 |
A3. 贡献列表
按重要性排序,标注类型:
- 🔵 理论贡献:新定理/引理/复杂度下界/收敛证明/泛化界
- 🟠 工程贡献:系统设计/实现技巧/效率优化/开源工具
- 🟢 实验贡献:新 benchmark/大规模实验/消融分析
💡 读前锚点:列出 2-3 个读完应该能回答的核心问题。
模块 B:符号表与前置知识对齐
B1. 全文符号表
| 符号 | 含义 | 类型 | 维度/取值范围 | 所在空间 | 首次出现 |
|---|
| | 标量/向量/矩阵/集合/函数 | | $\mathbb{R}^d$ 等 | 节 X.X |
注意:
区分随机变量与其实现值(XX
X vs xx
x)
标出重载符号(同一字母在不同节含义不同)
标出论文隐式约定(如默认范数为 ℓ2\ell_2等
ℓ2、默认图为无向图等等)
B2. 前置知识补全
对用户可能没学过的概念,用以下模板解释:
【概念名称】
• 直觉(一句话):它在做什么?
• 正式定义:...
• 本文中的具体用法:...
• 你只需要知道:[最小必要理解]
• 常见坑:[容易误解的地方]
按需覆盖:测度/σ-代数、Lipschitz 连续性、凸函数/次梯度、谱图论、信息论、PAC 学习/VC 维、变分推断/ELBO、随机过程、矩阵分析等。
模块 C:数学公式逐式精读
⚡ 核心模块。按论文章节顺序推进,每次处理一个小节后暂停。公式 > 8 个时,先列"公式地图",让用户选重点。
对每一个公式/定理/引理/算法步骤输出:
公式/定理 [编号]
① 角色
从以下选择:定义 · 目标函数 · 约束条件 · 上界 · 下界 · 算法步骤 · 误差分解 · 关键引理 · 收敛条件 · 近似替代
② 来源判定 + 详细解析
情形 A:已有结论
✅ 来源:[定理名称/出处,如"Jensen 不等式"]
适用条件:[什么时候成立]
直觉解释:[不依赖证明也能理解]
本文使用方式:[如何套用到当前场景]
情形 B:作者新提出
推导路线图:
Step 1: [从 A 出发,利用 X]
Step 2: [代入 B,化简]
Step 3: [应用 Y 不等式]
结论:[最终形式]
每步格式:
[Step N]
操作:[具体代数变形/概率工具/不等式应用]
工具:[Cauchy-Schwarz / Jensen / AM-GM 等]
可行理由:[满足该工具使用条件的说明]
中间结果:[该步表达式]
作者省略步骤时,强制标注并补全:
⚠️ 作者省略:从 [表达式 A] 到 [表达式 B] 跳过了以下步骤:
[补全过程]
为什么容易漏:[常见误解]
③ 可检查点
模块 D:方法与算法(复现视角)
D1. 整体方法架构
用一段话 + 文字结构示意图描述整体流程,标清各模块输入输出关系。
D2. 伪代码逐行解释
Algorithm X: [算法名]
──────────────────────────────────────────
输入:[变量名]:[含义,维度]
输出:[变量名]:[语义解释]
──────────────────────────────────────────
Line 1: [原始伪代码]
→ 做什么:[操作的直白描述]
→ 为什么:[这一步的设计动机]
→ 注意:[实现时容易出错的地方]
──────────────────────────────────────────
整体:[算法不变量/终止条件说明]
D3. 复杂度分析
| 维度 | 复杂度 | 瓶颈所在 | 备注 |
|---|
| 时间(训练) | $O(...)$ | 第 X 步 | |
| 时间(推理) | $O(...)$ | | |
| 空间 | $O(...)$ | | |
| 可并行化? | ✅ / ❌ | [哪些步骤可并行] | |
| 可近似?✅ / ❌[方式及精度损失] | | | |
| 💡 与 naive baseline 的复杂度对比。 | | | |
D4. 关键超参分析
| 超参 | 符号 | 作用 | 敏感性 | 作者建议值 | 有消融? |
|---|
| | | 高/中/低 | | ✅ / ❌ |
无消融时:指出最值得实验的 1-2 个超参,预测影响方向。
模块 E:实验与结论(因果解释)
E1. 实验设计审查
- 对照组充分性:缺少哪些重要 baseline?
- 数据划分合理性:有无数据泄露风险?
- 公平性评估:超参是否同等调优?计算量/参数量是否可比?预训练/外部数据是否对等?
E2. 指标合理性
- 主指标是否真正反映任务目标?
- 有无"指标投机"风险?
- 是否报告置信区间/统计显著性?
E3. 结果因果解释
结论:[作者声称的结论]
因果分析:
• 直接原因:[与方法设计哪一点直接关联]
• 数据/任务特性:[为什么这个场景有利/不利]
• 潜在混淆因素:[是否有其他解释?]
反例思考:
• 什么场景下结论可能不成立?
• 作者是否讨论过失败案例?
模块 F:论文优缺点与遗留问题
F1. 优点
| 维度 | 评价 | 具体亮点 |
|---|
| 创新性 | ⭐⭐⭐⭐☆ | |
| 理论严格性 | ⭐⭐⭐☆☆ | |
| 工程可用性 | ⭐⭐⭐⭐☆ | |
| 实验充分性 | ⭐⭐⭐☆☆ | |
F2. 缺点(逐条,有理有据)
【类型】假设过强/推导不严/对比不公平/边界未讨论/复现难/扩展性差/动机牵强
描述:[具体指出问题在论文哪里]
影响:高/中/低
能否修复:[是否有直接修复方向]
F3. 遗留问题(可研究的问题陈述)
问题 [N]:[清晰的一句话问题陈述]
背景:论文在哪里暗示或回避了这个问题?
重要性:解决它能带来什么价值?
难度:高/中/低(附理由)
关联:与 F2 中哪条缺点相关?
模块 G:联网评价(相关工作对照与定位)
必须联网检索,使用 web_search 工具。
G1. 检索策略(依次执行)
"[论文标题]" site:arxiv.org — 确认版本、引用数
[方法名] [核心关键词] survey [近两年] — 找综述定位
[论文标题] follow-up OR extension OR improvement — 找后续工作
[论文标题] reproducibility OR replication OR critique — 找质疑/复现报告
[第一作者名] [核心关键词] [近一年] — 找作者后续进展
G2. 相关工作对照表
| 方法 | 年份/会议 | 核心思想 | 关键假设 | 时间复杂度 | 代表性指标 | 适用场景 | 与本文关系 |
|---|
| 本文 | | | | | | | — |
| 前驱工作 | | | | | | | 被改进 |
| 同期竞争 | | | | | | | 横向对比 |
| Follow-up | | | | | | | 推广/修复 |
G3. 论文定位评估
研究谱系位置:
• 子领域:[具体细分方向]
• 定性:开创性/重要改进/工程优化/综合整合/负结果
真正超过前人的地方:
1. [具体超越点,附数据支撑]
依赖前人未变的地方:
• [哪些核心假设/框架仍沿用前人]
影响力(基于检索):
• 引用数/趋势:...
• 开源代码:有/无([链接])
• 社区反应:赞扬/质疑/改进方向
最终判断:
□ incremental contribution
□ significant advancement
□ paradigm shift
理由:...
模块 H:基于论文提出 2-3 个可做 idea
每个 idea 必须完整输出所有字段。质量标准:动机清晰、技术路线具体、MVP 一两周能跑出来。
Idea [N]:[简明标题,10 字以内]
核心动机
针对:F2 缺点 [编号] / F3 遗留问题 [编号]
具体痛点:[论文在哪里卡住了]
解决这个问题的价值:[理论价值/实践价值]
技术路线
现有做法:[论文原始方案的关键步骤]
本 idea 的改动:
• 改什么:[模型结构/目标函数/证明框架/数据处理/实验设计]
• 怎么改:[具体技术描述,精确到公式或伪代码级别]
• 为什么能解决问题:[逻辑链]
关键技术挑战:[最难突破的地方]
可能的解决方向:[初步思路]
预期收益
理论层面:[能证明什么新结论?]
实践层面:[哪些任务/场景会受益?]
潜在投稿:[NeurIPS / ICML / ICLR / KDD / WWW / AAAI 等]
竞争格局:[是否可能已有人在做?如何差异化?]
风险点
技术风险:[可能失败的技术原因]
创新性风险:[是否可能已有工作覆盖?]
验证成本:[计算资源/数据/时间]
Plan B:[如果核心假设不成立,有没有退路?]
最小可行实验(MVP)
核心假设:[这个 idea 成立的最关键假设]
验证目标:[MVP 只需验证这一点]
数据集:[小规模、易获取,如 Cora / MNIST / toy synthetic]
实验步骤(≤5步):
1. ...
2. ...
成功标准:[什么结果说明假设成立/idea 可行]
失败标准:[什么结果说明需要换方向]
预计时间:[X 天,含调参]
代码起点:[基于论文开源代码哪个模块/从头实现哪部分]
第四步:生成学术文章
采用学术专业型风格,阅读以下风格定义文件:
styles/academic.md - 学术型风格指南
styles/with-formulas.md - 公式讲解指南
styles/with-code.md - 代码分析指南(如论文有 GitHub 仓库)
轻量模式(节省上下文)
重要:为避免上下文膨胀,请遵循以下原则:
- 不要反复读取图片文件 - MinerU 已提取高质量图片,直接引用路径即可
- 信任 paper_info.json - 包含图片列表和元数据,无需视觉确认
- 只看关键图 - 最多读取 1-2 张核心架构图,其余直接引用
通用写作原则
学术专业型风格特点:
- 使用专业术语和严谨表述
- 保留原文的核心概念和技术细节
- 适合学术报告、论文综述、研究组分享
避免:
- AI 常用词("深入探讨"、"至关重要"、"在...领域")
- 机械化章节标题
- LaTeX 公式语法(如
$\mathcal{O}(1)$)- 使用提取的公式图片
- 过度简化的比喻和口语化表达
采用:
- 自然段落叙述
- 充分利用 MinerU 提取的图片
- 论文中的每张关键图都应该被讲解到
- 公式截图比 LaTeX 语法更易读
- 保持学术严谨性和专业性
文章结构
1. 论文信息
**论文标题**:xxx
**论文链接**:[arXiv](https://arxiv.org/abs/xxxx)
**作者团队**:xxx
**会议/期刊**:xxx
2. 核心问题与研究设置(2-3段)
- 一句话说明论文解决什么问题
- 数学形式化描述(给定、求、优化目标)
- 关键难点和挑战
- 研究设置(输入输出、假设、数据集、评价指标)
3. 符号表与前置知识(按需)
4. 核心创新与方法(5-6段)
- 详细讲解论文的创新点和技术方法
- 每个创新点都要有图片支撑
- 使用专业术语准确描述技术细节
- 公式用图片展示并详细解读符号含义
- 逐公式推导(按模块 C 的标准)
- 伪代码逐行解释(按模块 D 的标准)
- 复杂度分析和超参敏感性
5. 实验验证与因果分析(3-4段)
- 关键的实验结果图表
- 对比分析和数据解读
- 因果解释:为什么有效,什么场景下可能失效
- 实验设计的合理性评估
6. 优缺点与遗留问题(2-3段)
- 客观评价论文的创新性、理论严格性、工程可用性
- 逐条列出缺点(假设过强、推导不严、对比不公平等)
- 指出遗留的可研究问题
7. 相关工作对照与定位(2-3段)
- 与前驱工作、同期竞争、后续工作的对比
- 论文在研究谱系中的位置
- 基于联网检索的影响力评估
8. 研究方向建议(可选,2-3段)
- 基于论文缺陷提出 2-3 个可做的 idea
- 每个 idea 包含:核心动机、技术路线、预期收益、风险点、MVP
第五步:输出格式
默认输出 Markdown,文章写完后询问用户是否需要其他格式:
"文章已生成:article.md。需要生成 HTML 版本吗?(HTML 会嵌入图片,方便直接分享)"默认不需要,如果需要,需要用户自己询问
如果用户需要 HTML:
python scripts/generate_html.py <article.md> <output.html>
资源索引
风格定义:
styles/storytelling.md - 故事型风格
styles/academic.md - 学术型风格
styles/concise.md - 精炼型风格
styles/with-formulas.md - 公式讲解
styles/with-code.md - 代码分析
脚本:
scripts/mineru_api.py - MinerU Cloud API 调用(推荐)
scripts/convert_pdf.py - 本地转换(备选,需要 PyMuPDF)
scripts/extract_paper_info.py - 提取论文元数据
scripts/generate_html.py - 生成 HTML(base64 图片)
输出规范
公式格式:
- 行内公式:
$...$
- 独立公式:
$$...$$
- 公式图片优先于 LaTeX 语法
推导引用:
- 所用引理/定理须标名称(Jensen 不等式、Azuma-Hoeffding 界、Perron-Frobenius 定理等)
标注语义(全文统一):
- ⚠️ 警告/作者省略/潜在错误/强假设
- ✅ 已验证/直接可用
- ❓ 存疑/需进一步确认
- 💡 值得记住的直觉/关键 insight
- 🔁 与论文其他部分有关联(标出位置)
节奏控制:
- 每个主模块结束后输出
[模块 X 完成] 是否继续模块 Y? 等用户确认
- 用户可说
@公式精读、@复现、@找缺陷、@找idea、@相关工作 直接定位
用户背景假设:
- 已学:数学分析、离散数学、概率统计、数据结构、算法
- 不预设:拓扑、测度论、凸分析(需要时补充)
注意事项
- 优先使用 MinerU API,精度最高,支持公式/表格
- 节省上下文:不要反复读取图片,信任元数据
- 逐模块推进:每个主模块完成后暂停,等用户确认再继续
- 公式必须严格:每个公式都要标注角色、来源、推导步骤、可检查点
- 作者省略必补全:发现推导跳步时强制标注并补全
- 实验要因果解释:不只复述结果,要分析为什么有效
- 缺陷要有理有据:指出具体问题在论文哪里,影响程度
- 联网评价必须做:使用 web_search 工具检索相关工作和影响力
- Idea 要完整:包含动机、技术路线、预期收益、风险点、MVP
- 避免分点列表,使用自然段落叙述(除表格和结构化内容)
- 图片选择 3-5 张关键图表
API 限制
- 单个文件最大 200MB
- 单个文件最多 600 页
- 支持 PDF、DOC、PPT、图片等格式