Home
Login

Marco de investigación profunda impulsado por la comunidad y basado en modelos de lenguaje grandes, que integra búsqueda en la web, rastreo web y ejecución de Python, entre otras herramientas profesionales.

MITTypeScript 14.2kbytedancedeer-flow Last Updated: 2025-06-19

DeerFlow - Marco de Automatización para la Investigación Profunda

Resumen del Proyecto

DeerFlow (Deep Exploration and Efficient Research Flow) es un marco de investigación profunda impulsado por la comunidad y de código abierto de ByteDance. Este proyecto se basa en el trabajo excepcional de la comunidad de código abierto y tiene como objetivo combinar grandes modelos de lenguaje con herramientas profesionales, incluidas la búsqueda web, el rastreo web y la ejecución de código Python, al tiempo que retribuye a la comunidad de código abierto.

Dirección del Proyecto: https://github.com/bytedance/deer-flow

Características Principales

🤖 Integración de LLM

  • Admite la integración de la mayoría de los modelos a través de litellm
  • Admite modelos de código abierto como Qwen
  • Interfaz API compatible con OpenAI
  • Sistema LLM de múltiples capas para diferentes complejidades de tareas

🔍 Búsqueda y Recuperación

  • Realiza búsquedas web a través de Tavily, Brave Search, etc.
  • Utiliza Jina para el rastreo web
  • Funciones avanzadas de extracción de contenido

🔗 Integración Perfecta de MCP

  • Amplía el acceso al dominio privado, el gráfico de conocimiento, la navegación web, etc.
  • Facilita la integración de diversas herramientas y metodologías de investigación

🧠 Bucle de Interacción Humano-Máquina

  • Admite la modificación interactiva de planes de investigación utilizando lenguaje natural
  • Admite la aceptación automática de planes de investigación

📝 Edición Posterior de Informes

  • Admite la edición de bloques similar a Notion
  • Permite el refinamiento de la IA, incluyendo el pulido asistido por IA, el acortamiento y la expansión de oraciones
  • Construido sobre tiptap

🎙️ Generación de Podcasts y Presentaciones

  • Generación de guiones de podcasts impulsada por IA y síntesis de audio
  • Crea automáticamente presentaciones sencillas de PowerPoint
  • Plantillas personalizables para contenido personalizado

Arquitectura Técnica

DeerFlow implementa una arquitectura de sistema multiagente modular, diseñada para la investigación automatizada y el análisis de código. El sistema se basa en LangGraph y permite flujos de trabajo flexibles basados en el estado a través de un sistema de paso de mensajes claramente definido, donde los componentes se comunican entre sí.

Componentes del Flujo de Trabajo

El sistema emplea un flujo de trabajo simplificado que incluye los siguientes componentes:

Coordinador (Coordinator)

  • Punto de entrada para gestionar el ciclo de vida del flujo de trabajo
  • Inicia el proceso de investigación basándose en la entrada del usuario
  • Delega tareas al planificador cuando sea apropiado
  • Actúa como la interfaz principal entre el usuario y el sistema

Planificador (Planner)

  • Componente estratégico para la descomposición y planificación de tareas
  • Analiza los objetivos de la investigación y crea un plan de ejecución estructurado
  • Determina si hay suficiente contexto o si se necesita más investigación
  • Gestiona el flujo de investigación y decide cuándo generar el informe final

Equipo de Investigación (Research Team)

Colección de agentes especializados que ejecutan el plan:

  • Investigador (Researcher): Realiza búsquedas web y recopila información utilizando herramientas como motores de búsqueda web, rastreadores web e incluso servicios MCP
  • Codificador (Coder): Utiliza la herramienta Python REPL para manejar el análisis de código, la ejecución y las tareas técnicas

Cada agente tiene acceso a herramientas específicas optimizadas para su rol y opera dentro del marco de LangGraph.

Reportero (Reporter)

  • Procesador de la etapa final de la salida de la investigación
  • Resume los hallazgos del equipo de investigación
  • Procesa y estructura la información recopilada
  • Genera informes de investigación integrales

Instalación y Inicio Rápido

Requisitos del Sistema

  • Python 3.12+
  • Node.js (para la interfaz de usuario web)
  • Se recomienda usar uv, nvm y pnpm

Pasos de Instalación

# Clonar el repositorio
git clone https://github.com/bytedance/deer-flow.git
cd deer-flow

# Instalar dependencias, uv manejará el intérprete de Python y la creación del entorno virtual, e instalará los paquetes necesarios
uv sync

# Configurar variables de entorno
cp .env.example .env
# Configurar sus claves API:
# - Tavily: https://app.tavily.com/home
# - Brave Search: https://brave.com/search/api/
# - volcengine TTS: Agregue sus credenciales TTS si las tiene

# Configurar el modelo LLM y las claves API
cp conf.yaml.example conf.yaml

# Instalar marp para la generación de PPT
brew install marp-cli

