Open Deep Research: el asistente inteligente de código abierto de LangChain para la investigación profunda

Introducción general

Open Deep Research es un asistente de investigación basado en web que genera informes de investigación exhaustivos sobre cualquier tema. El sistema utiliza un flujo de trabajo de planificar y hacer que permite a los usuarios planificar y revisar la estructura del informe antes de pasar a la fase de investigación, que lleva mucho tiempo. Los usuarios pueden elegir entre diferentes modelos de planificación, API de búsqueda y modelos de redacción como Tavily, Perplexity, Anthropic y OpenAI para satisfacer las necesidades individuales.Open Deep Research admite múltiples iteraciones de reflexión y búsqueda para garantizar la profundidad y precisión del informe. Los usuarios pueden desplegar y utilizar rápidamente la herramienta mediante sencillos archivos de configuración y operaciones de línea de comandos.

Open Deep Research:LangChain开源的深度研究智能助手

 

Lista de funciones

  • Esbozar la estructura del informe
  • Configuración de modelos de planificación (por ejemplo, DeepSeek, modelos de inferencia OpenAI, etc.)
  • Comentarios sobre los planes para cada sección del informe e iteración hasta que los usuarios estén satisfechos.
  • Configuración de API de búsqueda (por ejemplo, Tavily, Perplexity) y número de búsquedas por iteración del estudio
  • Ajuste de la profundidad de búsqueda (número de iteraciones) para cada sección
  • Modelos de redacción personalizados (por ejemplo, Anthropic)
  • Ejecutar LangGraph Studio UI localmente
  • Generación automática de informes de investigación estructurados
  • Soporte de múltiples búsquedas e iteraciones reflexivas para mejorar la calidad de los informes

 

Utilizar la ayuda

inicio rápido

  1. Asegúrese de que se ha establecido la clave API para la herramienta requerida.
  2. Seleccione una herramienta de búsqueda web (por defecto se utiliza Tavily):
  3. Seleccione un modelo de escritura (por defecto se utiliza el antrópico) Claude 3,5 Soneto):
  4. Seleccione un modelo de planificación (OpenAI o3-mini se utiliza por defecto):
    • OpenAI
    • Groq

Utilización

entorno virtualizado

  1. Crear un entorno virtual:
    python -m venv open_deep_research
    source open_deep_research/bin/activate
    

  1. Instalación:
    pip install open-deep-research
    

Uso de Jupyter Notebook en

  1. Importa y compila el gráfico:
    from langgraph.checkpoint.memory import MemorySaver
    from open_deep_research.graph import builder
    memory = MemorySaver()
    graph = builder.compile(checkpointer=memory)
    
  2. Ver gráfico:
    from IPython.display import Image, display
    display(Image(graph.get_graph(xray=1).draw_mermaid_png()))
    
  3. Ejecuta el gráfico:
    import uuid 
    thread = {"configurable": {"thread_id": str(uuid.uuid4()),
    "search_api": "tavily",
    "planner_provider": "openai",
    "planner_model": "o3-mini",
    "writer_provider": "anthropic",
    "writer_model": "claude-3-5-sonnet-latest",
    "max_search_depth": 1,
    }}
    topic = "Overview of the AI inference market with focus on Fireworks, Together.ai, Groq"
    async for event in graph.astream({"topic":topic,}, thread, stream_mode="updates"):
    print(event)
    print("\n")
    
  4. Después de generar el plan de informes, envíe sus comentarios para actualizar el plan de informes:
    from langgraph.types import Command
    async for event in graph.astream(Command(resume="Include a revenue estimate (ARR) in the sections"), thread, stream_mode="updates"):
    print(event)
    print("\n")
    
  5. Se presenta cuando se está satisfecho con el sistema de notificaciónTruepara generar informes:
    async for event in graph.astream(Command(resume=True), thread, stream_mode="updates"):
    print(event)
    print("\n")
    

Ejecutar LangGraph Studio UI localmente

  1. Almacén de clonación:
    git clone https://github.com/langchain-ai/open_deep_research.git
    cd open_deep_research
    
  2. compilador.envpara establecer la clave API:
    cp .env.example .env
    
  3. Configuración de variables de entorno:
    export TAVILY_API_KEY=<your_tavily_api_key>
    export ANTHROPIC_API_KEY=<your_anthropic_api_key>
    export OPENAI_API_KEY=<your_openai_api_key>
    
  4. Inicie el servidor LangGraph:
    • Mac:
      curl -LsSf https://astral.sh/uv/install.sh | sh
      uvx --refresh --from "langgraph-cli[inmem]" --with-editable . --python 3.11 langgraph dev
      
    • Ventanas:
      pip install -e .
      pip install langgraph-cli[inmem]
      langgraph dev
      
  5. Abre la interfaz de Studio:
    - 🚀 API: http://127.0.0.1:2024
    - 🎨 Studio UI: https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024
    - 📚 API Docs: http://127.0.0.1:2024/docs
    

Informes personalizados

  • report_structure:: Defina una estructura de informe personalizada (por defecto se utiliza el formato de informe de investigación estándar)
  • number_of_queries:: Número de consultas de búsqueda generadas por sección (por defecto: 2)
  • max_search_depthProfundidad máxima de búsqueda (por defecto: 2)
  • planner_provider:: Proveedor de modelos para la fase de planificación (por defecto: "openai", opcional "groq")
  • planner_model:: Modelo específico utilizado para la planificación (por defecto: "o3-mini", opcionalmente "deepseek-r1-distill-llama-70b").
  • writer_model:: Modelo utilizado para escribir el informe (por defecto: "claude-3-5-sonnet-latest")
  • search_api: API de búsqueda utilizada (por defecto: Tavily)
© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...