Deer Flow icon

Deer Flow

DeerFlow is a community-driven framework for deep research, combining language models with tools like web search, crawling, and Python execution, while contributing back to the open-source community.

Deer-Flow by ByteDance: An AI-Powered Framework for Deep Research

Introduction

Deer-Flow is an open-source, community-driven framework developed by ByteDance, designed to facilitate deep research by leveraging the power of Large Language Models (LLMs) in conjunction with a suite of research tools. It aims to automate and enhance the research process by intelligently coordinating LLMs with capabilities like web search, web crawling, content extraction, and Python code execution. Deer-Flow is built with extensibility in mind, contributing back to the open-source community and enabling users to conduct comprehensive analyses on a wide range of topics.

The framework is structured around a team of AI agents that collaborate to understand research objectives, plan execution steps, gather information, process data, and finally, generate insightful reports.

Key Features

  • LLM Integration & Flexibility:
    • Utilizes litellm to support a wide array of LLMs, including various open-source models and OpenAI-compatible APIs, allowing users to choose models based on their needs and access.
  • Advanced Search and Retrieval:
    • Integrates with multiple web search providers like Tavily and Brave Search for broad information gathering.
    • Employs Jina AI for web crawling and advanced content extraction from web pages.
  • MCP (Multi-Content Processing) Seamless Integration: Designed to expand capabilities for accessing private domain information, interacting with knowledge graphs, and enhancing web Browse functionalities for more thorough research.
  • Human-in-the-Loop Interaction: Supports interactive modification of research plans through natural language, allowing users to guide and refine the research direction.
  • Sophisticated Report Generation & Post-Editing:
    • Generates comprehensive research reports by aggregating findings from various agents.
    • Features Notion-like block editing for reports, with AI-powered refinements to improve clarity and coherence.
  • Multimedia Output Generation:
    • Podcast Generation: AI-powered capabilities to generate podcast scripts based on research reports and synthesize audio.
    • Presentation Creation: Automated creation of simple PowerPoint presentations from research findings.
    • Text-to-Speech (TTS): Converts research reports into speech using the volcengine TTS API, with customizable features like speed, volume, and pitch.
  • Modular Architecture: Composed of distinct components (Coordinator, Planner, Research Team, Reporter) that work together, enabling specialization and efficient workflow management.

Specific Use Cases & Target Audience

While the documentation doesn't explicitly define a narrow target audience, Deer-Flow is suited for:

  • Researchers & Analysts: Conducting in-depth studies on various topics, from technology trends (e.g., OpenAI's Sora, Google's A2A protocol, LLMs, quantum computing) to market analysis (e.g., Bitcoin price movements, AI adoption in healthcare).
  • Content Creators: Generating structured content like detailed reports, podcast scripts, and initial presentation drafts.
  • Developers & AI Enthusiasts: Experimenting with LLM-driven autonomous research agents and contributing to an open-source framework.
  • Organizations: Potentially leveraging the framework for internal knowledge discovery, competitive analysis, or industry research, especially with customizations for private data access.

Examples of usage showcased include:

  • Analysis of OpenAI's Sora AI tool.
  • Overview of Google's Agent to Agent (A2A) protocol.
  • Analysis of recent Bitcoin price movements.
  • In-depth exploration of Large Language Models (LLMs).
  • Analysis of factors driving AI adoption in healthcare.
  • Analysis of quantum computing's impact on cryptography.
  • Analysis of Cristiano Ronaldo's performance highlights.

Usage Guide (Installation & Getting Started)

  1. Clone the Repository:

    git clone https://github.com/bytedance/deer-flow.git
    cd deer-flow
    
  2. Install Dependencies: Deer-Flow uses uv for managing Python environments and dependencies.

    uv sync
    
  3. Configuration:

    • API Keys (.env): Create a .env file in the root directory and populate it with your API keys for services like Tavily, Brave Search, etc. An example can be found in .env.example.
    • LLM Configuration (conf.yaml): Edit the conf.yaml file to specify the LLM model you intend to use and provide the necessary API keys or endpoint details. Deer-Flow supports models via litellm.
  4. Install Web UI Dependencies (Optional): If you want to use the web interface:

    cd deer-flow/web
    pnpm install
    

    (This requires Node.js and pnpm to be installed.)

  5. Running Deer-Flow:

    • Console UI:
      uv run main.py
      
      You can then interact with Deer-Flow through the command line, providing your research topic.
    • Web UI: Ensure you are in the root deer-flow directory.
      • For macOS/Linux:
        ./bootstrap.sh -d
        
      • For Windows:
        bootstrap.bat -d
        
      After running the bootstrap script, the web UI should be accessible at http://localhost:3000.

Main Components

Deer-Flow's architecture is built around several key components that collaborate to perform research:

  • Coordinator: Acts as the central manager for the entire workflow lifecycle. It serves as the primary interface between the user and the Deer-Flow system, receiving research objectives and delivering the final report.
  • Planner: Responsible for decomposing the high-level research objectives provided by the user into a structured, step-by-step execution plan. This plan guides the actions of the research agents.
  • Research Team: A group of specialized AI agents designed for specific tasks:
    • Researcher: Focuses on information gathering, primarily through web searches using configured search engine APIs.
    • Coder: Specialized in tasks involving code, such as code analysis or potentially generating code snippets relevant to the research.
  • Reporter: Aggregates all the findings, analyses, and data collected by the Research Team and synthesizes them into a comprehensive and coherent research report.

License

Deer-Flow is released under the MIT License.

Last updated: May 16, 2025

Found an error in our documentation?Email us for assistance