Ejecutar el Proyecto

Interfaz de Usuario de Consola (la forma más rápida)

uv run main.py

Interfaz de Usuario Web

# Primero instale las dependencias de la interfaz de usuario web
cd deer-flow/web
pnpm install

# Ejecute los servidores backend y frontend (modo de desarrollo)
# macOS/Linux
./bootstrap.sh -d

# Windows
bootstrap.bat -d

Luego visite http://localhost:3000 para experimentar la interfaz de usuario web.

Motores de Búsqueda Compatibles

DeerFlow admite varios motores de búsqueda, que se pueden configurar utilizando la variable SEARCH_API en el archivo .env:

  • Tavily (predeterminado): API de búsqueda diseñada para aplicaciones de IA
  • DuckDuckGo: Motor de búsqueda centrado en la privacidad que no requiere una clave API
  • Brave Search: Motor de búsqueda centrado en la privacidad con funciones avanzadas
  • Arxiv: Búsqueda de artículos científicos dedicada a la investigación académica

Ejemplo de configuración:

# Elija uno: tavily, duckduckgo, brave_search, arxiv
SEARCH_API=tavily

Integración de Texto a Voz

DeerFlow incluye funcionalidad de texto a voz (TTS), que le permite convertir informes de investigación en voz. Esta función utiliza la API de volcengine TTS para generar audio de alta calidad, admitiendo velocidad, volumen y tono personalizables.

Ejemplo de Llamada API

curl --location 'http://localhost:8000/api/tts' \
--header 'Content-Type: application/json' \
--data '{
"text": "Esta es una prueba de la función de texto a voz.",
"speed_ratio": 1.0,
"volume_ratio": 1.0,
"pitch_ratio": 1.0
}' \
--output speech.mp3

Desarrollo y Depuración

Ejecutar Pruebas

# Ejecutar todas las pruebas
make test

# Ejecutar un archivo de prueba específico
pytest tests/integration/test_workflow.py

# Ejecutar pruebas de cobertura
make coverage

# Ejecutar comprobación de código
make lint

# Formatear código
make format

Depuración de LangGraph Studio

DeerFlow utiliza LangGraph como su arquitectura de flujo de trabajo. Puede utilizar LangGraph Studio para depurar y visualizar flujos de trabajo en tiempo real.

# Instalar el administrador de paquetes uv (si no lo tiene)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Instalar dependencias e iniciar el servidor LangGraph
uvx --refresh --from "langgraph-cli[inmem]" --with-editable . --python 3.12 langgraph dev --allow-blocking

Después de iniciar el servidor, puede acceder a:

Ejemplos de Uso

Argumentos de Línea de Comandos

# Ejecutar una consulta específica
uv run main.py "¿Cuáles son los factores que influyen en la adopción de la IA en la atención médica?"

# Ejecutar con parámetros de planificación personalizados
uv run main.py --max_plan_iterations 3 "¿Cómo afecta la computación cuántica a la criptografía?"

# Ejecutar en modo interactivo
uv run main.py --interactive

# Ver todas las opciones disponibles
uv run main.py --help

Bucle de Interacción Humano-Máquina

DeerFlow incluye mecanismos de interacción humano-máquina, que le permiten revisar, editar y aprobar planes de investigación antes de la ejecución:

  1. Revisión del Plan: Cuando la interacción humano-máquina está habilitada, el sistema mostrará el plan de investigación generado para su revisión antes de la ejecución
  2. Proporcionar Comentarios: Puede:
    • Aceptar el plan respondiendo [ACCEPTED]
    • Editar el plan proporcionando comentarios (por ejemplo: [EDIT PLAN] Agregar más pasos sobre la implementación técnica)
  3. Aceptación Automática: Puede habilitar la aceptación automática para omitir el proceso de revisión

Informes de Ejemplo

El proyecto incluye varios informes de ejemplo que muestran las capacidades de DeerFlow:

  • Informe de análisis de OpenAI Sora
  • Informe del protocolo de agente a agente de Google
  • Análisis integral de MCP (Protocolo de Contexto del Modelo)
  • Análisis de la volatilidad del precio de Bitcoin
  • Exploración profunda de grandes modelos de lenguaje
  • Mejores prácticas de investigación profunda de Claude
  • Factores que influyen en la adopción de la IA en la atención médica
  • Impacto de la computación cuántica en la criptografía
  • Aspectos destacados del rendimiento de Cristiano Ronaldo

Agradecimientos

DeerFlow se basa en el trabajo excepcional de la comunidad de código abierto, con un agradecimiento especial a:

  • LangChain: Proporciona una excelente interacción LLM y un marco de cadena
  • LangGraph: Enfoque innovador para la orquestación multiagente

Estos proyectos encarnan el poder transformador de la colaboración de código abierto, y nos sentimos honrados de construir DeerFlow sobre su base.

Star History Chart