Repolode
Future-House

Future-House/paper-qa

科学論文などの文書を対象に質問へ回答し、本文中に引用を付けて返すエージェント型RAGツール。

スター
9,422
フォーク
944
未解決の Issue
155
最終コミット
7 日前

これは何?

PaperQA2は、PDF、テキストファイル、Microsoft Office文書、ソースコードを対象にした検索拡張生成(RAG)用のPythonパッケージで、特に科学文献に重点を置いています。ローカルの文書フォルダを検索して関連する箇所を集め、要約して再ランキングしたうえで、元の論文を指す本文中の引用付きで回答を生成します。

Semantic Scholar、Crossref、Unpaywallなどのプロバイダーから、被引用数、掲載誌情報、撤回状況の確認といった論文メタデータを取得し、検索結果を補強できます。インデックス作成、全文検索、設定の保存に対応したコマンドラインツールpqaから利用できるほか、Pythonの同期・非同期APIからも利用できます。

モデルへのアクセスにはLiteLLMを使うため、OpenAI、Anthropic、Geminiに加え、llama.cpp、llamafile、Ollamaなどでローカル実行するモデルも利用できます。埋め込みにはdense、sparse、hybridを使え、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 CLIで質問します(OPENAI_API_KEYなどのLLM APIキーが必要です)

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

使う前に知っておきたいこと

  • 動作にはLLM APIキー、またはローカルでホストされたオープンソースLLMサーバーが必要です。
  • 100件以上の論文を大量にインデックス化する場合、公開APIのレート制限を避けるためにCrossrefとSemantic ScholarのAPIキーが必要になることがあります。
  • バージョン5にはPython 3.11以降が必要です。また、古いPaperQAのpickle化されたDocsオブジェクトは再構築する必要があります。

トピック

よくある質問

paper-qa とは?
科学論文などの文書を対象に質問へ回答し、本文中に引用を付けて返すエージェント型RAGツール。 PaperQA2は、PDF、テキストファイル、Microsoft Office文書、ソースコードを対象にした検索拡張生成(RAG)用のPythonパッケージで、特に科学文献に重点を置いています。ローカルの文書フォルダを検索して関連する箇所を集め、要約して再ランキングしたうえで、元の論文を指す本文中の引用付きで回答を生成します。
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 CLIで質問します(OPENAI_API_KEYなどのLLM APIキーが必要です): cd my_papers && pqa ask 'What is PaperQA2?'
paper-qa はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/Future-House/paper-qa

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト