- 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
-
- Kultureller Einfluss und gesellschaftliche Relevanz
-
- Entwicklung von Figuren, Humor und Handlungsführung
-
- Animation und technische Veränderungen
-
- 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
Hacker-News-Kommentare
Dieses System ist kein echtes lokales System, da es keine lokalen LLMs verwendet
Ich würde gern einen Vergleich mit der Open-Source-Version von HuggingFace sehen
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
Mir gefallen die verschiedenen Ansätze für Deep Research
Es gibt zwei dazugehörige Blogbeiträge
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
Ich hatte nach einem Deep-Research-Tool gesucht, das sich mit meinen persönlichen Notizen (Obsidian) und dem Web verbinden kann
Ich habe es tatsächlich ausprobiert und bin auf einige Probleme gestoßen, sodass ich
openAI-Texteinbettungen durchMilvusEmbeddingersetzen mussteDie echte Wunderwaffe ist die Suche in lib-gen und sci-hub