学术论文数据采集与语义搜索工具集。包含从 OpenReview 爬取会议论文,以及基于 Embedding 的论文相似度搜索。
| 子项目 | 说明 |
|---|---|
| OpenReviewCrawler | 通过 OpenReview 官方 API 爬取会议论文(如 NeurIPS 2025),输出 JSON/CSV |
| PaperSimilaritySearch | 基于语义 Embedding 的论文相似度搜索,支持交互式/单次/批量查询 |
- 采集论文:用 OpenReviewCrawler 拉取会议论文列表并保存为 JSON。
- 语义搜索:用 PaperSimilaritySearch 将上述 JSON 作为数据源,按标题/摘要做相似度检索。
两者通过 JSON 文件衔接:爬虫输出路径可直接配置为搜索系统的数据源(默认已指向 OpenReviewCrawler/output/neurips2025_papers.json)。
cd OpenReviewCrawler
pip install -r requirements.txt
python crawl.py输出在 OpenReviewCrawler/output/:
neurips2025_papers.jsonneurips2025_papers.csv
cd PaperSimilaritySearch
pip install -r requirements.txt
python search.py首次运行会为数据源生成并缓存 Embedding,之后可进行交互式搜索。详见各子项目 README。
PaperTools/
├── README.md # 本文件
├── OpenReviewCrawler/ # 论文爬虫
│ ├── crawl.py # 主爬取脚本
│ ├── show_raw_data.py # API 数据结构示例
│ ├── requirements.txt
│ ├── README.md
│ └── output/ # 爬取结果 (JSON/CSV)
└── PaperSimilaritySearch/ # 论文相似度搜索
├── config.py # 数据源与模型配置
├── data_loader.py
├── embedder.py
├── similarity.py
├── search.py # 主程序入口
├── requirements.txt
├── README.md
└── data/embeddings/ # Embedding 缓存
- Python:建议 3.10+
- OpenReviewCrawler:
openreview-py>=1.40.0 - PaperSimilaritySearch:
sentence-transformers、torch、numpy、transformers等(见子项目requirements.txt)
各子项目可独立安装依赖与运行,互不强制依赖。
- 爬虫用法与字段说明:OpenReviewCrawler/README.md
- 搜索用法、参数、数据源与模型配置:PaperSimilaritySearch/README.md
MIT License