RAGFlow — движок RAG с открытым исходным кодом.
RAGFlow — движок RAG с открытым исходным кодом.

💡 Что такое RAGFlow?

RAGFlow[1] — это движок RAG (дополненная генерация извлечения) с открытым исходным кодом, построенный на глубоком понимании документов. RAGFlow может обеспечить оптимизированный рабочий процесс RAG для предприятий и частных лиц любого размера и сочетает его с большими языковыми моделями (LLM), чтобы предоставить пользователям надежные вопросы и ответы, а также обоснованные ссылки на различные типы данных в сложных форматах.

🌟 Основные функции

🍭 "Quality in, quality out"

•Основываясь на глубоком понимании документов [2], он может извлекать ценную информацию из неструктурированных данных в различных сложных форматах. • Быстрое выполнение теста «иголка в стоге сена» в сценариях бесконечного контекста (токена).

🍱 Нарезка текста на основе шаблонов

• Не только умно, но, что более важно, контролируемо и объяснимо. • Различные текстовые шаблоны на выбор.

🌱 Разумное и обоснованное, сводящее к минимуму галлюцинации.

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

🍔 Совместимость с различными гетерогенными источниками данных

• Поддерживает различные типы файлов, включая документы Word, PPT, таблицы Excel, текстовые файлы, изображения, PDF-файлы, фотокопии, фотокопии, структурированные данные, веб-страницы и т. д.

🛀 Беспроблемный автоматизированный рабочий процесс RAG

• Полностью оптимизированный рабочий процесс RAG может поддерживать различные экосистемы — от персональных приложений до очень крупных предприятий. • И большая языковая модель LLM, и векторная модель поддерживают конфигурацию. • На основе многоканального вызова и слияния переупорядочения. •Предоставить простые в использовании API-интерфейсы, которые можно легко интегрировать в различные корпоративные системы.

📌 Новые функции

• 16 апреля 2024 г. Добавлена ​​модель внедрения BCEmbedding[3]. • 16 апреля 2024 г. Добавлен FastEmbed[4]. Предназначен для легкого и высокоскоростного встраивания. •11 апреля 2024 г. Поддерживается локализованное развертывание больших моделей с использованием Xinference[5]. •10 апреля 2024 г. Добавлена ​​базовая модель для анализа макета «Законы». •08 апреля 2024 г. Поддержка локализованного развертывания крупных моделей с помощью Ollama[6]. •2024-04-07 Поддержка китайского интерфейса.

🔎 Архитектура системы

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

📝 Предпосылки

•CPU >= 2 Ядро · ОЗУ >= 8 GB•Docker >= 24.0.0 & Docker Compose >= v2.26.1, если вы не устанавливали его локально Docker (Windows, Mac или Linux), Вы можете обратиться к документации Install Docker Engine[9] Установите его самостоятельно.

🚀 Запустите сервер

1. Обеспечьте vm.max_map_count не менее чем 262144 【Подробнее[10]】:

Для подтверждения vm.max_map_count размер:

Язык кода:javascript
копировать
  $ sysctl vm.max_map_count

если vm.max_map_count Значение меньше, чем 262144, можно сбросить:

Язык кода:javascript
копировать
  # Здесь мы установили его на 262144:
  $ sudo sysctl -w vm.max_map_count=262144

Ваши изменения будут сброшены при следующем перезапуске системы. если вы хотите внести постоянные изменения, вам все равно нужно /etc/sysctl.conf Поместите это в файл vm.max_map_count Значение обновляется соответственно:

Язык кода:javascript
копировать
 vm.max_map_count=262144

1. Клонируйте репозиторий:

Язык кода:javascript
копировать
  $ git clone https://github.com/infiniflow/ragflow.git

1. Войдите docker папку, используя предварительно скомпилированный Docker Зеркало для запуска сервера:

Язык кода:javascript
копировать
 $ cd ragflow/docker$ chmod +x ./entrypoint.sh$ docker compose -f docker-compose-CN.yml up -d

Размер файла основного образа составляет около 15 ГБ, и для его извлечения может потребоваться некоторое время. Пожалуйста, подождите.

