Agentic RAG mit DeepSeek R1: Ein leistungsstarker Ansatz für LLM-Workflows

5. Februar 2025
ℹ️Hinweis zur Quelle

Dieser Blogartikel wurde automatisch erstellt (und übersetzt). Er basiert auf dem folgenden Original, das ich für die Veröffentlichung auf diesem Blog ausgewählt habe:
You HAVE to Try Agentic RAG with DeepSeek R1 (Insane Results).

Agentic RAG mit DeepSeek R1: Ein leistungsstarker Ansatz für LLM-Workflows

DeepSeek R1 hat als Open-Source-Reasoning-LLM große Aufmerksamkeit erregt. Während viele Diskussionen sich auf seine Implikationen und spezifischen Stärken und Schwächen konzentrieren, rückt dieser Artikel die agentischen Workflows, die durch R1 ermöglicht werden, in den Fokus. Es wird argumentiert, dass gerade diese Anwendungsmöglichkeiten ein tieferes Verständnis verdienen.

Die Kombination von Stärke und Geschwindigkeit

Reasoning-Modelle wie R1 sind leistungsstark, aber auch rechenintensiv. Eine vielversprechende Strategie besteht darin, die Fähigkeiten von R1 mit schnelleren, leichteren Modellen zu kombinieren, die den Konversations- oder Agentenfluss steuern. In diesem Szenario fungiert R1 als Werkzeug, das bei Bedarf für komplexe Schlussfolgerungen hinzugezogen wird, was zu einer verlangsamten Antwortzeit führt.

Konkret bedeutet dies, dass ein R1-gesteuertes RAG-Tool (Retrieval-Augmented Generation) geschaffen wird, das in der Lage ist, detaillierte Einblicke aus einer Wissensbasis zu gewinnen, während der restliche Dialog agil bleibt. Selbst mit kleineren Distill-Versionen von R1 lassen sich bemerkenswerte Ergebnisse erzielen. Es stellt sich die Frage, wie diese Kombination die Effizienz und Qualität von LLM-basierten Anwendungen verbessern kann.

Ein einfaches Beispiel mit Small Agents

Als Einführung in diese Art von agentischen Flows wird ein einfaches Setup mit Small Agents von Hugging Face und einer lokalen Wissensbasis verwendet.

Der Workflow im Detail

Der Workflow besteht aus einem primären LLM (z.B. Llama oder Quen), das kein Reasoning-LLM ist, sondern durch Small Agents Probleme schrittweise zerlegt. Benötigt das primäre LLM Wissen, greift es auf ein Tool zu, das eine Retrieval-Operation mit RAG in einer Vektordatenbank durchführt. Der relevante Kontext wird an R1 weitergeleitet, um die nötigen Erkenntnisse zu extrahieren. Diese Erkenntnisse werden dann an den primären Agenten zurückgegeben, um die Konversation fortzusetzen.

Installation und Einrichtung

Für die Implementierung werden Small Agents und Ollama verwendet. Small Agents ermöglicht die schnelle Erstellung von agentischen Workflows, während Ollama die lokale Ausführung von R1 ermöglicht. DeepSeek bietet verschiedene Versionen von R1 an, darunter auch kleinere, destillierte Versionen, die auf Standardhardware ausgeführt werden können. Interessanterweise wurden die Distill-Versionen durch Finetuning von Modellen wie Quen und Llama mit Daten von DeepSeek R1 erstellt, was sie zu kleinen Reasoning-LLMs macht.

Die Erstellung des Agentic RAG Systems

Die Erstellung des agentischen RAG-Systems umfasst die folgenden Schritte:

  1. Import der benötigten Bibliotheken (hauptsächlich von Small Agents).
  2. Laden der Umgebungsvariablen (IDs für Reasoning-Modell und Tool-Modell, Hugging Face API Token).
  3. Definition einer Funktion zum Abrufen des Modells, entweder über Hugging Face oder lokal über Ollama (Ollama ist OpenAI API-kompatibel).
  4. Erstellung des Reasoning-Modells (R1) und des Code Agent (Small Agents).
  5. Einrichtung des RAG-Tools mit einem Embedding-Modell und einer Vektordatenbank.
  6. Definition des Tools mit dem @tool Decorator von Small Agents.
  7. Erstellung des Primary LLM als Tool-Calling Agent.
  8. Erstellung der Benutzeroberfläche mit einer einzigen Zeile Code durch die Integration von Small Agents mit Gradio UI.

Es stellt sich die Frage, wie diese modulare Vorgehensweise die Anpassungsfähigkeit und Erweiterbarkeit des Systems fördert.

Die Rolle der Wissensbasis

Der Artikel demonstriert die Einrichtung einer lokalen Wissensbasis mit Chroma DB. Dabei werden PDFs aus einem Datenverzeichnis geladen, in Chunks zerlegt und in die Vektordatenbank eingefügt.

Ollama und Modellkonfiguration

Ein wichtiger Hinweis betrifft die Kontextlänge von Ollama-Modellen, die standardmäßig auf 2048 Tokens begrenzt ist. Der Artikel beschreibt, wie man diese Grenze durch Anpassung der Modelldateien erhöht.

Ausblick

Die vorgestellte Implementierung dient als Ausgangspunkt für komplexere agentische RAG-Systeme. Die Kombination von Reasoning-Modellen wie R1 mit schnelleren LLMs eröffnet vielversprechende Möglichkeiten.

Abschließend lässt sich sagen, dass die Integration von DeepSeek R1 in agentische RAG-Workflows einen leistungsstarken Ansatz zur Nutzung von LLMs darstellt. Die Kombination von spezialisierten Modellen, die durch eine klare Aufgabenverteilung zusammenarbeiten, eröffnet neue Perspektiven für die Entwicklung intelligenter Systeme. Welchen Weg wollen wir einschlagen, um das volle Potenzial dieser Technologien auszuschöpfen?


Die Kommentare sind geschlossen.