欢迎使用ArxivGetter,本项目用于每天获取arxiv上最新的论文并自动推送至您的邮箱中,有关于文章类型数量等均可自定义,同时支持个性化总结
准备:该项目需要一台长期运行的服务器(Linux系统,对性能没有任何要求,真的就是能开机就够),两个邮箱账户(至少一个开启smpt服务),一个用于总结的LLM API key(本项目使用的是智谱模型)
如果您在使用过程中遇到了问题,可以咨询作者
QQ: 1833299761
git clone https://github.com/xmdjy/arxivgetter.git
cd arxivgetter首先创建一个用于arxivgetter的虚拟环境
python3 -m venv arxivgetter安装完成后激活环境
source arxivgetter/bin/activate接下来安装依赖
pip install -r requirements.txt使用前请手动创建一个config.yaml的配置文件,用于自定义邮箱、LLM调用以及论文筛选等信息,具体格式如下:
email:
sender: ""
server: ""
port:
password: ""
to_addr: ""
llm:
api_keys: ''
papaers:
max_results:
query_content: ""自动邮件推送部分请参考有关smpt服务的相关内容自己配置,有关于论文筛选的参数max_results表示每日抓取文章上限,query_content表示文章类型,如与人工智能相关的类型名为cs.AI
其他类名请参考arxiv分类列表
更改prompt以实现自定义请修改utils/ai_summarize中的message中的content
配置完成后即可运行脚本
python main.py这里建议使用linux中的systemd服务实现 首先需要确定以下三个参数:
- user:
whoami获取 - workingdirectory:
pwd获取 - execstart:python的绝对路径,可通过
which python获取
下面给服务器开24h的运行
sudo nano /etc/systemd/system/arxivgetter.service创建了一个新service文件,其中服务名称为arxivgetter,内容如下:
# /etc/systemd/system/arxivgetter.service
[Unit]
Description=ArXiv Daily Paper Getter Service
After=network.target
[Service]
User=
Group=
WorkingDirectory=
Restart=on-failure
RestartSec=5
StandardOutput=journal
StandardError=journal
Environment="PYTHONUNBUFFERED=1"
[Install]
WantedBy=multi-user.target重新加载systemd配置文件
sudo systemctl daemon-reload启动服务
sudo systemctl start arxivgetter.service检查服务状态
sudo systemctl status arxivgetter.service设置开机自启
sudo systemctl enable arxivgetter.service重启服务
sudo systemctl restart arxivgetter.service