# Academic Literature Search

> 学术文献检索技能

- Skill: `gabrielmoreira/academic-literature-search-2` (Agent Skill, multi-file: 7 files)
- Install (CLI): `npx skillmds@latest add gabrielmoreira/academic-literature-search-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/gabrielmoreira/academic-literature-search-2/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Research & Search
- Author: gabrielmoreira (https://skillmd.com/u/gabrielmoreira)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/gabrielmoreira/academic-literature-search-2

---

# 学术文献检索技能

## 概述

这是一个专注于学术文献检索的专业工具，集成了多个权威学术数据库，提供全面、快速、准确的文献检索服务。支持多数据库并发检索、高级过滤、智能排序和多种输出格式。

## 核心功能

### 🔍 强大的检索能力

- **多数据库集成**：Semantic Scholar、Crossref、arXiv、PubMed
- **智能查询解析**：自然语言、布尔运算、字段限定、短语搜索
- **并发检索**：同时查询多个数据库，毫秒级响应
- **高级过滤**：年份、引用数、期刊类型、开放获取、语言等

### 📖 高级检索特性

- **自然语言查询**
- **布尔运算符** (AND, OR, NOT)
- **字段限定搜索** (title:, author:, year:)
- **范围搜索** (year:2020-2024, citations:>100)
- **通配符搜索**

### 🎯 精准的结果处理

- **智能去重**：基于DOI、标题、作者等多维度去重
- **多维度排序**：引用数、年份、相关性、影响力、趋势
- **高级过滤**：（期刊、开放获取、文献类型）
- **结果丰富**：自动补充元数据、计算影响力指标
- **质量评分**：综合评分系统，提供最佳结果

### 💬 丰富的输出格式

- **Markdown**：适合阅读和笔记
- **JSON**：适合程序处理
- **CSV/Excel**：适合数据分析和导入
- **BibTeX/RIS**：适合参考文献管理
- **HTML/XML**：适合网页展示和数据交换

### ⚡ 性能优化

- **多级缓存**：内存、磁盘、分布式缓存
- **智能重试**：自动处理速率限制和网络错误
- **渐进式加载**：快速返回第一批结果
- **请求合并**：减少API调用次数

## 支持的数据库

| 数据库 | 数据量 | 优势领域 | 速率限制 |
|--------|--------|----------|----------|
| Semantic Scholar | 2.33亿+ | AI、计算机科学、多学科 | 100请求/5分钟（无认证） |
| Crossref | 1.4亿+ | 期刊文章、官方DOI | 无限制（礼貌使用） |
| arXiv | 220万+ | 预印本、计算机、物理、数学 | 无限制 |
| PubMed | 3500万+ | 生物医学、生命科学 | 10请求/秒 |

## 使用示例

### 基本检索

```python
from agent import AcademicLiteratureSearchSkill
import asyncio

async def main():
    skill = AcademicLiteratureSearchSkill()
    
    params = {
        "query": "deep learning in medical imaging",
        "databases": ["semantic_scholar"],
        "max_results": 10
    }
    
    result = await skill.execute(params)
    print(result["results"])

asyncio.run(main())
```

### 高级检索

```python
params = {
    "query": "attention mechanism AND transformer",
    "databases": ["semantic_scholar", "crossref"],
    "year_range": "2020-2024",
    "max_results": 100,
    "sort_by": "citations",
    "min_citations": 50,
    "open_access_only": True,
    "output_format": "markdown"
}
```

### 作为库使用

```python
from agent import LiteratureSearchEngine

async def search():
    async with LiteratureSearchEngine() as engine:
        papers = await engine.search(
            query="reinforcement learning",
            databases=["semantic_scholar", "arxiv"],
            max_results=20
        )
        for paper in papers:
            print(f"{paper.title} - {paper.citation_count} citations")
```

## 参数说明

### 查询参数

| 参数 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| query | string | 必需 | 检索查询字符串 |
| databases | array | ["semantic_scholar", "crossref"] | 使用的数据库列表 |
| max_results | integer | 50 | 最大返回数量 (1-1000) |
| year_range | string | - | 年份范围，如 "2020-2024" |
| sort_by | string | "relevance" | 排序方式 |
| sort_order | string | "desc" | 排序顺序 (asc/desc) |
| open_access_only | boolean | false | 仅开放获取文献 |
| min_citations | integer | - | 最小引用数 |
| venue_filter | array | - | 期刊/会议过滤 |

### 输出参数

| 参数 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| output_format | string | "markdown" | 输出格式 |
| output_file | string | - | 输出文件路径 |
| interactive | boolean | false | 交互式模式 |
| verbose | boolean | false | 详细输出 |
| cache | boolean | true | 启用缓存 |
| save_results | boolean | false | 保存结果到文件 |

## 配置说明

### 环境变量

```bash
# API 密钥（可选，不设置也可运行，但建议设置自己的密钥）
# 获取方式：
# - Semantic Scholar: https://www.semanticscholar.org/product/api
# - PubMed: https://www.ncbi.nlm.nih.gov/account/

SEMANTIC_SCHOLAR_API_KEY="your_key_here"
CROSSREF_API_EMAIL="your_email@example.com"
PUBMED_API_KEY="your_key_here"
```

### 配置文件

复制 `config.example.yaml` 为 `config.yaml` 并修改配置。

## 错误处理

- **网络错误**：自动重试，提供降级方案
- **API限制**：智能退避，多API密钥轮换
- **无效查询**：提供修正建议
- **无结果**：提供扩展搜索建议

## 许可证

MIT License

## 安全与隐私

### 数据流向
- 检索查询会发送到第三方API：Semantic Scholar、Crossref、PubMed、arXiv
- 搜索关键词和论文元数据会被发送到这些服务

### 建议
- 使用虚拟环境运行：`python -m venv venv && source venv/bin/activate`
- 设置自己的 API 密钥以使用您的凭证
- 默认使用 openclaw@example.com 作为 Crossref 邮箱
- 缓存目录：~/.cache/openclaw/literature

### 隐私
- 如需高隐私保护，避免使用默认凭证
- 可在代码中审查网络请求目的地

