Paper Interpretation Skill
当用户提供一篇或多篇论文 PDF 时,按以下流程产出两类中文成果:
- 中文全文翻译(
minerU/<topic>/<PaperName>/<PaperName>_zh.md)——逐段翻译的论文全文,替换 MinerU 原始英文 markdown; - 结构化中文解读(
wiki/<topic>/<PaperName>_wiki.md)——极度详细的解读,让读者不需要读原论文也能完整理解核心内容。
整个流程分四步:先从 URL 下载 PDF(如用户提供了链接),再用 MinerU 将 PDF 转为 markdown,然后把 markdown 全文翻译成中文并清理中间产物,最后基于中文全文生成结构化总结。
目录约定
raw_paper/<topic>/<PaperName>.pdf # 原始 PDF(输入)
minerU/<topic>/<PaperName>/
├── <PaperName>_zh.md # 中文全文翻译(唯一保留的 markdown)
└── images/ # 提取的图片资产
└── <image_hash>.jpg
wiki/<topic>/<PaperName>_wiki.md # 结构化中文解读
关键原则:每篇论文在 minerU/ 下最终只保留一个中文全文翻译 md 和一个 images/ 目录,其余中间产物(json、pdf、英文 md)全部删除。
处理流程
第零步:URL 下载 PDF
如果用户提供的是 URL(arXiv 链接、arXiv PDF 链接、或任意直接 PDF 链接),先下载 PDF 到本地。
- 解析 URL 类型:
| URL 形式 | 示例 | 处理方式 |
|---|---|---|
| arXiv abs 页 | https://arxiv.org/abs/2503.20314 |
提取 ID → 拼接 PDF URL |
| arXiv PDF 页 | https://arxiv.org/pdf/2503.20314 |
直接下载 |
| arXiv PDF(带版本) | https://arxiv.org/pdf/2503.20314v1 |
直接下载 |
| 直接 PDF 链接 | https://example.com/paper.pdf |
直接下载 |
- 下载 PDF:
```bash
# 支持 http_proxy / https_proxy 环境变量自动代理
# 如果用户指定了目标文件名,使用该文件名;否则从 URL 或 arXiv ID 推断
python3 << 'PYEOF'
import os
import sys
import urllib.request
url = "$PDF_URL"
output_path = "$OUTPUT_PATH" # e.g. raw_paper/generate_model/wan2.2.pdf
os.makedirs(os.path.dirname(output_path), exist_ok=True)
# 支持 http_proxy / https_proxy 环境变量
proxy_handler = urllib.request.ProxyHandler()
opener = urllib.request.build_opener(proxy_handler)
print(f"Downloading {url} -> {output_path}")
req = urllib.request.Request(url, headers={"User-Agent": "Mozilla/5.0"})
with opener.open(req) as resp:
with open(output_path, "wb") as f:
while True:
chunk = resp.read(8192)
if not chunk:
break
f.write(chunk)
print(f"Downloaded {os.path.getsize(output_path)} bytes")
PYEOF
```
- 代理配置:
- 默认自动读取
http_proxy/https_proxy环境变量 - 如果用户没有设置环境变量,默认使用本机代理
http://127.0.0.1:7897:
bash https_proxy=http://127.0.0.1:7897 python3 ... - 也支持
ALL_PROXY环境变量
-
下载完成后:确认文件大小 > 0,然后继续第一步(MinerU 解析)
-
如果用户直接提供本地 PDF 路径:跳过此步骤,直接进入第一步
第一步:MinerU PDF → Markdown
-
确认 PDF 路径:用户提供的 PDF 应在
raw_paper/<topic>/目录下(如raw_paper/world_model/PaperName_CVPR2025.pdf) -
运行 MinerU:
bash sudo env MINERU_MODEL_SOURCE=modelscope HF_ENDPOINT=https://hf-mirror.com \ mineru -p raw_paper/<topic>/<pdf_file> -o minerU/<topic>/
- 如果用户提供的 PDF 不在raw_paper/下,输出目录根据 PDF 位置推断
- 如果同一目录下有多个 PDF,可以直接传目录:
bash sudo env MINERU_MODEL_SOURCE=modelscope HF_ENDPOINT=https://hf-mirror.com \ mineru -p raw_paper/<topic>/ -o minerU/<topic>/ -
确认 MinerU 输出:MinerU 会在
minerU/<topic>/<PaperName>/hybrid_auto/生成一批文件,其中后续只需要用到:
-<PaperName>.md— 论文正文 markdown(英文,含图片引用)
-images/— 提取的图片目录
- 其余文件(*_middle.json、*_model.json、*_content_list*.json、*_layout.pdf、*_origin.pdf)均为中间产物,翻译完成后一并删除 -
跳过已有输出:如果
minerU/<topic>/<PaperName>/已存在且已包含<PaperName>_zh.md与images/,直接进入第四步生成总结
第二步:全文翻译 → 中文全文翻译 markdown
这一步是本 skill 的核心:把 MinerU 提取的英文 markdown 逐段翻译成中文,生成 <PaperName>_zh.md。
-
读取英文 markdown:
minerU/<topic>/<PaperName>/hybrid_auto/<PaperName>.md -
翻译规则(必须严格遵守):
- 保留 markdown 结构:标题层级(
#、##等)、列表、表格、代码块、引用块的原始格式不变,只翻译文字内容。 - 保留图片引用:
原样保留,不要改动路径或文件名。图片下方的 Fig. N 说明文字要翻译成中文。 - 保留 LaTeX 公式:
$...$、$$...$$内的数学公式、符号、下标上标原样保留,不要翻译或改写公式本身。若公式旁有中文说明文字,翻译说明文字。 - 保留引用标记:
[1]、[2]这类文献引用编号原样保留。 - 术语处理:专业术语(如 mAP、NDS、BEV、LiDAR、Transformer、attention 等)、方法/模型名、数据集名保留英文原文;其余文字翻译为中文。中英混排时在英文术语两侧保留空格。
- 忠实原文:全文翻译不做摘要、不删节、不增补作者未写的内容。表格内容、实验数字、单位原样准确翻译。
-
写入文件:翻译结果写到
minerU/<topic>/<PaperName>/<PaperName>_zh.md -
篇幅控制:全文翻译逐段进行。如果论文极长(如超过约 15000 词),可以分段读取、分段翻译,最后合并为一个文件,保证不丢失任何段落。
第三步:清理中间产物,扁平化目录
翻译完成后,把 minerU/<topic>/<PaperName>/ 收敛为「一个中文 md + 一个 images 目录」,删除 hybrid_auto/ 及其余中间文件。
cd minerU/<topic>/<PaperName>/
# 中文全文翻译已在 <PaperName>_zh.md(若写在 hybrid_auto 内,先移到论文根目录)
[ -f hybrid_auto/<PaperName>_zh.md ] && mv hybrid_auto/<PaperName>_zh.md ./<PaperName>_zh.md
# 图片目录上移一层
mv hybrid_auto/images ./images
# 删除 hybrid_auto 及所有中间产物(英文 md、json、pdf)
rm -rf hybrid_auto
最终结构核对:
minerU/<topic>/<PaperName>/
├── <PaperName>_zh.md # 中文全文翻译
└── images/
└── <hash>.jpg
- 确认
<PaperName>_zh.md存在且非空,其中的与images/目录里的文件名一一对应。 - 确认
hybrid_auto/、*_middle.json、*_model.json、*_content_list*.json、*_layout.pdf、*_origin.pdf及英文<PaperName>.md均已删除。
第四步:读取中文全文 → 生成中文总结
-
读取中文全文翻译:
minerU/<topic>/<PaperName>/<PaperName>_zh.md -
列出可用图片:
minerU/<topic>/<PaperName>/images/,从中选择与架构图、实验结果图等相关的图片 -
提取元信息:
- 论文标题:从 markdown 第一行#标题提取
- 作者:从标题下方的文字提取
- 机构:从论文开头部分提取(注意多机构情况,尽量保留中英文对照)
- 会议/年份:从论文名中提取(如LiDARCrafter_AAAI2026→ AAAI 2026)
- arXiv 链接:从论文正文中搜索 arxiv 相关链接或 ID
- GitHub 链接:从论文正文中搜索 GitHub repo 链接(如有)
- Project Page:从论文正文中搜索 project page 链接(如有)
- 论文类型:从页数和会议信息判断(长文/短文) -
撰写总结:严格按照下方"输出结构"模板撰写
-
写入文件:
- 总结文件写到wiki/<topic>/<PaperName>_wiki.md
- 图片引用使用从 workspace 根目录出发的绝对路径:/minerU/<topic>/<PaperName>/images/<filename> -
批量处理:
- 如果用户给了一个目录下多篇论文,逐篇处理
- 可以使用 Agent 工具并行处理多篇论文
- 最后生成一个汇总列出所有生成的解读文件路径
输出结构
为每篇论文生成一个 markdown 文件,命名规则:<论文名>_wiki.md。文件结构必须严格按照以下模板:
## <论文标题>
- arXiv: [<arxiv id>](<arxiv url>)
- GitHub: [<repo>](<github url>)(如有)
- Project Page: [<url>](<project page url>)(如有)
- 作者: <作者列表>
- 机构: <机构名称>(如有多机构用分号分隔,尽量保留中英文对照)
- 论文类型: <期刊/会议长文/短文>, <页数> pages(如能获取)
- 关键词: <3-5个关键词>
---
### 1. 文章总结
<写 3-5 段,不要简单翻译摘要,而是深度提炼。需要覆盖:>
- 论文解决的是什么问题,为什么这个问题重要(从应用和学术两个角度说)
- 现有方法在这个问题上的瓶颈是什么
- 本文提出的核心方法是什么(用 2-3 句话讲清楚核心 idea)
- 方法的关键创新点有哪些(列出 2-4 个)
- 实验效果如何(给出最关键的数字)
- 这个工作的意义和影响是什么
### 2. Motivation
<这部分要写得非常透彻,让读者理解"作者为什么要做这个工作"和"为什么不早有人做"。需要包含:>
#### 2.1 问题背景
<描述该领域的宏观背景:>
- 这个任务(如 3D 检测、语义分割等)在什么应用场景下重要
- 目前工业界/学术界的通用做法是什么
- 当前主流范式的核心思路是什么
#### 2.2 现有方法的局限性
<这是 Motivation 最核心的部分,要逐条深入分析:>
- 列出 3-5 个现有方法的具体不足,每条都要说清楚:
- 什么问题(what)
- 为什么是问题(why it matters)
- 现有方法为什么没有解决(why not solved yet)
- 最好能引述论文 Related Work 中作者对每个相关工作的批评
- 按问题的维度分类(如精度问题、效率问题、泛化问题、标定问题等)
#### 2.3 本文的出发点和目标
<明确论文的核心假设和目标:>
- 作者的核心假设或观察是什么(insight)
- 基于这个 insight,作者设定了什么目标
- 这个目标的成功标准是什么(做到什么程度算成功)
### 3. 方法详解
<这是全文最重要的部分,需要极度详细。读者看完应该能复现论文的核心方法。>
**重要:必须引用 MinerU 提取的论文图片(架构图、模块图等),嵌入到对应小节中。**
#### 3.1 整体框架
<必须包含三部分:>
**文字描述:**
- 从输入到输出的完整数据流
- 系统分为几个大模块,每个模块的职责
- 各模块之间的数据依赖关系
- 训练和推理的路径差异(如果有)
**论文原始架构图(MinerU 提取):**
- 引用 MinerU 输出中的图片:``
- 从 `images/` 目录中选择与整体架构对应的图片
- 图下方用简短的中文标注说明该图展示了什么
**Mermaid 架构图(辅助理解):**
- 用 mermaid flowchart 画出简化的数据流图,作为原始论文配图的补充说明
- 图中标注所有关键特征的维度和名称
#### 3.2 关键模块详解
<对每个关键模块单独用一个小节展开。每个模块的描述必须包含:>
**(1) 模块名称和定位**
- 这个模块在整个 pipeline 中的位置和作用
- 它解决的核心子问题是什么
**(2) 关键模块配图(MinerU 提取)**
- 引用 MinerU 输出中该模块对应的图片
- 在 markdown 中嵌入:``
**(3) 输入和输出**
- 输入:张量的形状、来源、含义
- 输出:张量的形状、去向、含义
- 如果有多路输入/输出,全部列清楚
**(4) 详细计算流程**
- 按 step-by-step 的方式描述计算过程
- 每一步用了什么操作(卷积、attention、MLP、pooling、concat 等)
- 关键的超参数选择(kernel size, channel 数, head 数, layer 数等)
- 为什么这样设计(作者的 design choice 理由)
**(5) 公式**
- 如果论文给出了核心公式,列出并逐一解释每个符号的含义
- 公式的物理/intuitive 含义是什么
**(6) 与其他方法的关系**
- 这个模块和哪些已有工作有关(如 "类似 LSS 的深度估计")
- 如果是改进自某已有模块,改动点在哪里,为什么这样改
#### 3.3 损失函数
<如果有多个损失函数,逐个说明:>
- 每个损失函数的数学形式(公式)
- 每个符号的含义
- 损失函数作用在哪个模块的输出上
- 为什么选择这种损失(如为什么用 Focal Loss 而不是 CE)
- 各项损失的权重及调权策略(如 uncertainty weighting, 固定权重等)
#### 3.4 训练策略
<详细列出所有训练细节:>
- 优化器及参数(learning rate, weight decay, momentum, betas 等)
- 学习率调度策略(cosine, step, warmup 等)
- batch size, epoch 数
- 数据增强策略(具体列出每种增强及参数)
- 任何特殊的训练技巧(如 GT-Paste, fade strategy, EMA, mixup 等)
- 多阶段训练(如果有,每阶段怎么训练)
- 推理时的策略(TTA, 模型集成, NMS 参数等)
### 4. 实验结果
#### 4.1 主实验结果
<这是实验部分的核心。要求:>
- 用 markdown 手写一版精简表格,标注**最优结果**(加粗)
- 每张表下面用一段文字分析:
- 本文方法相比最强 baseline 提升多少
- 提升主要体现在哪些类别/指标上
- 哪些类别/指标上没有提升甚至下降,可能的原因
- 如果有 test set 结果和 val set 结果,都要列出
- 如果论文有多个 setting(如 single-model vs ensemble, w/o TTA vs w/ TTA),分 setting 呈现
#### 4.2 消融实验
<每个消融实验单独一个子节。对每个消融实验:>
- 这个消融实验要验证什么假设
- 实验设计:控制了什么变量,对比了哪些配置
- 同时用 markdown 表格呈现结果,标注最优和最差
- 结论:这个实验证明了什么,作者的解读是什么
- 如果你发现实验设计有漏洞或结论有争议,可以在最后简要标注
#### 4.3 定性分析(如有)
<如果论文提供了可视化结果:>
- 引用 MinerU 提取的关键可视化图片
- 在 markdown 中嵌入图片并配文字说明
- 可视化的核心发现是什么
- 如果有 failure case 分析,总结主要失败模式
### 5. 数据集与评测指标
#### 5.1 数据集
<对每个使用的数据集,按以下结构描述:>
- 数据集全称和简介
- 数据规模:训练/验证/测试集的样本数或场景数
- 传感器配置:
- 相机:数量、位置、分辨率、FOV
- LiDAR:线数、线束、点云密度
- Radar(如有)
- 标定信息
- 标注信息:标注了哪些类别、标注格式(3D bbox, BEV bbox 等)、标注频率
- 数据特点:场景多样性、天气/光照条件、地理覆盖范围
- 数据集的局限性(如类别不平衡、标注噪声等)
#### 5.2 评测指标
<对每个评测指标,详细解释:>
- 指标全称和缩写
- 数学定义(公式)
- 直觉解释:这个指标衡量的到底是什么
- 这个指标的取值范围和"好"的标准
- 该指标的局限性和需要注意的陷阱
<对于 3D 检测任务,常见的指标包括:>
- mAP (mean Average Precision), 包括不同 IoU 阈值下的 mAP
- NDS (nuScenes Detection Score)
- mATE (mean Average Translation Error)
- mASE (mean Average Scale Error)
- mAOE (mean Average Orientation Error)
- mAVE (mean Average Velocity Error)
- mAAE (mean Average Attribute Error)
- 对于其他任务(分割、跟踪等),列出对应的标准指标
### 6. 深入分析(可选但鼓励)
<如果论文有值得深入讨论的内容,在此展开:>
#### 6.1 为什么这个方法有效
<从更底层的角度解释方法的有效性:>
- 这个方法解决了什么本质问题(不要复述方法,要分析机制)
- 从信息论/优化/几何等角度的深层理解
- 是否和某些已知理论或直觉一致
#### 6.2 与其他方法的本质区别
<与 2-3 个最相关的工作做深入对比:>
- 表面上的区别是什么(结构/模块层面)
- 本质上的区别是什么(思路/范式层面)
- 各自的优劣和适用场景
### 7. 局限性与未来方向
#### 7.1 论文自述的局限性
<论文明确提到的局限性,逐条列出并展开说明影响。>
#### 7.2 潜在问题(你的批判性思考)
<基于你的理解,指出论文可能存在的问题:>
- 实验设计的局限(如只在单一数据集验证)
- 方法的前提假设是否严格(如依赖精确标定)
- 计算开销是否实用
- 结论的泛化性是否有疑问
#### 7.3 未来方向
<论文提出的 future work + 你基于理解的合理延伸。>
### 8. 一句话总结
<用一句话(不超过 80 字)概括这篇论文的核心贡献。这句话应该让完全没读过论文的人也能大致理解这个工作做了什么、为什么重要。>
---
### 附录:关键术语表(如有需要)
<如果论文涉及较多领域专有术语或缩写,在此列出中英文对照和简短解释。>
解读要求
-
语言:全程使用中文撰写,但以下内容保留英文原文:
- 专业术语(如 mAP, NDS, BEV, LiDAR, FPN, Transformer, Attention 等)
- 方法/模型名称(如 CenterPoint, BEVFusion 等)
- 数据集名称(如 nuScenes, Waymo 等)
- 公式中的数学符号 -
详细程度:越详细越好。方法部分是重点,要把每个模块的计算过程、张量形状、设计理由都说清楚。宁可多写不要少写。如果论文的某个细节没有写清楚,标注"论文未详述"而不是跳过。
-
严格忠实原文:
- 不要编造论文中没有的实验数字或结论
- 如果某部分信息论文未提供,写"论文未给出"
- 引用论文中的具体数字时,确保准确
- 你的分析和论文的观点要明确区分(分析部分用"笔者认为""注意到""值得思考的是"等引导词) -
Mermaid 架构图:
- 论文中每出现一个重要的结构图(如 Fig.1, Fig.2),尽量用 mermaid flowchart 在对应小节重现
- 节点使用简洁的英文模块名,边用中文标注数据流含义
- 如果架构特别复杂,可以拆成多个子图分别画
- style 不用太复杂,保证可读性即可 -
表格规范:
- 所有实验数据必须用 markdown 表格呈现
- 最优结果用**数字**加粗
- 次优结果用下划线标注(如果论文有标注)
- 表格必须有表头,列名清晰 -
输出位置:
- MinerU 中文全文翻译写到minerU/<topic>/<PaperName>/<PaperName>_zh.md
- 图片资产保留在minerU/<topic>/<PaperName>/images/
- 总结 markdown 写到wiki/<topic>/<PaperName>_wiki.md
- wiki 图片引用使用 workspace 根目录出发的绝对路径:/minerU/<topic>/<PaperName>/images/<filename> -
图片引用(MinerU 提取):
- 从 MinerU 输出的images/目录中选择关键图片(架构图、模块图、实验结果图、可视化图等)
- 不需要引用所有图片,只选择与解读内容相关的
- 引用格式: -
处理多篇论文:
- 如果用户一次给多篇论文,每篇独立生成一个中文全文翻译 md 和一个_wiki.md
- 最后生成一个汇总列出所有生成的解读文件路径