这个项目是一个基于Python的论文摘要生成器,它可以从PubMed Central (PMC)获取论文全文,使用LLM-agent来生成论文信息和总结,并将结果保存到CSV文件和SQLite数据库中。
- 从PMC获取论文全文
- 使用LangGraph构建的流程生成论文总结
- 提取论文的关键信息,包括:
- 文章ID(DOI, PMC, PMID)
- 文章标题
- 文章内容
- 摘要描述
- 功能
- 主页
- 关键词
- 工具类型
- 主题
- 将提取的信息保存到
db文件夹中的CSV文件和SQLite数据库 - 提供详细的日志记录,同时输出到文件和控制台
- 在处理多篇论文时显示进度信息
paper-summary-generator/
├── src/
│ ├── paper_processor.py
│ └── utils/
│ ├── paper_summary.py
│ └── bridge_llm/
│ └── .env
├── db/
│ ├── paper_summaries.csv
│ └── paper_summaries.db
├── logs/
│ └── paper_processor_YYYYMMDD_HHMMSS.log
├── README.md
├── LICENSE
├── .gitignore
└── environment.yml
-
确保已安装 Conda。如果没有,请从 Conda 官网 下载并安装。
-
克隆项目仓库:
git clone https://github.com/your-username/paper-summary-generator.git cd paper-summary-generator -
使用 environment.yml 文件创建新的 Conda 环境:
conda env create -f environment.yml
-
激活环境:
conda activate langgraph_paper_summary
在 src/utils/bridge_llm/.env 文件中配置以下环境变量:
DOUBAO_MODEL_ID=your_entrypoint_id
ARK_API_KEY=your_ark_api_key
ARK_API_BASE_URL=https://ark.cn-beijing.volces.com/api/v3
OLLAMA_BASE_URL1=http://your_ollama_url1:port
OLLAMA_BASE_URL2=http://your_ollama_url2:port
请确保将 your_ark_api_key、your_ollama_url1 和 your_ollama_url2 替换为实际的值。环境变量文件现在使用相对路径加载,无需手动指定完整路径。
- 确保已完成环境配置和依赖安装。
- 在
src/paper_processor.py的main函数中提供要处理的PMCID列表。 - 运行
paper_processor.py脚本:python src/paper_processor.py
db/paper_summaries.csv: 包含所有处理过的论文信息的CSV文件。db/paper_summaries.db: 包含所有处理过的论文信息的SQLite数据库。logs/paper_processor_YYYYMMDD_HHMMSS.log: 包含详细运行日志的文件。
- 确保您有足够的权限访问PMC API并下载论文内容。
- 脚本会过滤掉一些与主题无关的部分(如方法、参考文献等),以减少token消耗。
- 日志信息会同时输出到控制台和日志文件,方便实时查看处理进度和调试。
- 处理多篇论文时,程序会显示当前处理进度,如"正在处理第 X/Y 篇论文"。
- 如果遇到任何问题,请检查控制台输出和日志文件以获取详细信息。
欢迎提交问题和拉取请求。对于重大更改,请先开issue讨论您想要更改的内容。