Zotero-arXiv-Daily 实战指南:免费实现每日个性化 arXiv 论文推送的三步流程
【免费下载链接】zotero-arxiv-dailyRecommend new arxiv papers of your interest daily according to your Zotero libarary.项目地址: https://gitcode.com/GitHub_Trending/zo/zotero-arxiv-daily
逐条翻 arXiv 列表、人工筛选标题,是许多研究者每天都在付出的信息过载成本。Zotero-arXiv-Daily 会基于你的 Zotero 图书馆内容,每天生成一份个性化的 arXiv 论文推送邮件并发送到你的邮箱,把筛选这件事自动化。
它如何工作:从 Zotero 图书馆到 arXiv 论文推送邮件
Zotero-arXiv-Daily 是一个零安装的 GitHub Actions 工作流,没有服务器成本。完整链路分四段:先通过 API 读取你的 Zotero 图书馆,得到已积累的论文语料;再按预设分类抓取 arXiv、bioRxiv、medRxiv 前一天发布的新论文;逐篇计算新论文与图书馆的 embedding 相似度(近期入库的论文权重更高),按相关性排序;最后由 LLM 生成一行 TLDR,组装成 HTML 邮件经 SMTP 发出。本质上是一条轻量的个性化论文推荐流水线。
开始前的 Zotero 密钥与邮件参数完整清单
如何获取 Zotero User ID 与 API Key
- ZOTERO_ID:一串数字(不是用户名),在 Zotero 官网的 Applications 页面查看
- ZOTERO_KEY:在同一页面新建 private key,具备读取权限即可
如何准备 SMTP 发件方与 LLM API 参数
- SENDER / RECEIVER:发件人与收件人邮箱;发件方必须使用邮箱服务商的SMTP 授权码(不是登录密码),端口常用 465
- OPENAI_API_KEY / OPENAI_API_BASE:生成 TLDR 用的 LLM API,任何兼容 OpenAI 格式的服务均可
- arXiv 分类:目标领域的分类缩写,如 cs.AI、cs.CL
从 Fork 到收到第一封邮件的首次跑通全流程
先把仓库 fork 到你自己的账号下,无需本地安装:
然后进入 fork 仓库的 Settings → Secrets and variables → Actions,添加五个 secret:ZOTERO_ID、ZOTERO_KEY、SENDER、SENDER_PASSWORD、RECEIVER。Secret 加密存储,任何人不可见:
再切到 Variables 页签,新增公开变量CUSTOM_CONFIG并粘贴下方模板,${oc.env:XXX}会自动引用刚填好的 secret:
zotero: user_id: ${oc.env:ZOTERO_ID} api_key: ${oc.env:ZOTERO_KEY} email: sender: ${oc.env:SENDER} receiver: ${oc.env:RECEIVER} smtp_server: smtp.qq.com smtp_port: 465 sender_password: ${oc.env:SENDER_PASSWORD} llm: api: key: ${oc.env:OPENAI_API_KEY} base_url: ${oc.env:OPENAI_API_BASE} generation_kwargs: model: gpt-4o-mini source: arxiv: category: ["cs.AI", "cs.CL"] executor: source: ['arxiv']运行前在 Actions 页手动触发Test workflow:它固定取 5 篇 arXiv 论文,方便快速验证。日志变绿且邮箱收到推送邮件,即算跑通。
每日论文推送邮件里各字段怎么读
每篇论文是一个卡片:标题、作者与单位;Relevance按与你图书馆的相似度降序排列(以星级或数值展示);TLDR是 LLM 生成的一句话概括,用于快速判断是否值得读;底部PDF按钮直达全文,有开源代码时还会给出Code按钮。第一次使用建议按顺序扫读前几篇的 TLDR。
长期运行:每日自动推送与常见故障排查
主工作流每天 22:00 UTC 自动运行,抓取前一天发布的新论文;周末与节假日无新论文时,日志会出现 No new papers found,属正常现象。配置期间建议用 Actions 页的 Run workflow 按钮手动触发,随时验证:
常见故障点:邮件没收到多为授权码失效或端口不符,核对 SENDER_PASSWORD;Zotero 拉取失败多为 key 权限不足;运行超时(公有仓库单次上限 6 小时)应调低论文数量上限。另外把仓库 Watch 设为 All Activity,定期把上游提交合并进 fork,避免功能落后。
定制扩展往哪里挖:推荐与邮件构建源码模块
想调整相关性打分,入口在 src/zotero_arxiv_daily/reranker/,内含 local(本地 sentence-transformers 模型)与 api(远程 embedding 服务)两种实现;论文抓取逻辑在 retriever/ 目录,邮件模板与星级逻辑在 construct_email.py。
本地调试可先git clone https://gitcode.com/GitHub_Trending/zo/zotero-arxiv-daily到本机,配好环境变量后执行uv run src/zotero_arxiv_daily/main.py,不占用 Actions 配额。
这套工具适合已维护 Zotero 图书馆、arXiv 分类偏好明确的人:配置完成后每天拿到一份预筛好的论文列表。推荐逻辑是简单的 embedding 相似度,不保证兴趣建模完全精准,想深入分析需自行改源码;fork 方式部署也需定期同步上游更新,介于此点的人可以先观望。
【免费下载链接】zotero-arxiv-dailyRecommend new arxiv papers of your interest daily according to your Zotero libarary.项目地址: https://gitcode.com/GitHub_Trending/zo/zotero-arxiv-daily
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考