Об этом проекте

LightRAG — это open-source фреймворк для retrieval-augmented generation (RAG), построенный на графах знаний и позиционируемый как лёгкая альтернатива Microsoft GraphRAG. Он сочетает графовую индексацию с векторными эмбеддингами в двухуровневой архитектуре, стремясь соединить традиционный векторный RAG на чанках и графовый RAG. Основные возможности, описанные в README: - Графовая индексация, которая фиксирует семантические зависимости между сущностями и призвана преодолеть фрагментированность контекста при поиске по чанкам. - Двухуровневый поиск с пятью режимами запросов: local (конкретные сущности и атрибуты), global (макротемы и междокументные связи), hybrid (local + global), naive (обычная векторная схожесть по текстовым чанкам) и mix (local + global + naive, режим по умолчанию). - Инкрементальные обновления и выборочное удаление: при удалении документа система может использовать LLM-кэш времени индексации для перестроения затронутых сущностей и связей. - Несколько движков парсинга документов: MinerU, Docling и собственный движок, обрабатывающий изображения, таблицы и формулы в Word- и Markdown-документах, а также опциональное умное определение заголовков для .docx-файлов с помощью моделей spaCy. - Четыре стратегии разбиения текста на чанки: фиксированной длины, рекурсивная по символам, векторная семантическая и семантическая по абзацам; последняя выравнивает границы чанков по заголовкам, абзацам и таблицам. - Мультимодальная обработка (v1.5+), связывающая изображения, формулы и таблицы с основным текстом через граф знаний, с интеграцией RAG-Anything для PDF, изображений, офисных документов, таблиц и формул. - Ролевая конфигурация LLM с четырьмя ролями: EXTRACT, QUERY, KEYWORD и VLM, каждая настраивается независимо. - Бэкенды хранилищ: встроенные в память с сохранением в локальные файлы, а также PostgreSQL, MongoDB, Neo4j, Milvus, OpenSearch и другие; для продакшена рекомендуется PostgreSQL. - Поддержка цитирования источников, поддержка реранкеров, интеграция оценки RAGAS и трассировка Langfuse. Развёртывание и использование: - Устанавливается из PyPI как lightrag-hku с дополнительным пакетом api, или из исходников с помощью uv или pip; Makefile предоставляет цели вроде make dev и make env-base. - Поддерживается развёртывание через Docker Compose, с официальными образами GHCR, подписанными через Sigstore Cosign; есть руководство по настройке Apple Container для Apple Silicon без Docker Desktop. - Интерактивный мастер настройки генерирует конфигурации .env и docker-compose.final.yml для LLM, эмбеддингов, реранкера, хранилища, сервера, аутентификации и SSL. - Сервер предоставляет веб-интерфейс и REST API; в README предупреждается, что перед открытием сетевого доступа следует настроить аутентификацию (LIGHTRAG_API_KEY или AUTH_ACCOUNTS с TOKEN_SECRET), и что совместимые с Ollama маршруты /api/* остаются открытыми по умолчанию, если не задан WHITELIST_PATHS. - Опциональные системные зависимости включают libcairo для растеризации SVG в нативном парсинге markdown/textpack и языковые модели spaCy для умного определения заголовков в docx. Рекомендации по моделям в README: быстрая модель без рассуждений для извлечения, более сильная модель для ответов на запросы, лёгкая модель без рассуждений для извлечения ключевых слов и мультимодальная модель для задач VLM; эмбеддинг-модели следует выбирать до индексации и сохранять неизменными, для локального развёртывания предлагается BAAI/bge-m3. Проект связан с научной статьёй на arXiv (2410.05779) и описан как принятый на EMNLP 2025.