DeerFlow: интеллектуальный исследовательский ассистент на базе LangChain и LangGraph 73

小编 ·

DeerFlow: интеллектуальный исследовательский ассистент на базе LangChain и LangGraph

DeerFlow — это интеллектуальный исследовательский ассистент с открытым исходным кодом от ByteDance, созданный на базе фреймворков LangChain и LangGraph. Он поддерживает динамическую итерацию задач, бесшовную интеграцию с MCP, автоматическую генерацию плана исследования, взаимодействие человека и ИИ, а также может генерировать подкасты и PPT-презентации. Ассистент объединяет языковые модели с такими инструментами, как веб-поиск, веб-краулинг и выполнение кода Python, чтобы быстро предоставлять глубокие и всесторонние отчёты. Также реализована бесшовная интеграция с внутренней платформой MCP ByteDance (Model Control Platform), что повышает уровень автоматизации и точности. Кроме того, DeerFlow оптимизирован.

DeerFlow: интеллектуальный исследовательский ассистент на базе LangChain и LangGraph

Что такое DeerFlow?

DeerFlow — это ByteDance интеллектуальный исследовательский помощник с открытым исходным кодом, построенный на фреймворках LangChain и LangGraph. Он поддерживает динамическую итерацию задач, бесшовную интеграцию с MCP, автоматическое создание планов исследования, взаимодействие человека и машины, а также генерацию подкастов и ppt. Он объединяет языковые модели с такими инструментами, как веб-поиск, веб-скрапинг и выполнение кода Python, чтобы быстро предоставлять глубокие и всесторонние отчёты. Кроме того, DeerFlow обеспечивает бесшовную интеграцию с внутренней MCP ByteDance (платформой управления моделями), что повышает уровень автоматизации и точности. Помимо этого, DeerFlow оптимизирует взаимодействие между человеком и машиной: пользователи могут в любой момент вмешаться и скорректировать план исследования, чтобы результат соответствовал ожиданиям.

DeerFlow: интеллектуальный исследовательский помощник на основе фреймворков LangChain и LangGraph.webp

Основная архитектура DeerFlow

  • Мультиагентная архитектура: основана на архитектуре LangGraph и использует модульную систему с несколькими агентами. Система состоит из ролей координатора, планировщика, исследовательской группы и генератора отчётов. Координатор управляет жизненным циклом процесса исследования, планировщик отвечает за декомпозицию задач и формирование плана исследования, исследовательская группа включает исследователей, аналитиков кода и других исполнителей, которые занимаются сбором информации и техническими задачами, а генератор отчётов оформляет результаты исследования в готовый отчёт.

  • Открытый фреймворк на базе LangStack: построен на открытых фреймворках LangChain и LangGraph, отличается понятной структурой кода и лаконичной логикой, что снижает порог входа.

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

  • Динамическая итерация задач: способен автоматически формировать и оптимизировать план задач в соответствии с исследовательскими потребностями, обеспечивая эффективный и гибкий процесс исследования.

  • Интеграция множества инструментов: поддержка веб-поиска, поиска по академическим ресурсам Arxiv, веб-скрапинга и выполнения кода Python, что обеспечивает мощную поддержку научным сотрудникам в сборе и анализе литературы.

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

  • Бесшовная интеграция с MCP: благодаря интеграции с внутренней MCP ByteDance (платформой управления моделями) достигается более высокий уровень автоматизации и точности.

  • Интеграция LLM: через litellm поддерживается интеграция большинства моделей, в том числе открытых моделей вроде Qwen, а также совместимость с API-интерфейсом OpenAI. Многоуровневая система LLM подходит для задач различной сложности.

  • Взаимодействие человека и машины: поддерживается интерактивное изменение плана исследования с помощью естественного языка, а также автоматическое принятие плана; поддерживается блочное редактирование в стиле Notion с возможностью оптимизации с помощью ИИ, включая ИИ-помощь в редактировании, сокращении и расширении предложений.

Сценарии применения DeerFlow

  • Академические исследования: для научных сотрудников DeerFlow обеспечивает мощную поддержку в сборе и анализе академической литературы. Функция поиска по Arxiv позволяет быстро находить качественные академические ресурсы, экономя время исследователей. Исследователи могут с его помощью эффективно автоматизировать весь процесс — от составления плана исследования до генерации контента, что значительно снижает трудозатраты.

  • Создание контента: авторы контента могут использовать DeerFlow для генерации сценариев и аудио подкастов, автоматического создания презентаций PowerPoint с настраиваемыми шаблонами, что существенно упрощает процесс создания и подачи контента.

  • Управление знаниями и исследования внутри компании: благодаря интеграции с внутренней MCP ByteDance (платформой управления моделями) DeerFlow обеспечивает более высокий уровень автоматизации и точности, позволяя компаниям использовать его для систематизации, анализа и исследования внутренних знаний, повышая эффективность управления знаниями.

Шаги по установке DeerFlow

Подготовка окружения

Убедитесь, что система соответствует следующим минимальным требованиям:

Python: версия должна быть 3.12+.

Node.js: версия должна быть 22+.

Шаги установки

Клонирование репозитория:

git clone https://github.com/bytedance/deer-flow.git
cd deer-flow

Установка зависимостей:

uv sync

На этом этапе автоматически создаётся виртуальное окружение и устанавливаются все необходимые пакеты.

Настройка переменных окружения:

cp .env.example .env

При необходимости добавьте в файл .env свои API-ключи, например Tavily, Brave SEARCH, Volcano Engine TTS и т. д.

Настройка модели и API-ключей:

cp conf.yaml.example conf.yaml

Настройте в файле conf.yaml модель LLM и API-ключи в соответствии с вашими потребностями. Подробности конфигурации см. в docs/configuration_guide.md.

Установка инструмента генерации PPT:

brew install marp-cli

Если вы используете другую операционную систему, обратитесь к официальной документации Marp CLI за инструкциями по установке.

Установка зависимостей Web UI (необязательно):

cd deer-flow/web
pnpm install

Если у вас не установлен pnpm, можно воспользоваться npm install или yarn install.

Запуск проекта

Запуск проекта:

uv run main.py

Это запустит проект с интерфейсом в консоли.

Запуск Web UI (если установлены зависимости Web UI):

На macOS/Linux:

./bootstrap.sh -d

На Windows:

bootstrap.bat -d

Затем откройте в браузере http://localhost:3000, чтобы увидеть Web UI.

Разработка и отладка

Если вам нужно вести разработку или отладку, можно воспользоваться LangGraph Studio:

Локальный запуск LangGraph Studio:

  • На Mac:

curl -LsSf https://astral.sh/uv/install.sh | sh
uvx --refresh --from "langgraph-cli[inmem]" --with-editable . --python 3.12 langgraph dev --allow-blocking
  • На Windows/Linux:

pip install -e .
pip install -U "langgraph-cli[inmem]"
langgraph dev

После запуска перейдите по ссылке Studio UI (например, https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024) для отладки.

Полезные ссылки

Официальный сайт проекта: https://deerflow.tech

Репозиторий на GitHub: https://github.com/bytedance/deer