现可直接在以下链接中访问尝试👇 https://zotero-auto-script.onrender.com
若需导入到自己的ZOTERO文献库中,请按README中的步骤,部署到本地。或是直接告诉AI这个github链接。
使用前需填入自己的ZOTERO API KEY等系列参数。
这个项目就是为了解决一个很现实的问题:毕业论文时间紧,引用处理太慢。
先把最费时间的步骤提速,再谈更高级的自动化。
这个项目不是从产品化目标开始,而是我写毕业论文时遇到的实际问题:引用处理很耗时间。平时找文献,我主要走两条路径。第一条是先写好一段内容,再让 AI 按语义或 query 找候选文献。第二条是看师兄论文或综述里的参考文献,觉得合适就直接使用。问题是这两条路最后都卡在同一个地方:核验和导入太慢。尤其第二条,一条条复制粘贴到 Zotero,时间成本很高。
我做这个项目的核心目标只有一个:省时间。重点不是追求复杂能力,而是缩短从 claim 到可用引用的路径。我的做法也很直接:能自动化的重复操作就自动化(比如批量校验、批量导入),必须人工判断的地方就保留,避免最后集中返工。针对第二条路径,我最想解决的是批量自动导入 Zotero,减少机械的复制粘贴。
所以这套实现更偏务实:verification 负责 BibTeX -> 校验/纠偏 -> Zotero 导入,full 负责 claim/query -> 候选检索 -> verification -> ranking,再配合日志做复核记录。协作者拿过去就能直接用,不用先理解复杂模型,也不用承担全自动误判的风险。
如果你和我一样,现在最重要的是把论文往前推进,这个项目的价值就看三件事:减少重复操作、减少工具切换、减少后期因为引用问题返工。当前我也给它定了边界:先不追求自动往正文里插引文,先把稳定提效这件事做扎实,再逐步扩展。
当前项目现在支持两种运行模式:
verification:校验已有BibTeX并导入 Zoterofull:输入单条或批量 claim,执行 query 构建、Semantic Scholar 检索、Crossref 校验、ranking,并记录 review log / feedback log
建议使用 Python 3.10+
安装依赖:
pip install -r requirements.txt复制 .env.example 为 .env,填写配置:
copy .env.example .envZOTERO_LIBRARY_IDZOTERO_LIBRARY_TYPE:user或groupZOTERO_API_KEYCROSSREF_MAILTO
ZOTERO_LIBRARY_IDZOTERO_LIBRARY_TYPEZOTERO_API_KEYCROSSREF_MAILTOPIPELINE_MODE=full- 二选一:
CLAIM_TEXT=你要检索 citation 的正文/claimCLAIMS_INPUT_PATH=claims.txt或.jsonl文件路径
SEMANTIC_SCHOLAR_API_KEYSEGMENT_IDSEMANTIC_SCHOLAR_TOP_KREVIEW_LOG_PATHREVIEW_FEEDBACK_PATH
默认模式为 verification:
python main.py流程:
- 读取
reference.bib - 用 Crossref 校验 / 纠偏
- 导入 Zotero
PIPELINE_MODE=full
CLAIM_TEXT=Recent machine learning methods improve polymer property prediction under low-data settings.
SEGMENT_ID=test_claim_001然后运行:
python main.py你可以准备一个 claims.txt:
Recent machine learning methods improve polymer property prediction under low-data settings.
Graph neural networks have shown promise in materials discovery tasks.
然后在 .env 中设置:
PIPELINE_MODE=full
CLAIMS_INPUT_PATH=claims.txt也支持 .jsonl,每行例如:
{"segment_id":"intro_001","claim_text":"Recent machine learning methods improve polymer property prediction under low-data settings."}现在不是 LLM 先深度语义理解再拆关键词。
当前第一版是一个 rule-based query building + Semantic Scholar search 流程:
- 对 claim 做基础标准化
- 用正则抽取英文 token
- 去掉 stopwords
- 生成 1-2 个简化 rewrite query
- 把原 claim 和 rewrite 一起送给 Semantic Scholar 的 paper search API
- 合并去重结果
- 再用 Crossref 做真实性校验
- 最后做 ranking
也就是说,现在更接近:
- 轻量规则语义压缩
- 不是 LLM semantic parsing
- 不是 embedding rerank
- 也不是 agentic decomposition
- full 模式当前只接了
Semantic Scholar - 还没有接
OpenScholar - 还没有自动插 citation,只输出候选和 review / feedback logs
- 线上评估依赖这些日志逐步积累