项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 9564
使用教程
环境要求
- Python 3.11 及以上版本(版本 5 要求 Python 3.11+)
- 一个可用的 LLM API Key,如 OPENAI_API_KEY,或自建兼容 LiteLLM 的开源 LLM 服务
- 若需索引 100 篇以上论文,建议准备 Crossref 和 Semantic Scholar 的 API Key
- 待检索的论文文件目录(支持 PDF、文本文件、Office 文档和源码文件)
安装与启动步骤
-
1安装 paper-qa
从 PyPI 安装 PaperQA2(即版本 5),注意必须是 Python 3.11 及以上环境;开发用途请参考 CONTRIBUTING.md。
pip install paper-qa>=5 -
2配置 LLM API Key
PaperQA2 依赖 LLM 运行,需设置兼容 LiteLLM 的模型 API Key 环境变量;也可改用 llamafile 等自建开源 LLM 服务。
export OPENAI_API_KEY=sk-xxxxxxxx -
3准备论文目录
新建一个存放论文的目录,示例中下载了一篇 arXiv PDF 放进去,作为待索引的语料。
mkdir my_papers curl -o my_papers/PaperQA2.pdf https://arxiv.org/pdf/2409.13740 cd my_papers -
4提问获取答案
在论文目录下执行 ask 子命令,程序会先索引本地 PDF、抓取元数据,再检索并生成带引用的答案。
pqa ask 'What is PaperQA2?' -
5命名索引并全文搜索
把当前目录索引起名保存,之后可用 search 子命令做全文检索,或用 ask 针对该索引提问。
pqa -i nanomaterials index pqa -i nanomaterials search thermoelectrics pqa -i nanomaterials ask 'Are there nm scale features in thermoelectric materials?' -
6Python 中调用
除命令行外,也可在 Python 代码中直接调用 ask 函数,通过 Settings 指定温度、论文目录等参数。
from paperqa import Settings, ask answer_response = ask( "What is PaperQA2?", settings=Settings(temperature=0.5, paper_directory="my_papers"), )
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
OPENAI_API_KEY | 是 | LLM 提供商 API Key,PaperQA2 运行必须先配置 | sk-xxxxxxxx |
CROSSREF_API_KEY | 否 | 索引大量论文时避免 Crossref 公共接口限流 | your-crossref-key |
SEMANTIC_SCHOLAR_API_KEY | 否 | 索引大量论文时避免 Semantic Scholar 限流 | your-s2-key |
PQA_HOME | 否 | 历史答案与索引的存储目录,默认 ~/.pqa/ | ~/.pqa/ |
temperature | 否 | LLM 采样温度,可通过命令行参数或 Settings 设置 | 0.5 |
parsing.chunk_size | 否 | PDF 解析分块大小,修改后会自动重建索引 | 5000 |
如何确认成功
执行 pqa ask 后看到程序索引本地 PDF 并返回带引用的答案,说明运行成功;也可用 pqa view 查看全部当前设置。
常见问题
Q:需要什么版本的 Python?
A:PaperQA2(版本 5)要求 Python 3.11 及以上,请先确认 python --version 满足要求再安装。
Q:没有 OpenAI Key 能用吗?
A:可以。除设置 API Key 外,README 说明也可搭配合规 LiteLLM 的开源 LLM 服务器,例如使用 llamafile 自建。
Q:索引很多论文时报限流错误怎么办?
A:索引 100 篇以上论文时,建议申请 Crossref 和 Semantic Scholar 的 API Key,并设置为 CROSSREF_API_KEY 和 SEMANTIC_SCHOLAR_API_KEY 环境变量。
Q:之前的索引和答案保存在哪里?
A:保存在 PQA_HOME 目录,默认是 ~/.pqa/;下次查询同一目录会跳过已完成的索引和分块步骤,也可用 search 子命令查看历史答案。
Q:如何复用自己保存的配置?
A:用 pqa -s 名称 --参数 save 保存配置,之后通过 pqa -s 名称 ask '...' 调用;内置模板如 fast 可用 pqa -s fast view 查看。
注意事项
- 命令行中有 pqa --help 可查看全部选项和简短说明,pqa view 可查看所有设置
- 更改 chunk_size 等影响索引的设置后,PaperQA2 会自动重新创建索引
- 不要将真实 API Key 提交到版本库,示例中的 sk-xxxxxxxx 仅为占位
- 本项目为 CalVer 发布,请注意版本号变化带来的差异
核心亮点
- 答案自动附带引用来源,可追溯,适合科研场景
- 支持多种向量数据库和 LLM 后端,灵活可定制
- 针对科学文献优化,检索精度高于通用 RAG 方案
不足之处
- 配置和使用需要一定技术门槛,非纯小白友好
- 对超长文档或海量文献的处理性能待观察
适用场景
- 科研人员快速查阅多篇论文并获取带引用的答案
- 学术写作时辅助文献综述和引用整理
- 企业知识库中针对技术文档的精准问答
替代项目
LlamaIndex、LangChain、Haystack
同类项目推荐
CiteProof-AI-MCP
开源
给 AI 研究报告加引用核验和可复现审计
Open-source research assistant and MCP audit toolkit for systematic reviews: cited r···
net-deep-research
开源
让AI智能体实时联网做深度调研,结果带可靠引用
Deep research skill for AI agents: live web research, source reputation checks, safe···
LoFS
开源
本地文件秒变知识库,对话式检索即问即答
LoFS 面向本地知识库的桌面级文件管理与信息检索和对话应用
docsmint
开源
一份知识库,人和 AI 都能查能用
Open-source knowledge base for people and AI agents. Rich-text editing, hybrid searc···
langconnect
开源
上传文档即得问答 API,省去自建 RAG 管道
A managed RAG API server.
KAG
开源
专业资料问 AI 也能答得准,知识库不再吃灰
KAG is a logical form-guided reasoning and retrieval framework based on OpenSPG engi···
orangeo-ai-visibility-skill
开源
一键扫描,让品牌在AI搜索中脱颖而出
Open-source GEO / AEO skill for AI visibility readiness: check robots.txt, llms.txt,···
azure-ai-search-multimodal-sampl···
开源
让AI同时看懂图文,多模态问答开箱即用
A sample app for the Multimodal Retrieval-Augmented Generation pattern running in Az···
Awesome-Multimodal-Modeling
开源
一页看全多模态大模型论文与项目,省去到处翻找
Awesome Multimodal Modeling [Covers MLLM, UMM, and NMM]
