关于 Evaluating Paper Relevance
Evaluating Paper Relevance 是一项面向跨研究领域的论文筛选技能,先快速评估摘要,再深入检查高分论文的全文、数据和方法。它强调针对具体研究需求判断相关性,并提供评分、追踪文件和进度汇报流程。
主要功能
- 01按关键词、数据类型和具体性评分
- 02分阶段筛选摘要与全文
- 03检查方法、结果、表格和补充材料
- 04记录每篇论文的评估结果
- 05按搜索规模规划筛选流程
适用场景
- 01从搜索结果中筛出含目标数据的论文
- 02查找研究中的实验方法或数据集
- 03批量评估不同领域的论文
- 04整理筛选结果并追踪处理进度
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ kthorn/ research-superpower --skill evaluating-paper-relevance安装后在 Claude Code 中输入/evaluating-paper-relevance确认已加载。
详细介绍
评估论文相关性
概述
两阶段筛选流程:先快速评估摘要,再深入分析有前景的论文。
核心原则:重精度,轻广度。 找出真正包含用户所需特定数据或方法的论文,而不只是主题相关的论文。
适用场景
在以下情况下使用此技能:
- 已有搜索得到的论文列表
- 需要确定哪些论文包含相关数据
- 用户要求提供特定信息(测量结果、协议、数据集等)
- 逐篇筛选论文
- 任何研究领域(药物化学、基因组学、生态学、计算方法等)
选择处理方式
小规模搜索(<50 篇论文):
- 手动筛选并汇报进度
- 仅使用 papers-reviewed.json 和 SUMMARY.md
- 无需辅助脚本
- 每筛选一篇论文都向用户汇报进度
大规模搜索(50-150 篇论文):
- 考虑使用辅助脚本(screen_papers.py + deep_dive_papers.py)
- 使用渐进增强模式(参见“辅助脚本”部分)
- 创建 README.md,说明方法
- 可考虑创建 TOP_PRIORITY_PAPERS.md 以便快速查阅
- 使用更丰富的 JSON 结构(按相关性分类的 evaluated-papers.json)
- 考虑使用 subagent-driven-review 技能并行筛选
超大规模搜索(>150 篇论文):
- 务必使用辅助脚本和渐进增强模式
- 创建完整的辅助文档套件(README.md、TOP_PRIORITY_PAPERS.md)
- 考虑进行引文网络分析
- 规划数周的时间安排
- 强烈建议使用 subagent-driven-review 技能进行并行处理
- 可能需要多个汇总检查点
两阶段流程
第 1 阶段:摘要筛选(快速)
目标: 快速找出有前景的论文
按以下标准评分,总分 0-10 分:
- 关键词匹配(0-3 分):摘要是否提及与查询相关的关键术语?
- 数据类型匹配(0-4 分):是否提及用户所需的特定信息?
- 示例:测量结果(IC50、表达水平、种群数量)、协议、数据集、结构、序列、代码
- 针对性(0-3 分):内容是否针对用户的问题,还是仅提供一般背景或综述?
判断规则:
- 分数 < 5:跳过(不相关)
- 分数 5-6:在摘要中标记为“可能相关”,暂时跳过
- 分数 ≥ 7:进入第 2 阶段(深入分析)
重要:每篇论文都必须向用户汇报:
📄 [N/Total] Screening: "Paper Title"
Abstract score: 8 → Fetching full text...
或
📄 [N/Total] Screening: "Paper Title"
Abstract score: 4 → Skipping (insufficient relevance)
绝不要静默筛选——用户需要看到筛选正在进行
第 2 阶段:深入分析(全面)
目标: 从有前景的论文中提取特定数据或方法
1. 检查 ChEMBL(针对药物化学论文)
如果论文介绍药物化学或 SAR 数据:
使用 skills/research/checking-chembl 检查论文是否收录在 ChEMBL 数据库中:
curl -s "https://www.ebi.ac.uk/chembl/api/data/document.json?doi=$doi"
如果在 ChEMBL 中找到:
- 在 SUMMARY.md 中记录 ChEMBL ID 和活性数据数量
- 向用户报告:“✓ ChEMBL:CHEMBL3870308(45 个数据点)”
- 无需解析 PDF 即可获取结构化 SAR 数据
继续获取全文,以了解背景、方法和讨论。
2. 获取全文
按以下顺序尝试:
A. PubMed Central(免费全文):
# Check if available in PMC
curl "https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=pmc&term=PMID[PMID]&retmode=json"
# If found, fetch full text XML via API
curl "https://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=pmc&id=PMCID&rettype=full&retmode=xml"
# Or fetch HTML directly (note: use pmc.ncbi.nlm.nih.gov, not www.ncbi.nlm.nih.gov/pmc)
curl "https://pmc.ncbi.nlm.nih.gov/articles/PMCID/"
B. DOI 解析:
# Try publisher link
curl -L "https://doi.org/10.1234/example.2023"
# May hit paywall - check response
C. Unpaywall(付费墙情况下必须尝试): 关键:如果步骤 B 遇到付费墙,必须立即尝试 Unpaywall,之后才能放弃。
使用 skills/research/finding-open-access-papers 查找免费的 OA 版本:
curl "https://api.unpaywall.org/v2/DOI?email=USER_EMAIL"
# Often finds versions in repositories, preprint servers, author copies
# IMPORTANT: Ask user for their email if not already provided - do NOT use [email protected]
向用户报告:
⚠️ Paper behind paywall, checking Unpaywall...
✓ Found open access version at [repository/preprint server]
或
⚠️ Paper behind paywall, checking Unpaywall...
✗ No open access version available - continuing with abstract only
D. 预印本(直接获取):
- 检查 bioRxiv:
https://www.biorxiv.org/content/10.1101/{doi} - 检查 arXiv(针对计算类论文)
尝试 Unpaywall 后仍无法获取全文时:
- 在 SUMMARY.md 中注明:“⚠️ 全文受付费墙限制——未通过 Unpaywall 找到 OA 版本”
- 继续仅根据摘要进行评估(信息有限)
关键:不要跳过 Unpaywall 检查。许多受付费墙限制的论文都在资料库中提供了免费版本。
2. 扫描相关内容
重点关注以下部分:
- 方法:实验流程、方案
- 结果:数据表、图表、测量结果
- 表格/图表:通常包含用户所需的具体数据
- 补充信息:其他数据、扩展方法
查找内容(根据研究领域调整):
- 用户要求的具体数据
- 药物化学:IC50 值、化合物结构、SAR 数据
- 基因组学:基因表达水平、序列、变异数据
- 生态学:种群测量结果、物种数量、环境参数
- 计算领域:算法、代码可用性、性能基准
- 临床领域:患者结局、治疗方案、样本量
- 详细描述的方法/方案
- 统计分析和显著性
- 数据可用性声明
- 提及的数据和代码仓库
使用 grep/文本搜索(根据情况调整搜索词):
# Examples for different domains
grep -i "IC50\|Ki\|MIC" paper.xml # Medicinal chemistry
grep -i "expression\|FPKM\|RNA-seq" paper.xml # Genomics
grep -i "abundance\|population\|sampling" paper.xml # Ecology
grep -i "algorithm\|github\|code" paper.xml # Computational
3. 提取研究结果
创建结构化提取内容(根据研究领域调整):
示例 1:药物化学
{
"doi": "10.1234/medchem.2023",
"title": "Novel kinase inhibitors...",
"relevance_score": 9,
"findings": {
"data_found": [
"IC50 values for compounds 1-12 (Table 2)",
"Selectivity data (Figure 3)",
"Synthesis route (Scheme 1)"
],
"key_results": [
"Compound 7: IC50 = 12 nM",
"10-step synthesis, 34% yield"
]
}
}
示例 2:基因组学
{
"doi": "10.1234/genomics.2023",
"title": "Gene expression in disease...",
"relevance_score": 8,
"findings": {
"data_found": [
"RNA-seq data for 50 samples (GEO: GSE12345)",
"Differential expression results (Table 1)",
"Gene set enrichment analysis (Figure 4)"
],
"key_results": [
"123 genes upregulated (FDR < 0.05)",
"Pathway enrichment: immune response"
]
}
}
示例 3:计算方法
{
"doi": "10.1234/compbio.2023",
"title": "Novel alignment algorithm...",
"relevance_score": 9,
"findings": {
"data_found": [
"Algorithm pseudocode (Methods)",
"Code repository (github.com/user/tool)",
"Benchmark results (Table 2)"
],
"key_results": [
"10x faster than BLAST",
"98% accuracy on test dataset"
]
}
}
4. 下载材料
PDF:
# If PDF available
curl -L -o "papers/$(echo $doi | tr '/' '_').pdf" "https://doi.org/$doi"
补充数据:
# Download SI files if URLs found
curl -o "papers/${doi}_supp.zip" "https://publisher.com/supp/file.zip"
5. 更新跟踪文件
重要:只能使用 papers-reviewed.json 和 SUMMARY.md。不要创建自定义跟踪文件。
重要:无论评分如何,都要将每篇论文添加到 papers-reviewed.json。这可以避免重复审阅论文,并跟踪完整的搜索历史。
添加到 papers-reviewed.json:
对于相关论文(评分 ≥7):
{
"10.1234/example.2023": {
"pmid": "12345678",
"status": "relevant",
"score": 9,
"source": "pubmed_search",
"timestamp": "2025-10-11T10:30:00Z",
"found_data": ["IC50 values", "synthesis methods"],
"has_full_text": true,
"chembl_id": "CHEMBL1234567"
}
}
对于不相关论文(评分 <7):
{
"10.1234/another.2023": {
"pmid": "12345679",
"status": "not_relevant",
"score": 4,
"source": "pubmed_search",
"timestamp": "2025-10-11T10:31:00Z",
"reason": "no activity data, review paper"
}
}
即使跳过论文,也始终要添加——这样可以避免重复处理,并记录已检查的内容。
添加到 SUMMARY.md(不同领域的示例):
药物化学示例:
### [Novel kinase inhibitors with improved selectivity](https://doi.org/10.1234/medchem.2023) (Score: 9)
**DOI:** [10.1234/medchem.2023](https://doi.org/10.1234/medchem.2023)
**PMID:** [12345678](https://pubmed.ncbi.nlm.nih.gov/12345678/)
**ChEMBL:** [CHEMBL1234567](https://www.ebi.ac.uk/chembl/document_report_card/CHEMBL1234567/)
**Key Findings:**
- IC50 values for 12 inhibitors (Table 2)
- Compound 7: IC50 = 12 nM, >80-fold selectivity
- Synthesis route (Scheme 1, page 4)
**Files:** PDF, supplementary data
基因组学示例:
### [Transcriptomic analysis of disease progression](https://doi.org/10.1234/genomics.2023) (Score: 8)
**DOI:** [10.1234/genomics.2023](https://doi.org/10.1234/genomics.2023)
**PMID:** [23456789](https://pubmed.ncbi.nlm.nih.gov/23456789/)
**Data:** [GEO: GSE12345](https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE12345)
**Key Findings:**
- RNA-seq data: 50 samples, 3 conditions
- 123 differentially expressed genes (FDR < 0.05)
- Immune pathway enrichment (Figure 3)
**Files:** PDF, supplementary tables with gene lists
计算方法示例:
### [Fast sequence alignment with novel algorithm](https://doi.org/10.1234/compbio.2023) (Score: 9)
**DOI:** [10.1234/compbio.2023](https://doi.org/10.1234/compbio.2023)
**Code:** [github.com/user/tool](https://github.com/user/tool)
**Key Findings:**
- New alignment algorithm (pseudocode in Methods)
- 10x faster than BLAST, 98% accuracy
- Benchmark datasets available
**Files:** PDF, code repository linked
重要:始终将 DOI 和 PMID 设置为可点击链接:
- DOI 格式:
[10.1234/example.2023](https://doi.org/10.1234/example.2023) - PMID 格式:
[12345678](https://pubmed.ncbi.nlm.nih.gov/12345678/) - 方便直接从 SUMMARY.md 访问论文
进度报告
重要:工作过程中要向用户报告进度,切勿默默工作!
每篇论文都要报告:
- 开始筛选:
📄 [N/Total] Screening: "Title..." - 摘要评分: Abstract score: X/10
- 决定: 说明接下来要做什么(获取全文/跳过等)
对于相关论文,立即报告研究结果(根据领域调整):
药物化学示例:
📄 [15/127] Screening: "Selective BTK inhibitors..."
Abstract score: 8 → Fetching full text...
✓ Found IC50 data for 8 compounds (Table 2)
✓ Selectivity data vs 50 kinases (Figure 3)
→ Added to SUMMARY.md
基因组学示例:
📄 [23/89] Screening: "Gene expression in liver disease..."
Abstract score: 9 → Fetching full text...
✓ RNA-seq data available (GEO: GSE12345)
✓ 123 DEGs identified (Table 1, FDR < 0.05)
→ Added to SUMMARY.md
计算方法示例:
📄 [7/45] Screening: "Novel phylogenetic algorithm..."
Abstract score: 8 → Fetching full text...
✓ Code available (github.com/user/tool)
✓ Benchmark results (10x faster, Table 2)
→ Added to SUMMARY.md
每处理 5-10 篇论文后,向用户更新总结:
📊 Progress: Reviewed 30/127 papers
- Highly relevant: 3
- Relevant: 5
- Currently screening paper 31...
重要原因: 用户需要看到工作正在进行,并能尽早提供反馈或纠正意见。
与其他技能集成
对于药物化学论文:
- 使用
skills/research/checking-chembl查找经过整理的 SAR 数据 - 在尝试解析 PDF 中的活性表格之前,先进行检查
- 约 30-40% 的药物化学论文包含 ChEMBL 数据
获取全文期间:
- 如果论文有付费墙:必须使用
skills/research/finding-open-access-papers(Unpaywall) - 不要跳过此步骤——Unpaywall 可免费找到约 50% 的付费论文
找到相关论文后:
- 检查 ChEMBL(如果是药物化学论文)
- 将研究结果提取到 SUMMARY.md
- 将文件下载到 papers/ 文件夹
- 调用 traversing-citations 技能查找相关论文
- 更新 papers-reviewed.json,避免重复处理
评分标准
| 评分 | 含义 | 操作 |
|---|---|---|
| 0-4 | 不相关 | 跳过,在总结中简要记录 |
| 5-6 | 可能相关 | 留待后续处理,暂时跳过深入分析 |
| 7-8 | 相关 | 深入分析、提取数据并添加到总结 |
| 9-10 | 高度相关 | 深入分析、提取数据、追踪引用,并在总结中重点标注 |
辅助脚本(可选)
筛查大量论文(>20)时,可考虑创建辅助脚本:
优点:
- 批量处理并限制速率
- 评分逻辑一致
- 保存中间结果
- 中断后可继续
在研究会话文件夹中创建:
# research-sessions/YYYY-MM-DD-query/screen_papers.py
主要组件:
- 获取摘要 - 使用 PubMed efetch 并处理错误
- 为摘要评分 - 实现评分标准(0-10)
- 限制速率 - API 调用之间延迟 500ms(如果并行运行子 Agent,则延迟更长)
- 保存结果 - 将已评分的论文按相关性分类并保存为 JSON
- 报告进度 - 运行时打印状态
渐进式增强模式(推荐用于 50 篇以上的论文)
大规模筛查时,使用双脚本模式:
脚本 1:摘要筛查(screen_papers.py)
- 批量获取摘要
- 使用评分标准评分(0-10)
- 按相关性分类
- 输出:包含基本元数据的
evaluated-papers.json
脚本 2:深入分析(deep_dive_papers.py)
- 读取脚本 1 的输出
- 获取高度相关论文的全文(评分 ≥8)
- 提取特定领域的数据(测量结果、协议、数据集等)
- 使用增强后的元数据更新同一个 JSON 文件
优点:
- 可独立运行各个步骤 - 摘要只需评分一次,深入分析可多次重新运行
- 中断后可继续 - 如果深入分析失败,无需重新获取摘要
- 重新运行深入分析而不重新评估摘要 - 调整提取逻辑并保留评分
- 一致且可复现 - 对所有论文应用相同的评分逻辑
- 节省 API 调用 - 摘要只筛查一次,深入分析仅针对相关论文
脚本设计:
- 针对特定查询,将关键词和数据类型设为参数
- 渐进式增强 - 向同一个 JSON 文件中添加详细信息
- 加入速率限制(单脚本运行时,每次 API 调用间隔 500ms;并行运行时延迟更长)
- 将脚本与研究会话一同保存,以确保可复现
不应创建辅助脚本的情况:
- 论文数量较少(<20)
- 一次性的快速搜索
- 手动筛查更快
常见错误
**未追踪所有论文:**只将相关论文添加到 papers-reviewed.json → 无论评分如何,都添加每一篇论文,以避免重复审查 **跳过 Unpaywall:**遇到付费墙就放弃 → 务必先检查 Unpaywall,许多论文都有免费版本 **小规模搜索却创建不必要的文件:**对于 <50 篇论文,只使用 papers-reviewed.json 和 SUMMARY.md。对于大规模搜索(>100 篇论文),结构化的 evaluated-papers.json 和辅助文件(README.md、TOP_PRIORITY_PAPERS.md)价值显著,应当使用。 **标准过严:**跳过间接提及数据的论文 → 仔细重新阅读摘要 **标准过宽:**深入分析关联性较弱的论文 → 聚焦用户需要的特定数据 **遗漏补充数据:**许多论文将关键数据放在 SI 中 → 务必检查补充文件 **静默筛查:**用户看不到进度 → 筛查时逐篇报告每一篇论文 **没有定期总结:**用户会失去整体认知 → 每处理 5-10 篇论文更新一次 **DOI/PMID 不可点击:**标识符为纯文本 → 务必使用 Markdown 链接 **重复审查论文:**浪费时间 → 务必先检查 papers-reviewed.json **未使用辅助脚本:**手动筛查 100 篇以上的论文 → 考虑使用批处理脚本
快速参考
| 任务 | 操作 |
|---|---|
| 检查是否已审查 | 在 papers-reviewed.json 中查找 DOI |
| 为摘要评分 | 关键词(0-3)+ 数据类型(0-4)+ 具体程度(0-3) |
| 获取全文 | 依次尝试 PMC → DOI → Unpaywall → 预印本 |
| 查找数据 | 使用 grep 搜索术语,重点查看 Methods/Results/Tables |
| 下载 PDF | curl -L -o papers/FILE.pdf URL |
| 更新追踪记录 | 添加到 papers-reviewed.json + SUMMARY.md |
后续步骤
评估论文后:
- 如果评分 ≥ 7:调用
skills/research/traversing-citations - 继续处理搜索结果中的下一篇论文
- 检查是否已达到 50 篇论文或 5 分钟 → 询问用户是继续还是停止
辅助文件(用于大规模搜索,>100 篇论文)
README.md 模板
100 篇以上论文的研究项目请使用此结构:
-
项目概述
- 查询说明
- 目标分子/主题
- 完成日期
-
快速入门指南
- 从哪里开始阅读
- 优先级列表
-
文件清单
- 每个文件的说明
- 每个文件的用途
-
关键发现摘要
- 统计数据
- 主要发现
- 各类别的覆盖情况
-
方法
- 评分标准
- 决策规则
- 数据来源
-
后续步骤
- 建议采取的行动
- 优先顺序
TOP_PRIORITY_PAPERS.md 模板
对于包含 50 篇以上相关论文的数据集,请创建精选优先级列表:
- 按层级整理(第 1 层:必读;第 2 层:高价值等)
- 包含评分、DOI 和关键发现摘要
- 注明全文是否可获取
- 建议阅读顺序
结构示例:
# Top Priority Papers
## Tier 1: Must-Read (Score 10)
### [Paper Title](https://doi.org/10.xxxx/yyyy) (Score: 10)
**DOI:** [10.xxxx/yyyy](https://doi.org/10.xxxx/yyyy)
**PMID:** [12345678](https://pubmed.ncbi.nlm.nih.gov/12345678/)
**Full text:** ✓ PMC12345678
**Key Findings:**
- Finding 1
- Finding 2
---
## Tier 2: High-Value (Score 8-9)
[Additional papers organized by priority...]