24 KiB
Облако | Документация | Дорожная карта | Discord
📕 Содержание
💡 Что такое RAGFlow?
RAGFlow — ведущий open-source движок Retrieval-Augmented Generation (RAG), который объединяет передовые возможности RAG с агентными технологиями и создаёт качественный контекстный слой для больших языковых моделей. Он предлагает понятный и масштабируемый RAG-пайплайн, подходящий как для небольших проектов, так и для крупных компаний. Благодаря объединённому движку контекста и готовым шаблонам агентов RAGFlow позволяет разработчикам быстро превращать сложные данные в высокоточные production-ready AI-системы.
🎮 Начало работы
Попробуйте облачную версию: https://cloud.ragflow.io.
Для локального развёртывания см. раздел Локальное развёртывание.
🔥 Последние обновления
-
2026-09-29 Выпущен RAGFlow 1.0.0-rc1.
-
2026-09-10 Добавлен сбор веб-контента через sitemap.
-
2026-08-19 Представлена Knowledge Compilation для создания Wiki, Graph, Tree, PageIndex, Mind Map, Timeline и Skills на уровне документов и наборов данных.
-
2026-08-19 Представлен Agentic RAG с режимами рассуждения Low, Medium, High и Ultra.
-
2026-07-02 Добавлены источник данных Google BigQuery и инкрементальная синхронизация.
-
2026-06-29 Добавлены каналы чата WhatsApp, DingTalk и WeCom.
-
2026-05-26 Добавлен компонент Browser для просмотра и взаимодействия агентов с веб-страницами.
-
2026-04-21 Добавлены семь встроенных шаблонов конвейеров ingest данных.
-
2026-04-21 Добавлены публикация приложений Agent, выполнение кода в sandbox и генерация диаграмм.
-
2026-04-21 Добавлены хранение и поиск пользовательской памяти.
Другие обновления см. в полных примечаниях к выпускам.
🎉 Следите за обновлениями
⭐️ Поставьте звезду репозиторию, чтобы не пропускать новые возможности и улучшения. Получайте уведомления о релизах!
🌟 Ключевые возможности
🍭 «Качество на входе — качество на выходе»
- Извлечение знаний на основе глубокого понимания документов из неструктурированных данных со сложным форматированием.
- Поиск «иголки в стоге данных» при практически неограниченном количестве токенов.
🍱 Шаблонный чанкинг
- Интеллектуальный и объяснимый.
- Большой выбор готовых шаблонов.
🧩 Компиляция знаний (Knowledge Compilation)
- Преобразуйте содержимое документов и наборов данных в структурированные объекты знаний: Wiki, Graph, Tree, PageIndex, Mind Map, Timeline и Skills.
- Настраивайте модели компиляции и правила обработки, просматривайте, обновляйте и создавайте объекты знаний заново.
🧠 Агентный поиск (Agentic Retrieval)
- Модель анализирует сложные вопросы и при необходимости разбивает их на части, ищет знания и проверяет доказательства в несколько этапов.
- Режимы Low, Medium, High и Ultra позволяют регулировать глубину поиска и рассуждений в зависимости от сложности вопроса.
🌱 Обоснованные цитаты с минимальными галлюцинациями
- Визуализация чанкинга с возможностью ручной корректировки.
- Быстрый просмотр ключевых источников и отслеживаемых цитат.
🍔 Работа с разнородными источниками данных
- Поддержка Word, презентаций, Excel, txt, изображений, сканов, структурированных данных, веб-страниц и многого другого.
🛀 Автоматизированный и простой RAG-пайплайн
- Удобная оркестрация RAG как для личных проектов, так и для крупных компаний.
- Настраиваемые LLM и модели эмбеддингов.
- Множественный поиск + fused re-ranking.
- Понятные API для простой интеграции.
🔎 Архитектура системы
🎬 Самостоятельное развёртывание
🐳 Развёртывание с Docker
📝 Требования к развёртыванию с Docker
- Рекомендуемая начальная конфигурация: 4 ядра CPU, 16 ГБ RAM и 50 ГБ свободного места на диске. Фактические требования зависят от движка документов, объёма данных, задач анализа и параллельной нагрузки. Для локальных моделей и других дополнительных компонентов могут потребоваться дополнительные ресурсы.
- Docker ≥ 24.0.0 и Docker Compose ≥ v2.26.1
- gVisor — требуется только для Self-Managed контейнерной Sandbox.
Для Docker-развёртывания не требуется устанавливать Go на хост. Для Self-Managed контейнерной Sandbox необходимо установить и настроить gVisor; другим провайдерам Sandbox gVisor на хосте RAGFlow не требуется.
Tip
Если Docker ещё не установлен (Windows, Mac или Linux), см. Install Docker Engine.
🚀 Запуск сервера
-
Убедитесь, что
vm.max_map_count≥ 262144:Проверить текущее значение:
sysctl vm.max_map_countЕсли значение меньше 262144, установите:
sudo sysctl -w vm.max_map_count=262144Чтобы изменение сохранилось после перезагрузки, добавьте в /etc/sysctl.conf:
vm.max_map_count=262144 -
Клонируйте репозиторий:
git clone https://github.com/infiniflow/ragflow.git -
Переключитесь на тег релиза Go и запустите готовый образ Go с помощью Docker Compose:
Caution
Все образы собраны под x86. Образов для ARM64 пока нет. Если вы на ARM64, следуйте этому руководству, чтобы собрать образ самостоятельно.
Перейдите в каталог развертывания Docker.
cd ragflow/docker
Переключитесь на тег релиза Go v1.0.0-rc1.
git checkout v1.0.0-rc1
Запустите службы Go и их зависимости в фоновом режиме.
docker compose -f docker-compose.yml up -d
В конфигурации MySQL по умолчанию точка входа Go-образа сначала выполняет миграции базы данных, а затем запускает Syncer, Admin, API и Ingestor через bin/ragflow_server.
В открытой версии RAGFlow 1.0 DeepDoc использует CPU для анализа макета, OCR и распознавания таблиц.
-
После запуска проверьте состояние сервисов и готовность API:
docker psКоманда выше показывает состояние зависимостей. В RAGFlow не определён Compose healthcheck; подтвердите готовность через API:
curl -f http://localhost/api/v1/system/healthzОтвет HTTP 200 означает готовность. Если вы изменили
SVR_WEB_HTTP_PORT, используйте этот порт в URL проверки. Если запуск завершился ошибкой, проверьте журналы соответствующего сервиса командойdocker logs --tail 50 <service>. -
Откройте в браузере IP-адрес сервера и войдите в RAGFlow.
При стандартных настройках достаточно
http://IP_ВАШЕЙ_МАШИНЫ(порт 80 можно не указывать). -
После входа добавьте LLM, модель эмбеддингов и reranker на странице поставщиков моделей, затем укажите имя модели, адрес сервиса и API-ключ.
Подробнее: llm_api_key_setup.
Готово!
⚙️ Настройка Docker
Развёртывание Go в Docker использует docker/.env и docker/docker-compose.yml, Kvrocks для кэша и хранения Checkpoint, а NATS JetStream — в качестве очереди сообщений. Изменяйте образ, порты, пароли, движок документов и источник образов моделей в соответствии с руководством по настройке Docker. Поддержка платформ (примечание: macOS временно не поддерживается, используйте хост Linux x86_64) описана в руководстве по сборке Go-образа и поддержке платформ.
При смене движка документов, изменении конфигурации и перезапуске сервисов, а также при сохранении или удалении существующих данных следуйте этому же руководству по настройке Docker.
🔨 Запуск из исходников для разработки
📝 Требования для сборки из исходников
-
Установите версию Go из
go.mod(сейчас Go 1.27), Clang 20, LLD 20, CMake 4.0 или новее и файлы разработки PCRE2. Сервисам Go нужны CGO и нативные библиотеки; build.sh задаёт необходимые параметры сборки. -
Клонируйте репозиторий, подготовьте нативные библиотеки и файлы моделей, затем соберите сервисы Go:
git clone https://github.com/infiniflow/ragflow.git cd ragflow/python3 -m venv /tmp/ragflow-go-download-venv /tmp/ragflow-go-download-venv/bin/python -m pip install requests huggingface-hub /tmp/ragflow-go-download-venv/bin/python ragflow_deps/download_deps.py bash build.sh --allСкрипт подготавливает нативные библиотеки и ресурсы моделей для сборки Go и требует
requestsиhuggingface-hub. Пропустите этот шаг, если те же ресурсы подготовлены другим способом. При запуске из корня репозитория сервисы Go автоматически находятinternal/rag/res/deepdoc; для запуска из другого каталога задайтеDEEPDOC_MODEL_DIRкак абсолютный путь к нему. -
Запустите необходимые зависимости (Elasticsearch, MySQL, MinIO, NATS, Kvrocks и ClickHouse):
sudo sysctl -w vm.max_map_count=262144 docker compose --env-file docker/.env -f docker/docker-compose-base.yml \ up -d --wait es01 mysql minio nats kvrocks clickhouseСервисы Go, запущенные из исходного кода, подключаются к Kvrocks через
localhost:6379; предоставленная конфигурация не требует изменения/etc/hosts. -
После миграции базы данных запустите сервисы по порядку. Выполняйте каждую команду в отдельном терминале из корня репозитория и оставьте открытыми четыре терминала сервисов:
./bin/ragflow_server --migrate RAGFLOW_DEV_MODE=true ./bin/ragflow_server --admin RAGFLOW_DEV_MODE=true ./bin/ragflow_server --ingestor RAGFLOW_DEV_MODE=true ./bin/ragflow_server --syncer RAGFLOW_DEV_MODE=true ./bin/ragflow_server --apiРежимы запуска работают следующим образом:
--migrate: выполняет миграции базы данных и завершает работу.--admin: запускает сервис Admin для управления и инициализации.--ingestor: запускает сервис Ingestor для приёма и анализа данных.--syncer: запускает сервис Syncer для синхронизации данных.--api: запускает API для веб-интерфейса, SDK и внешних клиентов.
RAGFLOW_DEV_MODE=trueпредназначен только для разработки. Он отключает проверку отката между версиями кода и миграций базы данных, но не запускает миграции и не изменяет схему. Не используйте его в production. Запускайте Admin раньше остальных сервисов. После миграцииRAGFLOW_DEV_MODE=true bash build.sh --runзапускает Admin, Ingestor и API, но не Syncer; для полной цепочки отдельно выполнитеRAGFLOW_DEV_MODE=true ./bin/ragflow_server --syncer. -
Только для разработки фронтенда установите Node.js и npm, затем запустите React-фронтенд:
cd web npm install API_PROXY_SCHEME=go npm run devВ другом терминале проверьте готовность Go API:
curl -f http://127.0.0.1:9380/api/v1/system/healthzОтвет HTTP 200 означает, что API отвечает. После разработки нажмите
Ctrl+Cв каждом терминале сервиса. Чтобы остановить зависимости, сохранив контейнеры, выполнитеdocker compose --env-file docker/.env -f docker/docker-compose-base.yml stop es01 mysql minio nats kvrocks clickhouse. Чтобы удалить контейнеры зависимостей и сеть Compose, сохранив именованные тома, выполнитеdocker compose --env-file docker/.env -f docker/docker-compose-base.yml down.
Подробнее см. Запуск сервиса из исходников.
📚 Документация
- Быстрый старт
- Конфигурация
- Примечания к релизам
- Руководства пользователя
- Руководства для разработчиков
- Справочные материалы
- FAQ
📜 Дорожная карта
См. Дорожную карту RAGFlow на 2026 год
🏄 Сообщество
🙌 Участие в разработке
RAGFlow развивается как open-source проект. Мы рады любым вкладам сообщества. Если хотите помочь — сначала ознакомьтесь с Contribution Guidelines.