1. После успешного запуска сервера еще раз подтвердите статус сервера:

Язык кода:javascript
копировать
 $ docker logs -f ragflow-server

1. Введите соответствующий код вашего сервера в браузере. IP адрес и логин RAGFlow. В приведенном выше примере вы просто вводите http://IP_OF_YOUR_MACHINE Вот и все: Если конфигурация не менялась, то нет необходимости вводить порт (по умолчанию HTTP сервисный порт 80). 2. в service_conf.yaml[11] Документальный фильм user_default_llm конфигурация столбца LLM заводе и в API_KEY Заполните столбцы, соответствующие выбранной вами большой модели. API key。

Подробности см. в ./docs/llm_api_key_setup.md[12].

Начинается веселье, затем музыка и танцы!

🔧 Конфигурация системы

Конфигурация системы включает следующие три файла:

•.env[13]: хранит некоторые основные переменные системной среды, такие как SVR_HTTP_PORTMYSQL_PASSWORDMINIO_PASSWORD ждать. •service_conf.yaml[14]: настройка различных фоновых служб. •docker-compose-CN.yml[15]: Система использует этот файл для завершения запуска.

Убедитесь, что настройки переменных в файле .env[16] соответствуют конфигурации в файле service_conf.yaml[17]!

./docker/README[18] Файл содержит настройки и службы переменных среды.Конфигурация Подробности。пожалуйстадолженубеждаться ./docker/README[19] Значения переменных среды, перечисленных в файле, такие же, как service_conf.yaml[20] Конфигурация системы в файле остается неизменной.

Чтобы обновить настройки по умолчанию HTTP сервисный порт(80), Можно найти в docker-compose-CN.yml[21] Файл будет настроен 80:80 Изменить на <YOUR_SERVING_PORT>:80

Все конфигурации системы должны вступить в силу после перезагрузки системы:

Язык кода:javascript
копировать
$ docker compose -f docker-compose-CN.yml up -d

🛠️ Скомпилируйте исходный код и установите образ Docker.

Чтобы установить образ Docker из исходного кода:

Язык кода:javascript
копировать
$ git clone https://github.com/infiniflow/ragflow.git$ cd ragflow/$ docker build -t infiniflow/ragflow:v0.2.0 .
$ cd ragflow/docker$ chmod +x ./entrypoint.sh$ docker compose up -d

📚Техническая документация

•FAQ[22]

📜 Дорожная карта

Подробности см. в дорожной карте RAGFlow на 2024 год[23].

🏄 Сообщество открытого исходного кода

•Discord[24]•Twitter[25]

🙌 Руководство по вкладу

RAGFlow Только Открытый исходный код Сотрудничество процветает. В этом духе мы приветствуем любой вклад сообщества. Если вы заинтересованы в участии, ознакомьтесь с нашими правилами для участников[26] 。

заявление

Эта статья была переведена и скомпилирована компанией Shanxing по адресу: https://github.com/infiniflow/ragflow.,если это полезно для вас,Пожалуйста помогите лайком, сосредоточьтесь и соберите,Спасибо~

References

[1] RAGFlow: https://demo.ragflow.io/ [2] Глубокое понимание документации: https://github.com/infiniflow/ragflow/blob/main/deepdoc/README.md [3] BCEmbedding: https://github.com/netease-youdao/BCEmbedding [4] FastEmbed: https://github.com/qdrant/fastembed [5] Xinference: https://github.com/infiniflow/ragflow/blob/main/docs/xinference.md [6] Ollama: https://github.com/infiniflow/ragflow/blob/main/docs/ollama.md [22] FAQ: https://github.com/infiniflow/ragflow/blob/main/docs/faq.md [23] RAGFlow Roadmap 2024: https://github.com/infiniflow/ragflow/issues/162 [24] Discord: https://discord.gg/4XxujFgUN7 [25] Twitter: https://twitter.com/infiniflowai [26] Рекомендации для участников: https://github.com/infiniflow/ragflow/blob/main/docs/CONTRIBUTING.md

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose