Repolode
Future-House

Future-House/paper-qa

面向科学文献的智能体 RAG 工具,基于 PDF 等文档回答问题并附带文内引用。

Star
9,422
Fork
944
未关闭 Issue
155
最近提交
7天前

这是什么?

PaperQA2 是一个 Python 包,用于对 PDF、文本、Microsoft Office 文档和源代码文件做检索增强生成(RAG),重点面向科学文献。它会在本地文档目录中检索相关段落,经过摘要与重排序后生成带有文内引用的回答,引用可追溯到原始论文。

它还会通过 Semantic Scholar、Crossref、Unpaywall 等服务补充论文元数据,包括被引次数、期刊信息和撤稿检查。使用方式包括命令行工具 pqa(支持建立索引、全文检索和保存配置),以及同步与异步两套 Python API。

模型调用基于 LiteLLM,可接入 OpenAI、Anthropic、Gemini,也可使用 llama.cpp、llamafile、Ollama 等本地模型。嵌入支持稠密、稀疏和混合模式,还可使用本地 Sentence Transformers 模型,以及 Qdrant 等外部向量库。

核心功能

  • 01基于本地 PDF、文本、Office 文件和代码回答问题,并附带文内引用。
  • 02智能体工作流:模型可迭代地检索、收集证据并生成答案。
  • 03通过元数据服务补充被引次数、期刊质量与撤稿信息。
  • 04提供命令行工具 pqa 用于建立索引、检索和提问,并提供 Python 异步 API。
  • 05兼容所有 LiteLLM 支持的模型,包括本地部署的模型。

适用场景

  • 针对一批研究论文,查找某个科学问题的相关证据。
  • 在文献集合中发现相互矛盾或相互支持的结论。
  • 基于本地文档构建可检索、带引用的知识库。

快速上手

  1. 1

    从 PyPI 安装包

    pip install paper-qa
  2. 2

    创建存放论文的文件夹

    mkdir my_papers
  3. 3

    进入文件夹,使用 pqa 命令行提问(需要 OPENAI_API_KEY 等 LLM API 密钥)

    cd my_papers && pqa ask 'What is PaperQA2?'

使用前须知

  • 需要 LLM 的 API 密钥,或自行部署的开源 LLM 服务器才能运行。
  • 索引 100 篇以上论文时,可能需要 Crossref 和 Semantic Scholar 的 API 密钥以避免公共速率限制。
  • 版本 5 需要 Python 3.11 或更高版本,旧版 PaperQA 保存的 Docs 对象需要重新构建。

标签

常见问题

paper-qa 是什么?
面向科学文献的智能体 RAG 工具,基于 PDF 等文档回答问题并附带文内引用。 PaperQA2 是一个 Python 包,用于对 PDF、文本、Microsoft Office 文档和源代码文件做检索增强生成(RAG),重点面向科学文献。它会在本地文档目录中检索相关段落,经过摘要与重排序后生成带有文内引用的回答,引用可追溯到原始论文。
paper-qa 可以免费使用吗?用的什么许可证?
paper-qa 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
paper-qa 还在维护吗?
活跃维护中。paper-qa 最近一次提交是在 2026年10月13日。
paper-qa 适合用来做什么?
针对一批研究论文,查找某个科学问题的相关证据。 在文献集合中发现相互矛盾或相互支持的结论。 基于本地文档构建可检索、带引用的知识库。
paper-qa 怎么安装和运行?
从 PyPI 安装包: pip install paper-qa 创建存放论文的文件夹: mkdir my_papers 进入文件夹,使用 pqa 命令行提问(需要 OPENAI_API_KEY 等 LLM API 密钥): cd my_papers && pqa ask 'What is PaperQA2?'
在哪里获取 paper-qa?
源代码和安装说明在 GitHub 上:https://github.com/Future-House/paper-qa

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目