소스 정보
- 저장소
- photonics-dhl/Self-learning
- 최근 소스 활동
- 2026년 6월 3일 06:56
- 감지된 SKILL.md 언어
- 다국어 혼합
- 스타
- 0
- 포크
- 0
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/photonics-dhl/Self-learning --skill literature-review명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | literature-review |
| description | 系统性文献综述撰写。整合 Pautasso (2013) 综述写作规则和 C-C-C 结构原则。当用户需要写文献综述时触发。 |
这是一个基于学术规范的文献综述撰写系统,整合了 Pautasso (2013) 的"Ten Simple Rules for Writing a Literature Review"和 Mensah (2019) 的"Ten Simple Rules for Structuring Papers"中的 C-C-C 结构原则。
核心定位: 帮助研究者撰写真正有深度的学术文献综述,而非简单的论文堆砌或拼接。
错误方式(当前v4 pipeline的问题):
Smith (2005) 做了xxx
Jones (2008) 做了yyy
Wang (2012) 做了zzz
→ 没有任何分析,只是罗列
正确方式:
主题: 光整流晶体的效率-带宽权衡
问题: 为什么高非线性系数材料往往损伤阈值低?
分析:
- LiNbO3: 相位匹配好(d=25 pm/V)但损伤阈值高(1 GW/cm²)→ 能量输出高但带宽受限
- DAST: 非线性系数极高(d=490 pm/V)但损伤阈值低(0.1 GW/cm²)→ 带宽宽但能量输出低
- 权衡点: 目前缺乏同时满足 >5 THz带宽 AND >100 μJ 能量输出的晶体方案
→ 这是一个有深度的 Gap 分析,不是简单罗列
每段必须包含:
每个主题必须明确回答:
综合分析必须:
综述必须充分利用图表来解释复杂概念和关键数据。 不能用纯文字堆砌。
每篇关键论文(引用>50 或领域里程碑)必须提取并利用其 PDF 中的图表:
图表来源优先级:
get_content — 从 PDF 提取图片(最直接)academic_rag/figure_indexer.py — 从已索引论文获取图表及语义描述academic_rag/enhance_figures.py — AI 增强图表分析每张图表必须包含:
目标: 在开始任何外部检索前,先利用本地知识库获取已有知识,避免重复劳动。
1. 文本检索:
python academic_rag/run_rag.py search "<综述主题>" --top-k 20
→ 获取已索引文献中与主题相关的段落和上下文
2. 图表检索:
python academic_rag/run_rag.py find-figure "<主题关键词>" --subfield <子领域>
→ 获取已索引论文中的图表资产(跳过后续Phase 0中这些论文的重复提取)
3. Zotero文献库检索:
zotero search_library(q="<主题>")
→ 获取Zotero中已有条目的元数据
zotero search_fulltext(q="<关键词>")
→ 全文检索已有PDF中的相关段落
zotero search_annotations(q="<关键词>")
→ 获取用户在PDF中做的高亮和笔记标注
4. 输出知识覆盖率报告:
- 已有论文: [列表] → 直接用于综述,跳过OpenAlex重新发现
- 已有图表: [列表] → 直接分配到主题章节
- 已有笔记: [列表] → 用于深度分析(Phase 1)
- 需新发现: [Gap] → 仅对这些主题调用OpenAlex API
为什么必须先RAG?
academic_rag/ 使用 ChromaDB + BAAI/bge-m3 模型,embedding质量高于关键词匹配目标: 在动笔之前,先收集所有关键论文的图表资产。
对每篇关键论文(引用>50 或主题核心论文):
1. 调用 Zotero MCP get_content(itemKey=论文key, include={pdf: true})
→ 提取 PDF 全文和嵌入图片
2. 调用 Zotero MCP search_fulltext(q="figure", itemKeys=[论文key])
→ 搜索论文中的图表提及
3. 调用 academic_rag figure_indexer 获取已索引图表及 AI 语义描述
4. 建立 图表→主题 语义映射表
图表-主题语义匹配:
对每张提取的图表:
1. 用图表标题/上下文生成 embedding
2. 与综述各主题描述计算余弦相似度
3. 将图表分配到最相关的主题章节
4. 标记: [实验装置] / [数据图] / [原理图] / [对比表]
输出: 图表资产清单 figure_assets.json
{
"theme_name": {
"figures": [
{
"paper_id": "Hoffmann2007",
"figure_number": "Fig. 3",
"type": "experimental_setup",
"description": "TPF excitation scheme for LiNbO3",
"semantic_match": "光整流技术路线 > LiNbO3倾斜脉冲前",
"caption_zh": "LiNbO3倾斜脉冲前激发THz的实验装置示意图",
"source_note": "Adapted from Hoffmann et al. (2007)"
}
]
}
}
每篇论文必须提取:
数据来源优先级:
每个主题的分析维度:
主题: [主题名称]
├── 核心科学问题: [该领域最根本的科学问题是什么?]
├── 技术路线对比:
│ ├── 路线A: [方法] → [性能] → [优势/局限]
│ ├── 路线B: [方法] → [性能] → [优势/局限]
│ └── 对比结论: [两者之间的权衡关系]
├── 核心权衡/张力:
│ ├── 权衡1: [矛盾双方] → [如何平衡] 或 [无法兼得]
│ └── 权衡2: ...
├── 领域共识:
│ └── [大家都认可的观点]
├── 主要争议:
│ └── [尚未解决的分歧]
└── 研究空白(Gap):
├── Gap 1: [具体缺失] → [为什么重要] → [如何填补]
├── Gap 2: ...
└── Gap 3: ...
引言写作模板:
[Paragraph 1: Context - 领域重要性]
太赫兹波段在XXX领域有重要应用前景。然而,高效THz辐射的产生一直是核心技术难题。
[Paragraph 2: 已有进展 - 但存在问题]
近年来,[技术路线A]在[方面]取得了进展(如文献X、Y),但[关键问题仍未解决]。
[Paragraph 3: 研究空白 - Gap Identification]
【Gap Identification】现有文献存在以下不足:
- Gap 1: [具体缺失]
- Gap 2: [具体缺失]
(每个Gap必须基于已发表的论文/数据,不能凭空编造)
[Paragraph 4: 本文目标]
本综述对[范围]篇文献进行系统性主题综合,识别各技术路线的核心权衡与研究空白。
主题章节写作模板:
### [主题名称]
【研究问题】该领域的核心科学问题是:XXX
【背景】[2-3句介绍背景,引用2-3篇奠基性工作]
【跨论文综合】
在[具体技术路线]上,有三类代表性方案:
- 方案A(文献X): [具体方法] → [具体性能](优势:XXX,局限:XXX)
- 方案B(文献Y): [具体方法] → [具体性能](优势:XXX,局限:XXX)
- 方案C(文献Z): [具体方法] → [具体性能](优势:XXX,局限:XXX)
【核心权衡】
这三类方案在[维度A]上表现相近,但在[维度B]上差异显著:
- [权衡1]: 方案A的XXX特性 → 导致方案B的YYY局限性
- [权衡2]: ...
【共识】
目前领域内公认:[共识陈述],证据来自文献X、Y、Z的交叉验证。
【争议】
但在XXX问题上存在分歧:[争议1](文献X认为...,文献Y认为...)
【研究空白】
基于上述分析,该领域存在以下尚未被充分研究的问题:
- Gap 1: [具体缺失](现有论文如X在此问题上只做了YYY,未考虑ZZZ)
- Gap 2: ...
【未来方向】
未来研究应重点关注:如何解决Gap 1...(需要XXX方向的技术突破)
❌ "Recent years, many researchers have studied..."(泛泛而谈) ❌ "Smith did X. Jones did Y. Wang did Z."(罗列无分析) ❌ "This is very important for future research."(无具体内容) ❌ "Table 1 shows the comparison of methods."(只给表没有分析) ❌ 🔴 纯文字综述,零图表 — 违反"图文并茂"原则,打回重写
✅ "We identify a gap in the literature: while Zhang (2015) achieved 2.5 THz bandwidth with LiNbO3 using tilted pulse front, no study has explored whether organic crystal DAST can exceed 5 THz while maintaining >100 μJ output under same pump conditions."
| MCP | 用途 | 使用时机 |
|---|---|---|
academic_rag | 🔴 前置必做 — BGE-M3语义检索已索引文献+图表 | Phase -1,写综述前第一步 |
zotero | 获取 PDF 全文 + 提取图表 + 用户高亮/笔记 | Phase -1(检索已有)+ Phase 0(提取图表) |
semantic-scholar | 论文元数据、引用数、摘要 | Phase 1,批量筛选和排序 |
tavily | 搜索最新进展、补充信息 | 验证 Gap、分析争议时 |
paper-search | 预印本搜索 | 找最新但未正式发表的工作 |
Zotero MCP get_content → PDF 原始图片提取
↓
academic_rag/enhance_figures → AI 增强图表分析(颜色标注、关键区域识别)
↓
academic_rag/figure_indexer → 图表语义索引 + embedding 匹配
↓
综述撰写 → 图表按主题分配合并到正文
在生成最终输出前,必须通过以下审查:
Gate 1: 论文相关性
Gate 2: 摘要质量
= 60% 论文有有效摘要(长度>100字符)
Gate 3: 分组均衡性
= 3 个主题各有 >= 3 篇论文
Gate 4: Gap 有文献支撑
Gate 5: 方法提取完整性
= 80% 的论文提取到具体技术方法(非"---")
"帮我写一篇关于 [主题] 的文献综述"
"基于 OpenAlex 搜索生成 [主题] 的系统性综述"
"用 thematic synthesis 方法分析 [主题] 的研究现状"
literature-review/
├── SKILL.md # 本文件 - 核心技能定义
├── prompts/
│ ├── introduction.md # 引言段落 prompt
│ ├── theme_analysis.md # 主题综合分析 prompt
│ └── gap_identification.md # Gap 识别 prompt
└── templates/
└── review_template.md # 综述撰写模板
系统性综述必须包含 PRISMA 流程图,用 mermaid 绘制:
flowchart TD
A["数据库检索<br/>OpenAlex + Semantic Scholar + RAG"] --> B["初始结果<br/>n = X"]
B --> C{"去重"}
C -->|"DOI 匹配<br/>+ 标题相似度 ≥0.9"| D["去重后<br/>n = Y"]
D --> E{"标题筛选"}
E -->|"排除: 主题不符"| F["标题筛选后<br/>n = Z"]
F --> G{"摘要筛选"}
G -->|"排除: 不满足纳入标准"| H["摘要筛选后<br/>n = A"]
H --> I{"全文筛选"}
I -->|"排除: 详细原因"| J["纳入综述<br/>n = B"]
style A fill:#4a9eff,color:#fff
style J fill:#2d9c2d,color:#fff
当从 OpenAlex、Semantic Scholar、RAG 知识库、Zotero 等多个来源检索文献时,必须执行去重:
| 去重层级 | 方法 | 优先级 | 适用场景 |
|---|---|---|---|
| L1: DOI 精确匹配 | doi1 == doi2 | 最高 | 有 DOI 的正式发表文献 |
| L2: ArXiv ID 匹配 | arxiv:XXXX.XXXX | 高 | 预印本与正式发表版本 |
| L3: 标题相似度 | Levenshtein 或 embedding 余弦 ≥0.9 | 中 | DOI 缺失时的回退方案 |
| L4: 作者+年份组合 | first_author + year + venue | 低 | 以上均无匹配时 |
去重流程:
输入: sources[] = [openalex_results, s2_results, rag_results, zotero_results]
↓
Step 1: 按 DOI 去重 → 保留引用数最高的版本
↓
Step 2: 按 ArXiv ID 去重 → 优先保留已发表版本(有 DOI)
↓
Step 3: 按标题相似度去重 → 人工确认边界情况
↓
输出: unique_papers[] + duplicates_report.json
输出格式: 每次去重记录 duplicates_report.json,包含:
本技能基于学术规范设计,确保生成的文献综述具有真正的学术价值