零成本学术追踪终极指南:用Zotero-arXiv-Daily打造个性化论文推荐系统

📅 2026/7/18 6:37:06
零成本学术追踪终极指南:用Zotero-arXiv-Daily打造个性化论文推荐系统
零成本学术追踪终极指南用Zotero-arXiv-Daily打造个性化论文推荐系统【免费下载链接】zotero-arxiv-dailyRecommend new arxiv papers of your interest daily according to your Zotero libarary.项目地址: https://gitcode.com/GitHub_Trending/zo/zotero-arxiv-daily在当今信息爆炸的时代学术研究者每天都要面对海量的新论文发布。如何在繁忙的科研工作中高效追踪自己领域的最新进展Zotero-arXiv-Daily项目提供了一个完美的解决方案。这个开源工具能够根据你的Zotero文献库智能推荐arXiv新论文并通过每日邮件自动推送实现零成本、零安装的学术信息自动化管理。 项目核心价值为什么你需要这个工具传统的学术追踪方式存在三大痛点手动搜索耗时费力、信息筛选效率低下、更新提醒不及时。Zotero-arXiv-Daily通过智能算法解决了这些问题个性化推荐基于你的Zotero文献库分析研究兴趣自动化推送每天定时发送最新论文摘要到邮箱多源支持覆盖arXiv、bioRxiv、medRxiv三大预印本平台AI辅助理解使用LLM生成论文的TL;DR快速摘要这个工具特别适合忙碌的研究人员、博士生和学术工作者让你不再错过重要研究同时大幅减少信息筛选时间。️ 5分钟快速部署从零到一的完整教程第一步Fork项目并配置GitHub Actions首先访问项目仓库并点击Fork按钮创建自己的副本Fork完成后进入你的仓库设置配置GitHub Actions环境变量。这是项目运行的关键步骤需要设置几个必要的密钥和变量第二步配置Zotero API密钥要使用Zotero-arXiv-Daily你需要获取Zotero API访问权限。登录Zotero官网进入设置页面的安全选项你需要记录两个关键信息Zotero用户ID一串数字标识符API密钥具有读取权限的访问密钥第三步设置邮件服务参数项目通过SMTP协议发送邮件你需要配置发件人邮箱信息参数说明示例SENDER发件人邮箱地址your_emailqq.comSENDER_PASSWORDSMTP授权码abcdefghijklmnRECEIVER收件人邮箱地址your_emailoutlook.comSMTP_SERVERSMTP服务器地址smtp.qq.comSMTP_PORTSMTP服务器端口465第四步配置个性化参数在GitHub仓库的Variables部分设置CUSTOM_CONFIG变量来定制你的论文推荐偏好zotero: user_id: ${oc.env:ZOTERO_ID} api_key: ${oc.env:ZOTERO_KEY} include_path: null email: sender: ${oc.env:SENDER} receiver: ${oc.env:RECEIVER} smtp_server: smtp.qq.com smtp_port: 465 sender_password: ${oc.env:SENDER_PASSWORD} source: arxiv: category: [cs.AI,cs.CV,cs.LG,cs.CL] include_cross_list: false executor: debug: ${oc.env:DEBUG,null} source: [arxiv]这个配置文件允许你指定关注的arXiv分类、是否包含交叉列表论文等个性化设置。 工作原理深度解析Zotero-arXiv-Daily的核心算法基于向量相似度计算整个流程可以分为四个主要阶段1. 数据收集阶段项目通过API同时获取两方面的数据你的Zotero文献库读取你已收藏的论文作为兴趣基准最新发布的论文从arXiv、bioRxiv、medRxiv获取当日新论文2. 文本嵌入计算使用预训练的嵌入模型如jina-embeddings-v5-text-nano将论文摘要转换为向量表示# 从src/zotero_arxiv_daily/reranker/local.py提取的嵌入计算代码 def encode_texts(self, texts: list[str]) - np.ndarray: 将文本列表编码为向量表示 embeddings self.model.encode( texts, batch_sizeself.batch_size, show_progress_barFalse, **self.encode_kwargs ) return embeddings3. 相似度评分计算新论文与Zotero文献库中论文的余弦相似度并加权平均得到最终推荐分数推荐分数 Σ(相似度 × 时间权重) / Σ(时间权重)其中时间权重确保最近添加的文献对推荐结果影响更大。4. AI摘要生成对于评分最高的论文使用LLM生成简洁的TL;DR摘要# 从src/zotero_arxiv_daily/protocol.py提取的摘要生成逻辑 def generate_tldr_with_llm(self, paper_info: str) - str: 使用LLM生成论文单句摘要 prompt f根据以下论文信息生成一句{language}的TL;DR摘要\n{paper_info} response openai_client.chat.completions.create( modelllm_params[model], messages[{role: user, content: prompt}] ) return response.choices[0].message.content 邮件推送效果展示配置完成后每天你都会收到格式精美的邮件通知每封邮件包含论文标题清晰的论文名称作者信息完整的作者列表AI生成的TL;DR一句话总结论文核心PDF下载链接直接访问原文代码实现链接如有开源代码相关性评分基于你兴趣的匹配度⚙️ 高级配置技巧多平台论文源配置除了arXiv项目还支持bioRxiv和medRxivsource: arxiv: category: [cs.AI, cs.CV] include_cross_list: true biorxiv: category: [biochemistry, genomics] medrxiv: category: [epidemiology, public health]本地运行与调试如果你需要在本地测试或自定义运行可以使用uv工具# 安装依赖 uv sync # 设置环境变量 export ZOTERO_ID你的用户ID export ZOTERO_KEY你的API密钥 export SENDER发件邮箱 export SENDER_PASSWORDSMTP授权码 export RECEIVER收件邮箱 # 运行主程序 uv run main.py工作流触发与监控GitHub Actions提供了灵活的工作流触发方式你可以手动触发测试验证配置是否正确定时自动运行默认每天UTC 22:00执行监控执行日志实时查看处理进度测试工作流的运行状态可以在Actions页面查看 保持项目更新由于项目持续开发建议开启仓库关注功能以获取更新通知点击仓库页面的Watch按钮选择Custom并勾选Releases这样每次有新版本发布时你都会收到通知。 性能优化建议处理大量文献库如果你的Zotero文献库包含数千篇论文可以考虑以下优化设置include_path只关注特定文件夹的文献调整max_paper_num控制每日推荐论文数量使用更快的嵌入模型如jina-embeddings-v5-text-nano避免GitHub Actions超时免费版GitHub Actions有执行时间限制建议设置MAX_PAPER_NUM在合理范围默认100避免同时启用所有论文源定期清理不需要的历史工作流 实际应用场景场景一博士生研究追踪计算机科学博士生小王每天要追踪AI领域的最新进展。他配置了关注cs.AI、cs.CL、cs.CV三个分类每天上午9点准时收到邮件。通过AI生成的TL;DR他能在5分钟内了解10篇最新论文的核心内容大幅提升了文献调研效率。场景二跨学科研究团队一个生物信息学团队需要同时关注arXiv和bioRxiv。他们配置了多源支持团队成员各自设置不同的接收邮箱。项目经理通过定期检查推荐结果发现团队可能感兴趣的交叉领域研究。场景三学术会议准备在重要学术会议如NeurIPS、ICLR投稿截止前后新论文发布频率激增。研究员小李临时将MAX_PAPER_NUM提高到200并设置include_cross_list: true确保不错过任何相关研究。 进阶功能探索自定义推荐算法项目采用模块化设计你可以轻松扩展或修改推荐算法# 在src/zotero_arxiv_daily/reranker/base.py中定义基础接口 class BaseReranker(ABC): abstractmethod def rerank(self, papers: list[Paper], zotero_papers: list[Paper]) - list[Paper]: 重新排序论文列表 pass集成其他论文源项目支持轻松添加新的论文源只需实现对应的Retriever类# 参考src/zotero_arxiv_daily/retriever/arxiv_retriever.py class ArxivRetriever(BaseRetriever): def retrieve(self, date: datetime) - list[RawPaperItem]: 从arXiv检索指定日期的论文 # 实现具体的API调用逻辑邮件模板自定义你可以在src/zotero_arxiv_daily/construct_email.py中修改邮件HTML模板定制符合个人喜好的邮件样式。 最佳实践总结经过实际使用我们总结了以下最佳实践渐进式配置先配置基本功能逐步添加高级特性定期审查每月检查一次推荐结果的相关性利用测试工作流修改配置后先用测试工作流验证关注项目更新及时合并上游更新以获取新功能合理设置分类不要设置过多分类保持聚焦 未来发展方向Zotero-arXiv-Daily项目仍在积极开发中未来可能加入的功能包括多语言支持支持中文、日文等非英语论文社交媒体集成自动分享到Twitter、Mastodon移动端应用提供手机App推送通知协作功能团队共享推荐结果高级过滤基于关键词、作者、机构的智能过滤 开始你的智能学术追踪之旅Zotero-arXiv-Daily将复杂的学术信息管理变得简单高效。通过5分钟的配置你就能建立一套完全自动化的论文推荐系统。无论你是忙碌的研究人员、正在攻读学位的学生还是需要保持前沿视野的行业专家这个工具都能为你节省大量时间让你更专注于核心研究工作。立即访问项目仓库开始你的智能学术追踪之旅吧记住最好的工具是那些能够无缝融入你工作流程的工具而Zotero-arXiv-Daily正是为此而生。【免费下载链接】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),仅供参考