Repolode
Future-House

Future-House/paper-qa

Агентный RAG-инструмент для ответов на вопросы по научным статьям и другим документам с внутритекстовыми ссылками на источники.

Звёзды
9,422
Форки
944
Открытые issues
155
Последний коммит
7 дней назад

Что это?

PaperQA2 — Python-пакет для генерации с дополнением извлечённой информацией (RAG) по PDF-файлам, текстовым файлам, документам Microsoft Office и исходному коду. Он ориентирован прежде всего на научную литературу. Пакет ищет документы в локальной папке, находит подходящие фрагменты, обобщает и ранжирует их, а затем формирует ответ с внутритекстовыми ссылками на исходные статьи.

Результаты можно дополнить метаданными статей: например, числом цитирований, сведениями о журнале и проверкой на отзыв. Эти данные берутся у таких поставщиков, как Semantic Scholar, Crossref и Unpaywall. Пакет доступен через CLI-инструмент pqa для индексации, полнотекстового поиска и сохранения настроек, а также из Python — через синхронный и асинхронный API.

Доступ к моделям осуществляется через LiteLLM, поэтому можно использовать OpenAI, Anthropic, Gemini и локально размещённые модели, например llama.cpp, llamafile или Ollama. Для эмбеддингов доступны плотный, разреженный и гибридный варианты; также поддерживаются локальные модели Sentence Transformers и внешние векторные хранилища, такие как Qdrant.

Ключевые возможности

  • 01Отвечает на вопросы по локальным PDF-файлам, текстовым документам, файлам Office и коду, добавляя внутритекстовые ссылки на источники.
  • 02Агентный процесс, в котором языковая модель итеративно ищет информацию, собирает данные и формирует ответ.
  • 03Дополняет статьи числом цитирований, оценками качества журналов и результатами проверки на отзыв, используя метаданные от внешних поставщиков.
  • 04CLI-инструмент pqa для индексации, поиска и отправки запросов, а также асинхронный Python API.
  • 05Работает с любой моделью, совместимой с LiteLLM, в том числе с локально размещёнными моделями.

Сценарии использования

  • Поиск подтверждений в папке с научными статьями для ответа на конкретный научный вопрос.
  • Поиск противоречий и подтверждающих данных в подборке научной литературы.
  • Создание по локальным документам базы знаний с поиском и ссылками на источники.

Быстрый старт

  1. 1

    Установите пакет из PyPI

    pip install paper-qa
  2. 2

    Создайте папку для своих статей

    mkdir my_papers
  3. 3

    Перейдите в папку и задайте вопрос с помощью CLI pqa (требуется ключ API LLM, например OPENAI_API_KEY)

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

Что важно знать

  • Для работы требуется ключ API LLM или локально размещённый сервер LLM с открытым исходным кодом.
  • Для интенсивной индексации более 100 статей могут потребоваться ключи API Crossref и Semantic Scholar, чтобы избежать ограничений на запросы к публичным API.
  • Для версии 5 требуется Python 3.11 или новее; объекты Docs из старых версий PaperQA, сохранённые с помощью pickle, необходимо создать заново.

Темы

Частые вопросы

Что такое paper-qa?
Агентный RAG-инструмент для ответов на вопросы по научным статьям и другим документам с внутритекстовыми ссылками на источники. PaperQA2 — Python-пакет для генерации с дополнением извлечённой информацией (RAG) по PDF-файлам, текстовым файлам, документам Microsoft Office и исходному коду. Он ориентирован прежде всего на научную литературу. Пакет ищет документы в локальной папке, находит подходящие фрагменты, обобщает и ранжирует их, а затем формирует ответ с внутритекстовыми ссылками на исходные статьи.
paper-qa можно использовать бесплатно? Какая у него лицензия?
paper-qa распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
paper-qa всё ещё поддерживается?
Активно поддерживается. Последний коммит в paper-qa — 13 окт. 2026 г..
Для чего можно использовать paper-qa?
Поиск подтверждений в папке с научными статьями для ответа на конкретный научный вопрос. Поиск противоречий и подтверждающих данных в подборке научной литературы. Создание по локальным документам базы знаний с поиском и ссылками на источники.
Как установить paper-qa?
Установите пакет из PyPI: pip install paper-qa Создайте папку для своих статей: mkdir my_papers Перейдите в папку и задайте вопрос с помощью CLI pqa (требуется ключ API LLM, например OPENAI_API_KEY): cd my_papers && pqa ask 'What is PaperQA2?'
Где скачать paper-qa?
Исходный код и инструкции по установке — на GitHub: https://github.com/Future-House/paper-qa

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты