VectifyAI/PageIndex

PageIndex: Индекс документов для векторно-независимого RAG с логическим выводом

RAG⭐ 35 783Pythonпоследний релиз: v0.2.19
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

PageIndex — это векторно-свободный (vectorless) движок RAG, который использует иерархическое древовидное индексирование и рассуждения LLM для поиска информации, имитируя человеческое чтение документов.

Зачем нужен

Инструмент решает проблему неточности традиционного RAG, основанного на векторном сходстве, заменяя его логическим выводом (reasoning). Это позволяет находить релевантные фрагменты в длинных профессиональных документах без необходимости их фрагментации (chunking) или использования векторных баз данных.

Что можно реализовать

  • Анализ сложных финансовых документов с высокой точностью (SOTA на FinanceBench)
  • Создание агентов RAG (Agentic RAG) с использованием OpenAI Agents SDK
  • Поиск по масштабным корпусам документов через PageIndex File System
  • Визуальный RAG (Vision-based RAG) для работы с PDF-изображениями без OCR

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

  • Отсутствие векторных баз данных и искусственного чанкинга документов
  • Построение древовидного индекса (Tree Index) на основе структуры документа
  • Объяснимый и отслеживаемый поиск (traceable retrieval) с явными ссылками на страницы
  • Контекстно-зависимый поиск, учитывающий историю диалога и доменные знания

👤 Кому подойдёт: Разработчики, внедряющие RAG-системы, и исследователи, работающие с длинными профессиональными документами (юридическими, финансовыми), которым важна точность и интерпретируемость результатов.

Релизы

v0.2.19majorbreaking
🕐 7 ч назад · релиз на GitHub ↗

Релиз PageIndex v0.2.19: новый Flash-движок для быстрого индексирования, интеграция с агентами и визуализация регионов.

  • Added: Добавлен Flash-движок для ускоренного индексирования без участия LLM в построении структуры.
  • Added: Расширена интеграция с AI-агентами через MCP, OpenAI и Anthropic с поддержкой локальных и облачных режимов.
  • Added: Появились функции для визуализации: highlight_region, get_page_image и get_document_image.
  • Breaking: Метод resolve_citations переименован в get_citations, теперь возвращает готовый текст с маркдаун-ссылками.
  • Added: Pillow >= 9.0 добавлен в обязательные зависимости для работы с изображениями.
v0.2.18minor
🕐 4 дн назад · релиз на GitHub ↗

Выпуск v0.2.18: ускоренный Flash-движок индексации, улучшенные цитирования и выравнивание промптов.

  • Added: Flash-движок: ускоренная индексация без LLM для структуры, параллельное расширение дерева.
  • Added: Функция get_document_id: быстрый поиск ID документа по имени для работы с цитатами.
  • Fixed: Выравнивание промптов: исправлены цитирования и восстановление шага перефразирования в локальном режиме.
  • Added: Улучшенная работа с цитатами: точное разрешение на координаты страниц и блоков.
  • Added: Единый интерфейс: полная совместимость кода между локальным и облачным клиентами.
v0.2.17minor
🕐 8 дн назад · релиз на GitHub ↗

Выпуск v0.2.17: ускоренный Flash-движок индексации, точные цитаты с координатами страниц и улучшенная интеграция с агентами.

  • Added: Добавлен Flash-движок индексации: структура документа строится без LLM, а генерация сводок и расширение дерева выполняются параллельно для ускорения.
  • Added: Цитаты теперь разрешаются в точные координаты страниц, включая блоки, bounding box и текст, что повышает проверяемость ответов.
  • Added: Расширены возможности интеграции с агентами: добавлены функции для конвертации инструментов в форматы OpenAI, Anthropic и MCP.
  • Added: Унифицированы интерфейсы локального и облачного клиентов, позволяя менять режим работы без изменений в коде приложения.
  • Fixed: Улучшена обработка ошибок: система теперь явно отказывается от запуска при некорректных конфигурациях или отсутствии моделей.
v0.2.16majorbreaking
🕐 11 дн назад · релиз на GitHub ↗

Выход PageIndex v0.2.16: ускоренный Flash-движок, цитирование, агентные инструменты и ломающие изменения в API.

  • Added: Flash-движок для локального индексирования: генерация структуры без LLM, параллельное расширение узлов.
  • Added: Поддержка цитирования ответов и фиксированного персонажа через инструкции.
  • Added: Расширенная интеграция с агентами: MCP-инструменты, конвертеры для OpenAI/Anthropic/Claude.
  • Added: Улучшенное управление контекстом: документные блоки в начале диалога для сохранения кэша.
  • Breaking: Удалён параметр doc_id из методов интеграции с агентами.
v0.2.15minor
🕐 15 дн назад · релиз на GitHub ↗

Выпуск v0.2.15: ускоренный Flash-движок, поддержка изображений, улучшенная интеграция с агентами и стабильность.

  • Added: Добавлен Flash-движок для быстрого индексирования без участия LLM в построении структуры.
  • Added: Изображения страниц и фигур теперь передаются моделям в чате и агентах.
  • Added: Расширены возможности интеграции с агентами через MCP и провайдеров.
  • Fixed: Исправлена работа потоковой передачи событий и улучшена обработка ошибок.
  • Added: Улучшена совместимость с LiteLLM и добавлена поддержка протокола Responses.
v0.2.14majorbreaking
🕐 19 дн назад · релиз на GitHub ↗

Выпуск v0.2.14: ускоренный Flash-движок, унификация локального и облачного режимов, рефакторинг API чата и улучшенная интеграция с агентами.

  • Breaking: Методы responses() и messages() заменены на chat(protocol="responses") и chat(protocol="messages"); старые имена вызывают ошибки.
  • Added: Добавлен Flash-движок для индексации: структура дерева строится без LLM, а узлы расширяются волнами параллельно.
  • Added: Унифицированы интерфейсы локального и облачного клиентов: код работает одинаково в обоих режимах без изменений.
  • Added: Расширены возможности интеграции с агентами: добавлены функции для генерации MCP-инструментов и конфигураций для OpenAI/Anthropic.
  • Added: В метод chat() добавлены параметры instructions, max_turns, backend, extra_headers и extra_body для тонкой настройки запросов.
v0.2.13minor
🕐 19 дн назад · релиз на GitHub ↗

Выпуск 0.2.13: ускоренный Flash-индекс, потоковый чат с видимостью процесса и событий, улучшенная интеграция агентов.

  • Added: Добавлен потоковый режим chat(stream=True), отображающий ход рассуждений и вызовы инструментов.
  • Added: Введен объект ChatStream.events для получения структурированных данных процесса без обрезки.
  • Added: Улучшена интеграция с агентами через новые методы генерации инструментов и конфигураций.
  • Added: Flash-движок ускоряет индексацию за счет параллельного расширения дерева без участия LLM.
  • Fixed: Исправлено поведение потокового вывода: теперь можно скрыть процесс или вернуть чистый ответ.
v0.2.12patch
🕐 22 дн назад · релиз на GitHub ↗

Исправления в поиске .env, типах storage_path и работе с LiteLLM; обновление документации и тестов.

  • Fixed: Исправлен поиск .env (ограничен деревом cwd), типизация storage_path и поведение локального клиента с пустой моделью.
  • Fixed: Слоты теперь принимают любой Mapping; устранено ложное упоминание облачного scoping в docstrings; скрыто предупреждение bridge в LiteLLM.
  • Fixed: Тесты адаптированы под политику терминальной остановки в Anthropic 1.1.
  • Обновлены ссылки на API-ключи, переструктурирован README, улучшены изображения и графики FinanceBench.
v0.2.11minor
🕐 26 дн назад · релиз на GitHub ↗

Выпуск 0.2.11: ускоренный Flash-движок, единый интерфейс для локального и облачного режимов, улучшенная интеграция с агентами и строгая валидация.

  • Added: Добавлен Flash-движок для индексации: структура дерева строится без LLM, а генерация сводок и расширение узлов выполняются параллельно.
  • Added: Единый интерфейс для локального и облачного режимов: код работает без изменений, а локальный режим теперь не требует сервера и векторной БД.
  • Added: Расширенная интеграция с агентами: поддержка MCP, OpenAI и Anthropic через встроенные инструменты и готовые конфигурации.
  • Added: Облачные документы с собственной моделью: возможность использовать свой chat_model для ответов на вопросы по документам в облаке.
  • Fixed: Строгая валидация конфигураций: отказ от молчаливого игнорирования пустых значений и некорректных параметров при создании клиента.
v0.2.10major
🕐 1 мес назад · релиз на GitHub ↗

Выпуск v0.2.10: представлен PageIndex SDK с локальным режимом и новым Flash-движком для быстрого индексирования без LLM.

  • Added: Добавлен PageIndex SDK с поддержкой локального и облачного режимов, обеспечивающий векторно-свободный RAG.
  • Added: Внедрен Flash-движок для ускоренного индексирования: структура документа строится без участия LLM, только сводки генерируются моделями.
  • Added: Расширена интеграция с агентами: добавлены инструменты MCP, функции для OpenAI, Anthropic и Claude, а также готовые конфигурации.
  • Added: Объединенный интерфейс клиента: один и тот же код работает как локально (без сервера и ключей), так и в облаке.
  • Added: Улучшены возможности чата: поддержка потоковой передачи, целевой работы с документами и кэширования промптов.
v0.3.0.dev3minor
🕐 2 мес назад · релиз на GitHub ↗

Интеграция LiteLLM и агентов OpenAI, исправление ошибок TOC и CLI, улучшение CI/CD и документации.

  • Added: Добавлена поддержка мульти-провайдеров LLM через LiteLLM и клиент PageIndexClient на базе OpenAI Agents SDK.
  • Fixed: Исправлены ошибки в обработке оглавления (TOC), предотвращены бесконечные циклы и исправлены опечатки в промптах.
  • Added: Улучшена структура CLI, упрощены примеры RAG-демо и добавлена поддержка pathlib.
  • Added: Настроена автоматизация GitHub Actions: дедупликация и автозакрытие issues, безопасность и обновления Dependabot.
  • Fixed: Исправлена работа с облачным добавлением документов и устранена ошибка KeyError при получении листовых узлов.
v0.3.0.dev2minor
🕐 2 мес назад · релиз на GitHub ↗

Выпуск PageIndex v0.3.0.dev2: добавлен SDK с локальным и облачным API на основе коллекций, настроен авто-публикация в PyPI.

  • Added: Представлен PageIndex SDK с API, поддерживающим работу с коллекциями как в локальном, так и в облачном режимах.
  • Added: Настроена автоматическая публикация пакетов в PyPI при создании тегов версий.