Allgemeine Einführung
Open Deep Research ist ein webbasierter Forschungsassistent, der umfassende Forschungsberichte zu beliebigen Themen erstellt. Das System verwendet einen Plan-and-Do-Workflow, der es den Nutzern ermöglicht, die Struktur des Berichts zu planen und zu überprüfen, bevor sie zur zeitaufwändigen Recherchephase übergehen. Die Benutzer können aus verschiedenen Planungsmodellen, Such-APIs und Schreibmodellen wie Tavily, Perplexity, Anthropic und OpenAI wählen, um den individuellen Bedürfnissen gerecht zu werden.Open Deep Research unterstützt mehrere Iterationen der Reflexion und Suche, um die Tiefe und Genauigkeit des Berichts zu gewährleisten. Benutzer können das Tool durch einfache Konfigurationsdateien und Befehlszeilenoperationen schnell einsetzen und verwenden.
Funktionsliste
- Geben Sie einen Überblick über die Struktur des Berichts
- Einrichten von Planungsmodellen (z. B. DeepSeek, OpenAI-Inferenzmodelle usw.)
- Feedback zu den Plänen für jeden Abschnitt des Berichts und Überarbeitung, bis die Nutzer zufrieden sind
- Einstellung von Such-APIs (z. B. Tavily, Perplexity) und Anzahl der Suchen pro Studieniteration
- Einstellung der Suchtiefe (Anzahl der Iterationen) für jeden Abschnitt
- Individuelle Schreibmodelle (z. B. Anthropic)
- LangGraph Studio UI lokal ausführen
- Automatische Erstellung von strukturierten Forschungsberichten
- Unterstützung mehrerer Suchvorgänge und reflektierender Wiederholungen zur Verbesserung der Berichtsqualität
Hilfe verwenden
Schnellstart
- Vergewissern Sie sich, dass der API-Schlüssel für das gewünschte Tool festgelegt wurde.
- Wählen Sie ein Web-Suchwerkzeug (standardmäßig wird Tavily verwendet):
- Tavily-API
- Perplexität API
- Wählen Sie ein Schreibmodell (standardmäßig wird Anthropic verwendet) Claude 3,5 Sonnet):
- Anthropisch
- OpenAI
- Groq
- Wählen Sie ein Planungsmodell (OpenAI o3-mini wird standardmäßig verwendet):
- OpenAI
- Groq
Verwendung
virtualisierte Umgebung
- Erstellen Sie eine virtuelle Umgebung:
python -m venv open_deep_research source open_deep_research/bin/activate
- Einbau:
pip install open-deep-research
Verwendung des Jupyter-Notebooks in
- Importieren und kompilieren Sie das Diagramm:
from langgraph.checkpoint.memory import MemorySaver from open_deep_research.graph import builder memory = MemorySaver() graph = builder.compile(checkpointer=memory)
- Tabelle anzeigen:
from IPython.display import Image, display display(Image(graph.get_graph(xray=1).draw_mermaid_png()))
- Führen Sie die Karte aus:
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")
- Übermitteln Sie nach der Erstellung des Berichtsplans ein Feedback zur Aktualisierung des Berichtsplans:
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")
- Eingereicht, wenn Sie mit dem Meldesystem zufrieden sind
True
um Berichte zu erstellen:async for event in graph.astream(Command(resume=True), thread, stream_mode="updates"): print(event) print("\n")
LangGraph Studio UI lokal ausführen
- Klon-Lagerhaus:
git clone https://github.com/langchain-ai/open_deep_research.git cd open_deep_research
- Compiler
.env
Datei, um den API-Schlüssel festzulegen:cp .env.example .env
- Setzen von Umgebungsvariablen:
export TAVILY_API_KEY=<your_tavily_api_key> export ANTHROPIC_API_KEY=<your_anthropic_api_key> export OPENAI_API_KEY=<your_openai_api_key>
- Starten Sie den LangGraph-Server:
- Mac:
curl -LsSf https://astral.sh/uv/install.sh | sh uvx --refresh --from "langgraph-cli[inmem]" --with-editable . --python 3.11 langgraph dev
- Fenster:
pip install -e . pip install langgraph-cli[inmem] langgraph dev
- Mac:
- Öffnen Sie die Studio-Benutzeroberfläche:
- 🚀 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
Maßgeschneiderte Berichte
report_structure
:: Definieren Sie eine benutzerdefinierte Berichtsstruktur (standardmäßig wird das Format des Forschungsberichts verwendet)number_of_queries
Anzahl der Suchanfragen, die pro Abschnitt generiert werden (Standard: 2)max_search_depth
Maximale Suchtiefe (Standard: 2)planner_provider
Modellierungsanbieter für die Planungsphase (Standard: "openai", optional "groq")planner_model
:: Spezifisches Modell, das für die Planung verwendet wird (Standard: "o3-mini", optional "deepseek-r1-distill-llama-70b").writer_model
:: Modell, das zum Schreiben des Berichts verwendet wird (Standard: "claude-3-5-sonnet-latest")search_api
Suche: Verwendete API (Standard: Tavily)