Academic Literature Search

# 学术文献检索技能

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "Academic Literature Search" with this command: npx skills add jibeilindong/academic-literature-search

学术文献检索技能

概述

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

核心功能

🔍 强大的检索能力

  • 多数据库集成: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 Scholar2.33亿+AI、计算机科学、多学科100请求/5分钟(无认证)
Crossref1.4亿+期刊文章、官方DOI无限制(礼貌使用)
arXiv220万+预印本、计算机、物理、数学无限制
PubMed3500万+生物医学、生命科学10请求/秒

使用示例

基本检索

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())

高级检索

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"
}

作为库使用

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")

参数说明

查询参数

参数类型默认值说明
querystring必需检索查询字符串
databasesarray["semantic_scholar", "crossref"]使用的数据库列表
max_resultsinteger50最大返回数量 (1-1000)
year_rangestring-年份范围,如 "2020-2024"
sort_bystring"relevance"排序方式
sort_orderstring"desc"排序顺序 (asc/desc)
open_access_onlybooleanfalse仅开放获取文献
min_citationsinteger-最小引用数
venue_filterarray-期刊/会议过滤

输出参数

参数类型默认值说明
output_formatstring"markdown"输出格式
output_filestring-输出文件路径
interactivebooleanfalse交互式模式
verbosebooleanfalse详细输出
cachebooleantrue启用缓存
save_resultsbooleanfalse保存结果到文件

配置说明

环境变量

# 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.yamlconfig.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

隐私

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

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Kafka

Kafka - command-line tool for everyday use

Registry SourceRecently Updated
General

Helm

Helm - command-line tool for everyday use

Registry SourceRecently Updated
General

Cms

Cms - command-line tool for everyday use

Registry SourceRecently Updated
General

Valuation

Valuation - command-line tool for everyday use

Registry SourceRecently Updated