Руководство для начинающих по DeerFlow 2.0: пошаговое создание вашей первой рабочей станции для AI-агентов

AI Expert

Руководство по DeerFlow 2.0: Пошаговое создание вашей первой рабочей станции AI Agent

Уровень: Начинающий | Время: 15 минут | Результат: Создание исполняемого AI-помощника с нуля

Вы когда-нибудь задумывались, что было бы, если бы AI-помощник мог не только отвечать на вопросы, но и реально помогать вам управлять компьютером, писать код, искать информацию и даже генерировать полные отчеты? Сегодня мы представим DeerFlow — именно такого AI-агента, который может выполнять работу за вас.

Целевая аудитория

  • Бэкенд/Fullstack-разработчики с опытом 1–3 года.
  • Те, кто интересуется AI Agents, но не знает, с чего начать.
  • Те, кто хочет захостить AI-инструменты самостоятельно, но беспокоится о расходах.

Основные зависимости и окружение

Перед началом убедитесь, что ваша среда разработки соответствует следующим требованиям:

  • Node.js: версия 22.x или выше.
  • pnpm: версия 9.x или выше.
  • Docker: последняя стабильная версия.
  • Git: для клонирования проекта.

[!TIP]
Рекомендуется использовать Docker для развертывания — запуск одной командой, без необходимости вручную настраивать Nginx и другие службы.

Структура проекта

После установки вы увидите следующую структуру проекта:

deer-flow/
├── backend/                    # Бэкенд-сервис
│   ├── src/
│   │   ├── client.py           # Python-клиент
│   │   ├── agent/              # Ядро агента
│   │   └── skills/            # Встроенные навыки
│   └── docs/                   # Документация по конфигурации
├── frontend/                   # Веб-интерфейс
├── config.yaml                 # Конфигурационный файл моделей
├── .env                        # Переменные окружения
└── Makefile                    # Команды запуска

Пошаговая инструкция

Шаг 1: Клонирование проекта

Откройте терминал и выполните следующую команду:

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

[!TIP]
Если у вас возникли проблемы с доступом к GitHub, рассмотрите возможность использования зеркала или скачайте ZIP-архив версии Release.

Шаг 2: Генерация конфигурационных файлов

DeerFlow предоставляет команду для генерации конфигурации, которая создаст локальные файлы на основе шаблонов:

make config

После выполнения вы заметите файлы config.yaml и .env в корневом каталоге проекта.

Шаг 3: Настройка моделей (Важно!)

Это самый ответственный шаг. DeerFlow поддерживает множество поставщиков моделей, но мы настоятельно рекомендуем использовать Defapi. Причина проста: цена в два раза ниже официальной.

[!WARNING]
Если вы будете использовать официальный API OpenAI напрямую, ежемесячные расходы могут легко превысить несколько сотен долларов. С Defapi эти затраты можно сократить вдвое или даже больше.

Откройте config.yaml и настройте его следующим образом:

models:
  - name: gpt-4o-mini              # Внутренний идентификатор
    display_name: GPT-4o Mini      # Отображаемое имя
    use: langchain_openai:ChatOpenAI
    model: openai/gpt-4o-mini      # Идентификатор модели Defapi
    api_key: $DEFAPI_API_KEY       # Использование переменной окружения
    base_url: https://api.defapi.org  # Эндпоинт Defapi
    max_tokens: 4096
    temperature: 0.7
    supports_vision: true

Затем впишите ваш Defapi API Key в файл .env:

DEFAPI_API_KEY="dk-xxxxxxxxxxxxxxxx"
TAVILY_API_KEY="your-tavily-api-key"  # Для поиска в интернете

[!TIP]
Зарегистрируйтесь на https://defapi.org, новым пользователям предоставляются бесплатные лимиты для ознакомления.

Популярные модели, поддерживаемые Defapi:

МодельИдентификаторСценарий использования
GPT-4o Miniopenai/gpt-4o-miniПовседневные диалоги, высокая экономичность
GPT-4oopenai/gpt-4oСложные задачи, сбалансированный выбор
Claude Sonnet 4.5anthropic/claude-sonnet-4.5Сильные навыки программирования
DeepSeek V3deepseek/deepseek-v3Высокие способности к рассуждению, низкая цена

Шаг 4: Загрузка образа песочницы

Перед запуском через Docker необходимо загрузить образ песочницы (это нужно сделать только один раз):

make docker-init

Образ довольно большой, это может занять несколько минут.

Шаг 5: Запуск сервиса

