15 Punkte von GN⁺ 2025-02-28 | 1 Kommentare | Auf WhatsApp teilen
  • Mit Open-Source-Modellen und Tools (Milvus, LangChain usw.) wird ein Research-Agent im Stil von Deep Research umgesetzt
  • Es gibt immer mehr Beispiele für Agentenstrukturen, die über Web- und Dokumentensuche automatisch tiefgehende Recherchen zu einem Thema oder einer Frage durchführen und in jedem Zwischenschritt Aktionen auswählen (Suche, Zusammenfassung usw.)
  • Der Artikel stellt das Open-Source-Projekt DeepSearcher vor, das diese Idee erweitert. Vorgestellt werden Query Routing, bedingte Ausführungsabläufe und die Nutzung von Web-Crawling-Tools
  • DeepSearcher wird als Python-Bibliothek und CLI bereitgestellt, kann mehrere Quelldokumente als Eingabe verarbeiten und erlaubt es, Embedding-Modelle sowie die Vektor-DB-Konfiguration einfach per Datei anzupassen
  • Als einfaches, aber anschauliches Beispiel für agentenbasiertes RAG kann es als Ausgangspunkt für die Entwicklung realer KI-Anwendungen dienen
  • Besonders hervorgehoben werden die Geschwindigkeits- und Effizienzprobleme von Reasoning-Modellen: Da im Anfrage- und Suchprozess viele Tokens erzeugt werden müssen, werden Inference-Ressourcen zum Engpass
  • Mit dem DeepSeek-R1 reasoning model, das auf spezialisierter Hardware von SambaNova läuft, ist die Token-Generierung pro Sekunde schneller als bei konkurrierenden Diensten
  • Solche Cloud-Inference-Services ermöglichen auch für verschiedene Modelle wie Llama 3.x, Qwen2.5 und QwQ eine effiziente Inference

Definition und Aufschlüsselung der Fragen

  • Die anfängliche Nutzeranfrage wird in detaillierte Unteranfragen zerlegt
  • Ähnlich wie im vorherigen Artikel wird eine Anfrage wie "How has The Simpsons changed over time?" in mehrere Unteranfragen aufgeteilt
    • Beispiele: kultureller und gesellschaftlicher Einfluss des Werks, Veränderungen bei Figuren, Humor und Erzählweise nach Staffel, Veränderungen bei Animation und Produktionstechnik, Veränderungen in der Publikumsreaktion usw.
  • In späteren Schritten werden Fragen bei Bedarf zusätzlich neu definiert oder erweitert

Recherche und Analyse

  • Auf Basis der Unteranfragen durchläuft das System die Schritte Query Routing, Vektorsuche, Reflection und bedingte Wiederholung
  • Query Routing
    • Der Prompt wird so aufgebaut, dass das LLM entscheidet, welche von mehreren Datenbank-Collections verwendet werden soll
    • Es wird eine Antwort im JSON-Format angenommen, um Suchanfragen je Collection zu erzeugen
  • Vektorsuche
    • Mithilfe der in Milvus gespeicherten Embeddings wird eine Ähnlichkeitssuche ausgeführt
    • Ähnlich wie im vorherigen Artikel werden die Quelldaten im Voraus segmentiert und vektorisiert
  • Reflection
    • Das LLM prüft anhand der im vorherigen Schritt entstandenen Anfragen und Antworten, ob zusätzliche Informationen nötig sind
    • Wenn etwas fehlt, erzeugt es neue Unteranfragen und versucht eine erneute Suche
  • Bedingte Wiederholung
    • Wenn das Reflection-Ergebnis zusätzliche Anfragen erfordert, wird der obige Prozess wiederholt
    • Wenn entschieden wird, dass keine weiteren Informationen gesammelt werden müssen, geht das System zur Erstellung des Abschlussberichts über

Erstellung des Abschlussberichts

  • Alle Unteranfragen und Suchergebnisse werden zusammengeführt und mit einem einzigen Prompt ein Bericht erzeugt
  • Dadurch entsteht ein Bericht mit höherer Konsistenz und Kohärenz als in der vorherigen Demo
  • So liefert der Abschlussbericht zu „How has The Simpsons changed over time?“ beispielsweise detaillierte Inhalte in folgender Struktur
      1. Kultureller Einfluss und gesellschaftliche Relevanz
      1. Entwicklung von Figuren, Humor und Handlungsführung
      1. Animation und technische Veränderungen
      1. Veränderungen bei Zielgruppen, Reaktionen und Einschaltquoten
    • Fazit: etwa der Wandel des Werks von früherer rebellischer Satire zu einer Ikone der Popkultur
  • Es lassen sich Berichte vergleichen, die mit dem Modell DeepSeek-R1 bzw. mit GPT-4o mini erzeugt wurden

Ausblick

  • DeepSearcher ist noch relativ einfach, kann aber durch zusätzliche Agentenkonfigurationen, Strukturierung der Berichte und Erweiterung bedingter Wiederholungen weiterentwickelt werden
  • Große Reasoning-Modelle erfordern sehr aufwendige Berechnungen, weshalb Inference-Geschwindigkeit und Kosten zu zentralen Themen des Dienstes werden
  • Mit dem DeepSeek-R1-Modell von SambaNova wurden 65 Inference-Aufrufe, rund 25k Input-Tokens und 22k Output-Tokens genutzt; für Kosten von etwa 0,30 US-Dollar wurde dabei eine ausreichend schnelle Antwort erzielt
  • Das Projekt kann direkt im DeepSearcher-Repository ausprobiert werden; weitere Funktionen und Anwendungsbeispiele sollen auch künftig kontinuierlich geteilt werden

1 Kommentare

 
GN⁺ 2025-02-28
Hacker-News-Kommentare
  • Dieses System ist kein echtes lokales System, da es keine lokalen LLMs verwendet

    • Ich frage mich, ob es einen Deep Searcher gibt, der lokale, von Ollama und LM Studio gehostete LLMs nutzen kann
  • Ich würde gern einen Vergleich mit der Open-Source-Version von HuggingFace sehen

    • Die HF-Version verwendet ein schlussfolgerndes LLM, das das Web durchsucht, Ergebnisse sammelt, anschließend bewertet und daraus das Endergebnis synthetisiert
    • Diese Version scheint einen Vektorspeicher der beim Web-Crawling erzeugten Dokumente zu zeigen
  • Der Zauber von Groks Implementierung liegt wohl größtenteils darin, dass der Großteil des Webs gecacht ist, wodurch sie sich extrem schnell anfühlt

    • Bing-/Brave-Suche scheint diese Funktion nicht zu bieten
    • Ich frage mich, ob es einen solchen Dienst gibt
  • Mir gefallen die verschiedenen Ansätze für Deep Research

    • Ich experimentiere gerade mit neuen Workflows unter Verwendung von Flow
  • Es gibt zwei dazugehörige Blogbeiträge

    • Darin werden Erfahrungen beim Aufbau von Deep Research mit Open Source geteilt
  • Da die großen KI-Unternehmen alle dasselbe Deep-Research-Produkt gebaut haben, scheint es sinnvoller zu sein, sich auf eine gemeinsame Open-Source-Plattform zu konzentrieren

  • Ich frage mich, was die praktische Bedeutung der Web-Crawling-Integration ist

    • Theoretisch könnte sie genutzt werden, um auf Sci-Hub Artikel zu lesen und daraus valide Forschung auf Graduiertenniveau zu erzeugen
    • Sie könnte nützlich sein, um Berichte zu vergleichen, die mit DeepSeek R1, GPT-4o und anderen großen Modellen erstellt wurden
    • Open-Source-Code könnte die Grenzen verschiedener LLMs schneller offenlegen und dabei helfen, bessere Reasoning-Loops für spezifische Anforderungen zu entwickeln
  • Ich hatte nach einem Deep-Research-Tool gesucht, das sich mit meinen persönlichen Notizen (Obsidian) und dem Web verbinden kann

    • Dieses Tool scheint diese Funktion zu haben
    • Jetzt bleibt nur noch, einen Weg zu finden, die Ergebnisse von Deep Research nach Obsidian zu exportieren
  • Ich habe es tatsächlich ausprobiert und bin auf einige Probleme gestoßen, sodass ich openAI-Texteinbettungen durch MilvusEmbedding ersetzen musste

    • Die Reaktion auf QuickStart war gut
  • Die echte Wunderwaffe ist die Suche in lib-gen und sci-hub