关于 sci-extract
sci-extract 是面向研究者和论文读者的科学文献分析技能,可从论文中提取结构化见解。它能获取全文与图表,并针对原始研究或综述采用不同分析框架。
主要功能
- 01获取论文元数据与全文
- 02提取核心发现及局限
- 03分析综述分类与证据
- 04获取出版商图表或裁剪 PDF 图表
适用场景
- 01总结一篇原始研究论文
- 02梳理综述或调查的主题
- 03按 DOI 或标题获取论文
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ shzhao27208/ aut_sci_write --skill sci-extract安装后在 Claude Code 中输入/sci-extract确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
_meta.jsonextract_core_insights.pyharvest_paper.pyREADME.mdharvester/__init__.pyenv.pyfigures.pyfulltext.pyhttp.pyidentify.pyjats.pymetadata.pyoa_package.pyrender.py详细介绍
Sci-Extract — 科学论文提取
从科学 PDF 论文中专业地提取核心见解和图表。
注意:此技能由两位作者共同贡献。详情请参阅版权与许可部分。
功能
- 核心见解:自动识别研究问题、方法、关键结果、创新点、应用和局限性。
- 综述文献提取:对于综述、调查报告、系统综述、范围综述和荟萃分析,提取领域范围、分类体系、证据基础、共识、分歧、证据质量、研究空白和未来方向。
- 论文采集:给定 DOI、PMID、PMCID、arXiv ID、标题或搜索查询,从每个已配置的数据库中提取完整元数据、出版商原生 XML、正文全文和图表,然后写入 Agent 可读取的
raw.md,免去你阅读 PDF 的麻烦。 - 图表检测:从出版商处获取出版分辨率的图表;如果出版商未提供,则从 PDF 页面中裁剪图表区域。
- 元数据提取:解析标题、作者、DOI、期刊和年份。
步骤:
步骤 1:获取论文
务必重新阅读论文。切勿依赖对论文的记忆,即使标题看起来很熟悉也不例外。
| 输入类型 | 操作 |
|---|---|
| DOI、PMID、PMCID、arXiv ID、标题或查询 | 运行采集器(下文的模式 3)。它会写入包含全文和嵌入图表的 raw.md,之后你应阅读该文件,而不是 PDF。 |
/mnt/user-data/uploads/ 中的 PDF | 使用适当的工具阅读(如有,请参阅 pdf-reading 技能)。 |
| arXiv 链接 | 提取 arXiv ID 并运行采集器。如果采集器未返回全文,则使用 web_fetch 获取摘要页面。 |
| 聊天中粘贴的文本 | 直接使用。 |
| 只有标题,没有链接 | 使用标题运行采集器;它会列出候选项,并在获取论文前确认匹配项。不要猜测论文。 |
如果论文较长,应先判断论文类型,再优先阅读与该类型相关的章节。对于原创研究,优先阅读摘要、引言、方法/理论、实验和结论。对于综述文献,优先阅读摘要、引言、检索/筛选方法、分类体系/分类章节、主要主题章节、汇总表、局限性和未来展望。
步骤 2:判断论文类型
在选择提取模板前,将论文归为以下类型之一:
- 原创研究论文
- 叙述性综述/调查报告
- 系统综述
- 荟萃分析
- 范围综述
- 观点文章/教程/方法概述
根据标题、摘要、引言和章节标题进行判断。综述文献的信号包括“综述”“调查报告”“系统综述”“荟萃分析”“范围综述”“文献计量”“分类体系”“现状”“最新进展”“挑战”“未来展望”以及广泛的比较表。
如果论文属于综述、调查报告、系统综述、荟萃分析、范围综述、观点文章或教程概述,不要强行套用原创研究的 Heilmeier 模板。请使用下文的综述文献提取模式。原创研究关注“这篇论文做了什么、证明了什么”;综述文献关注“这篇论文如何梳理该领域并评判证据”。
步骤 3A:原创研究模式——回答修订版 Heilmeier 问题
按顺序将以下七个问题分别作为带标签的小节进行回答。每个问题在以下方面的规则各不相同:(a)是否允许加入你自己的评价;(b)是否允许引用外部资料。请在撰写每个小节前仔细阅读规则。
Question 1. 你想做什么?
开篇用一句话向聪明的非专业读者说明论文的贡献,绝对不要使用术语。禁用缩写,以及任何一年级本科生可能不认识的技术术语。如果无法避免使用专业术语,请在括号中用通俗语言解释。然后再用一到两句话,以稍微专业一些的语言进一步阐述目标。
是否可以表达观点:不可以。忠实于论文。 是否可以引用外部资料:不可以。
Question 2. 问题是什么?目前是如何解决的?现有做法有哪些局限?
描述论文要解决的现实或科学问题,然后简要概述论文发表时该领域如何处理这个问题,以及这些做法有哪些局限。这部分应是一段独立完整的领域概述,而不是文献综述。用通俗语言介绍主要的竞争性方法。
是否可以表达观点:可以少量表达,但只能用于更清晰地说明局限。 是否可以引用外部资料:不可以。此处不要搜索或引用外部资料。只需结合论文内容和你对该领域的一般了解进行概述。
Question 3. 方法有哪些创新,包括核心思想、数学和具体做法?论文为何认为该方法会成功?
这是回答的技术核心,涵盖原本可能单独归入“方法”总结的内容。按以下顺序介绍:
- 区别于以往工作的核心技术举措。
- 关键数学对象与公式。请写出一到两个主要公式,定义所引入的每个符号;使用带有
\left和\right的陈列公式表示括号,行内数学公式保持在一行,并优先采用标准 LaTeX 符号。 - 所提出的方法如何通过具体机制解决问题。
- 论文对该方法为何会成功的主张。
是否可以表达观点:不可以。本小节只介绍论文所述及提出的内容。将评价留到问题 4、5 和 6。 是否可以引用外部资料:不可以。
Question 4. 谁会关心?如果成功,会带来什么改变?
讨论影响:哪些群体会受益,哪些事情将成为可能,以及这篇论文自发表以来是否真的改变了该领域。
是否可以表达观点:可以。这是最需要你作出判断的问题之一。
是否可以引用外部资料:可以,并且在评估论文发表后的影响(其他团队的采用情况、后续论文、部署情况)时鼓励引用。所有外部引用都必须来自你在本轮中实际运行的 web_search 或 web_fetch。
Question 5. 有哪些风险?
涵盖论文自身承认的风险,以及你独立发现的风险。具体说明:数据污染、奖励投机、失效模式、基准狭窄、扩展性、可复现性。
是否可以表达观点:可以。 是否可以引用外部资料:可以,前提是外部来源对风险判断有实质支持。
Question 6. 成本是多少?
根据论文内容,将成本理解为计算资源、数据、工程投入或部署成本。说明你采用的是哪种理解。提取论文提供的相关数字(token 数量、批次大小、GPU 小时、数据量),并粗略说明“复现这项工作需要什么”。
是否可以表达观点:可以,尤其是在说明“复现需要什么”时。 是否可以引用外部资料:可以。注意不要将本文成本与同一作者其他相关工作的成本混为一谈。如果引用成本数据,请明确说明该数据具体对应哪篇论文或哪个模型。
Question 7. 实验与结果如何?
介绍实验设置(基准、数据集、基线、指标、消融实验)以及主要结果。本小节要回答“成功的判定标准是什么,以及论文是否达到了这些标准”。指出主张与证据之间任何明显的差距。
是否可以表达观点:可以少量表达,但只能用于指出主张与证据之间的差距。 是否可以引用外部资料:不可以。
步骤 3B:综述文献提取模式
将此模式用于综述论文、调查论文、系统综述、荟萃分析、范围综述、观点综述和教程概述。除非综述本身讨论基准测试或方法方案,否则不要询问单一的拟议方法、单项实验或复现成本。目标是重建论文对该领域的全景图,并评估这幅全景图的可靠性。
按顺序返回以下带标签的小节:
1. 综述范围
说明论文综述的领域、问题、研究人群、方法类别、材料类别、数据类型或应用领域。若论文明确给出纳入和排除边界,请一并说明。如果范围含糊,请指出。
2. 这篇综述为何此时出现
解释其动机:领域碎片化、快速发展、证据相互冲突、分类体系不明确、转化鸿沟、可复现性问题、新技术或实际需求。在加入自己的判断之前,务必忠实于论文内容。
3. 分类体系或组织框架
提取作者用于组织该领域的类别。保留作者的层级结构和术语。如果存在多种分类体系,请分别说明。对每个类别,用一句话解释其含义,并列出主要的代表性方法、研究类型、模型、材料、数据集、疾病、干预措施或应用。
4. 文献筛选与证据基础
对于系统综述、范围综述和荟萃分析,提取检索的数据库、检索时段、检索词(如有)、纳入标准、排除标准、筛选流程、最终纳入的研究数量,以及任何质量评估工具。对于叙述性综述和调查论文,说明检索和筛选方法是未说明还是非正式的。
5. 领域概况与主要主题
概述综述涵盖的主要研究方向。区分成熟领域和新兴领域。如果重要数据集、基准任务、实验平台、临床队列、模型系列、材料或仪器是综述的核心内容,请予以提及。
6. 共识结论
提取综述文献普遍认可的结论。区分强共识与初步趋势。如果综述没有明确指出共识,请如实说明,不要自行编造。
7. 分歧、争议与异质性
提取研究之间存在冲突之处、机制或解读存在差异之处,以及综述对结果不一致所给出的解释。对于荟萃分析,请纳入报告的异质性统计数据及亚组/敏感性分析结果。
8. 证据质量与偏倚
根据论文报告的内容,评估所综述证据的可靠性:研究设计、样本量、数据质量、基准测试数据泄漏、混杂因素、发表偏倚、可复现性、对照缺失、标注质量、评估指标或偏倚风险工具。请使用“My analysis is that”(我的分析是)等第一人称表述标记自己的评估,以区分论文内容和个人评论。
9. 缺口与未来方向
提取作者指出的未解问题、缺失的数据集、缺失的实验、技术障碍、转化障碍、标准化需求、临床/工业/政策需求,以及具体的未来方向。只有在使用第一人称标记的情况下,才添加自己对优先研究缺口的评估。
10. 重要图和表
指出分类体系图、工作流图、证据图谱、PRISMA 流程图、汇总表、对比表、基准测试表,以及荟萃分析森林图/漏斗图。对每个重要图或表,说明其在理解综述方面的作用。如果要求提取图表,并且有可用工具,请裁剪或保存相关图表区域。
11. 核心要点
最后列出三至五条简明要点。每条要点都应说明研究者可以利用的内容:字段结构、可靠结论、尚未解决的争议、证据薄弱的领域,或具体的研究机会。
归属规则(适用于所有问题)
用户必须始终能够区分论文内容和你的分析。在允许表达观点的任何小节中,每条个人判断前都必须加上以下标记之一:“在我看来,”、“我的分析是,”、“我的解读是,”,或其他第一人称标记。两者之间绝不能含混。在不允许表达观点的小节(问题 1 和 3)中,完全不要使用这些标记。
引用规则(适用于所有问题)
回复中的每条外部引用都必须来自你在本轮实际执行的 web_search 或 web_fetch。不得引用记忆中的内容。只有一种例外:如果论文引用了某项先前研究,而你只是原样复述论文对该研究的说法,则可以不经网络搜索直接提及。一旦添加了超出论文原文的内容,就必须搜索并引用搜索结果。
执行搜索时,请在文中附上引用,方便用户进一步查阅。
长度与节奏
保持内容精炼。用户明确要求快速、避免重复的输出。不要在多个问题下重复同一点。尽量用最短篇幅完整回答全部七个问题;如果某篇论文在某个问题上确实没有太多内容,该小节控制在两三句话。
格式与排版要求
以单条行内 Markdown 回复全部内容。使用一个顶级标题命名论文,并为每个问题使用一个 ## 标题。数学公式须遵守以下要求:展示公式的括号使用 \left / \right,行内数学公式保持在同一行,每个符号都要定义,并使用标准 LaTeX。任何地方都不要使用破折号,请改用逗号、分号、括号或另起新句。
禁止事项
- 不要在问答式摘要之前单独添加“总结”部分。问答式摘要本身就是总结。
- 不要在问题 1 或 3 中加入个人评价。
- 不要虚构论文中没有提到的数字、基线或实验结果。
- 不要插入来自记忆的引用。
- 陈述成本或结果时,不要把本文与同一作者的相关工作混为一谈。
- 不要分析本轮没有实际阅读过的论文。
用法
此技能有三种独立模式:
模式 1 现在会先对论文类型进行分类。原创研究论文使用经过修改的 Heilmeier 框架。综述类文献使用综述文献提取模式,该模式专为综述论文、调查研究、系统综述、范围综述和荟萃分析而设计。
模式 2 现在支持 --paper-type auto|research|review。对于原创研究,它会提取研究问题、方法、关键结果、创新点、应用和局限性。对于综述类文献,它会提取综述范围、分类体系、文献筛选方法、主要主题、共识性发现、争议、证据质量、研究空白、未来方向以及关键表格/图表。
模式 1 — Heilmeier 分析(AI 驱动,无需脚本) 只需分享一篇论文并请求分析。AI 会直接遵循上述 7 个问题框架。无需本地脚本。
模式 2 — 核心洞察提取器(Python CLI)
一个独立脚本,可提取 6 个结构化字段(研究问题、方法、关键结果、创新点、应用、局限性),并提供置信度分数。请在 skills/sci-extract/ 目录下运行:
# Single PDF — outputs JSON by default
python extract_core_insights.py paper.pdf
# Choose output format
python extract_core_insights.py paper.pdf --format markdown
python extract_core_insights.py paper.pdf --format csv
# Force or auto-detect paper type
python extract_core_insights.py review.pdf --paper-type review
python extract_core_insights.py paper.pdf --paper-type auto
# Batch process a folder (4 parallel workers)
python extract_core_insights.py papers/ --batch
# Save to a specific file
python extract_core_insights.py paper.pdf --output results.json
模式 3 — 论文采集器(Python CLI + 自行分析)
从学术数据库获取论文,并以 Markdown 格式保存到磁盘,这样你阅读的是文本和图片,而不是 PDF。请在 skills/sci-extract/ 目录下运行:
# By identifier: DOI, PMID, PMCID, or arXiv ID
python harvest_paper.py 10.1038/s41586-020-2649-2
python harvest_paper.py PMC7759461
python harvest_paper.py 2006.10256
# By title or search query: lists candidates and asks before fetching
python harvest_paper.py "array programming with numpy"
python harvest_paper.py "array programming with numpy" --pick 1 # non-interactive
# Where to write, and what to skip
python harvest_paper.py 10.1038/s41586-020-2649-2 --output-dir ./papers
python harvest_paper.py 10.1038/s41586-020-2649-2 --skip-pdf --skip-figures
# Several papers, one identifier per line
python harvest_paper.py --batch dois.txt
# Which databases are configured
python harvest_paper.py --sources
每篇论文都会保存到 ./sci_extract_out/ 下各自的目录中(可通过 --output-dir 覆盖):
2020_harris_array-programming-numpy/
├── raw.md # complete capture in English, figures embedded inline
├── analysis.md # YOU write this; see below
├── metadata.json # merged record from every database, plus an audit trail
├── fulltext.xml # publisher XML exactly as received
├── figures/ # publication-resolution images
├── paper.pdf # kept for reference
└── _analysis_prompt.md # instructions for writing analysis.md
采集器运行完毕后,你需要编写 analysis.md。 该脚本有意不调用任何大模型:你就是模型,因此请阅读 _analysis_prompt.md,完整阅读 raw.md,应用与论文类型匹配的模式 1 模板,并用中文在同一目录中编写 analysis.md。这不涉及 LLM API 密钥,也不应向用户索取密钥。
每篇论文对应两个 Markdown 文件,这正是此模式的设计目的:raw.md 是你阅读的忠实来源,analysis.md 是你对它的判断。将二者分开,可以避免分析在不知不觉中改写证据。
本模式会如实说明覆盖范围的局限。获取全文和图表要求论文为开放获取;对于付费墙后的论文,采集器仍会写入完整元数据、摘要,以及在可访问时获取的 PDF,并会在 raw.md 中明确说明哪些内容无法获取。在将信息缺失视为论文内容本身的缺失之前,请先查看 raw.md 底部的来源信息部分。
三种模式彼此独立:模式 1 根据你已有的论文生成叙述性分析;模式 2 从本地 PDF 提取结构化数据字段;模式 3 获取论文并为模式 1 做好准备。常见的使用流程是先运行模式 3,再运行模式 1。
配置
模式 2 需要 PyMuPDF、pdfplumber 和 numpy。
模式 3 需要 requests,并会在需要从 PDF 中裁剪图表时使用 PyMuPDF。数据库凭据从套件级 .env 文件 ~/.aut_sci_write/.env 中读取;运行 python harvest_paper.py --sources 可查看已配置的来源。Crossref、OpenAlex、Semantic Scholar、PubMed、Europe PMC 和 arXiv 均无需密钥,因此即使 .env 为空,采集器也能正常使用。为 Web of Science、Scopus、Springer、Elsevier 或 IEEE 添加密钥,可扩大元数据覆盖范围;其中具有相应访问权限的 Elsevier 和 Springer 密钥还可获取全文。
© 许可与版权
作者与贡献
| 作者 | 贡献 | 版权 |
|---|---|---|
| Shuo Zhao | 核心提取引擎(特征、图表检测、元数据解析) | © 2026 Shuo Zhao |
| Zhiyao Zhang | Heilmeier 分析模块(7 问题问答框架) | © 2026 Zhiyao Zhang |
许可证
MIT 许可证——请参阅项目根目录中的 LICENSE 文件。
特此免费授予任何获得本软件及相关文档文件副本的人不受限制地处理本软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售本软件副本的权利,以及允许获得本软件的人这样做的权利,但须遵守以下条件:
本软件的所有副本或主要部分均须包含上述版权声明和本许可声明。
本软件按“原样”提供,不附带任何明示或默示的担保,包括但不限于适销性、特定用途适用性和非侵权性的担保。在任何情况下,作者或版权持有人均不对因本软件或本软件的使用或其他交易而引起、产生或与之相关的任何索赔、损害或其他责任承担责任,无论是合同诉讼、侵权行为还是其他诉讼。
版权声明
Copyright (c) 2026 Shuo Zhao. All rights reserved.
Copyright (c) 2026 Zhiyao Zhang. All rights reserved.
This work includes contributions from both authors under MIT license.
- Core extraction module: Copyright (c) 2026 Shuo Zhao
- Heilmeier analysis module: Copyright (c) 2026 Zhiyao Zhang
原创作品声明
本作品为作者合作创作的原创作品。未经两位作者明确许可,不得复制、再分发或用于商业用途。
特此免费授予许可,允许任何人获取本软件的副本……(完整 MIT 条款请参阅根目录中的 LICENSE 文件。)