Когда все готово, запустите DeerFlow:

make docker-start

Если вы видите подобный вывод, значит запуск прошел успешно:

✔ Frontend started on http://localhost:2026
✔ Backend started on http://localhost:8000

Шаг 6: Доступ к интерфейсу

Откройте браузер и перейдите по адресу http://localhost:2026. Вы увидите современный интерфейс чата.

Шаг 7: Первая задача

Введите в поле чата:

Привет, представься, пожалуйста

Вы обнаружите, что DeerFlow не только ответит вам, но и расскажет о своих возможностях:

  • Поиск в веб-сети
  • Чтение и запись файлов
  • Выполнение команд
  • Генерация отчетов, презентаций, веб-страниц

Попробуйте более сложную задачу:

Выведи структуру файлов текущего каталога

DeerFlow выполнит команду в среде песочницы и вернет результат. В этом и заключается фундаментальное отличие от обычного чат-бота — он действительно может выполнять работу за вас.


Устранение типичных проблем

Q1: Контейнер не запускается, ошибка «порт занят»

# Проверить, какой процесс занимает порт 2026 (для macOS/Linux)
lsof -i :2026
# Или (для Windows)
netstat -ano | findstr 2026

Завершите процесс или измените порт в config.yaml.

Q2: API Key настроен верно, но возникает ошибка

Проверьте, находится ли файл .env в корне проекта, и выполнили ли вы source .env или перезапустили контейнеры.

Q3: Модель не поддерживает вызов инструментов (Tool calling)

Некоторые модели не поддерживают function calling. Убедитесь, что используете модели типа GPT-4o, Claude или Gemini. Модели, предоставляемые Defapi, совместимы с протоколом OpenAI и обычно работают без проблем.

Q4: Поиск в интернете не возвращает результатов

Проверьте правильность настройки TAVILY_API_KEY. Tavily является стандартным провайдером поиска в DeerFlow.

Q5: Недостаточно памяти Docker

Памяти Docker по умолчанию может быть недостаточно. Рекомендуется выделить 4 ГБ или больше:

// Docker Desktop -> Settings -> Resources

Q6: Использование режима локальной разработки

Если вы не хотите использовать Docker, можно запустить проект локально:

make check    # Проверка среды
make dev      # Запуск сервисов для разработки

Дальнейшие шаги

1. Кастомные Skills

Система навыков (Skills) в DeerFlow очень гибкая. Вы можете создать свой собственный навык:

/mnt/skills/custom/
└── my-awesome-skill/
    └── SKILL.md

Просто напишите Markdown-файл, следуя формату встроенных навыков.

2. Расширение через MCP-серверы

DeerFlow поддерживает протокол MCP, что позволяет подключать различные внешние инструменты. Подробности в официальной документации MCP Server Guide.

3. Переход на другие модели

Если вы хотите попробовать DeepSeek или Claude, просто отредактируйте config.yaml:

# Пример конфигурации DeepSeek
models:
  - name: deepseek-v3
    display_name: DeepSeek V3
    use: langchain_openai:ChatOpenAI
    model: deepseek/deepseek-v3
    api_key: $DEFAPI_API_KEY
    base_url: https://api.defapi.org
    supports_thinking: true

4. Использование встроенного Python-клиента

DeerFlow также предоставляет библиотеку Python, которую можно внедрить прямо в ваш проект:

from src.client import DeerFlowClient

client = DeerFlowClient()
response = client.chat("Проанализируй эту статью", thread_id="my-thread")

# Потоковый вывод
for event in client.stream("hello"):
    print(event.data)

Заключение

Сегодня мы вместе развернули DeerFlow 2.0: от подготовки среды до запуска сервиса и выполнения первой задачи. Вы увидели, что это не просто чат-бот, а настоящая рабочая станция AI Agent, способная помогать в делах.

Основные преимущества DeerFlow:

  • Расширяемость: поддержка кастомных Skills, MCP и Sub-Agents.
  • Безопасность и контроль: изоляция в песочнице, задачи выполняются в Docker-контейнерах.
  • Гибкость затрат: использование Defapi позволяет сократить расходы вдвое по сравнению с официальными тарифами.

Попробуйте прямо сейчас! Пусть он поможет вам писать код, искать информацию или составлять отчеты. Вы увидите, на что действительно способен AI.

Если у вас возникли вопросы в процессе установки, оставляйте комментарии, я постараюсь помочь. В следующий раз мы подробно разберем, как настраивать собственные Skills для выполнения специфических задач.

Удачи в экспериментах!