AI Personal Learning
und praktische Anleitung
CyberKnife-Zeichenspiegel

r1-reasoning-rag: neue Ideen für RAG auf der Grundlage von rekursiven Schlussfolgerungen aus gesammelten Informationen

Reasoning und rekursive Abfrage mit Deepseek-r1, Tavily und LangGraph

Ich habe vor kurzem ein Open-Source-Projekt entdeckt, das eine großartige RAG Die Idee, dass es DeepSeek-R1 Die Argumentationsfähigkeit der Kombination von Agentisch Arbeitsablauf Angewandt auf die RAG-Suche


Adresse des Projekts
https://github.com/deansaco/r1-reasoning-rag.git

Das Projekt wird durch eine Kombination folgender Maßnahmen durchgeführt DeepSeek-R1, undTavily im Gesang antworten LangGraphdas einen KI-gesteuerten dynamischen Mechanismus für die Suche nach Informationen und die Beantwortung von Fragen implementiert, der sich auf Deepseek (in Form eines Nominalausdrucks) r1 Reasoning zum proaktiven Abrufen, Verwerfen und Synthetisieren von Informationen aus der Wissensbasis, um eine komplexe Frage vollständig zu beantworten

 

Alte vs. Neue RAG

Herkömmliche RAG (Retrieval Augmented Generation) ist ein wenig starr. Nachdem die Suche verarbeitet wurde, wird normalerweise ein Teil des Inhalts durch eine Ähnlichkeitssuche gefunden und dann nach dem Grad der Übereinstimmung neu geordnet, und die Informationen, die zuverlässig erscheinen, werden an ein großes Sprachmodell (LLM) gegeben, um die Antwort zu generieren. Dies hängt jedoch besonders von der Qualität des Umordnungsmodells ab, und wenn das Modell nicht stark ist, können leicht wichtige Informationen übersehen oder die falschen Informationen an das LLM weitergegeben werden, und die resultierende Antwort wird nicht zuverlässig sein.

vorhanden. LangGraph Das Team hat das Verfahren erheblich verbessert, indem es die DeepSeek-R1 Die leistungsstarke Denkfähigkeit der KI hat die frühere unbewegliche Filtermethode in einen flexibleren und dynamischen Prozess verwandelt, der je nach Situation angepasst werden kann. Sie nennen dies "Agent Retrieval", das es der KI ermöglicht, nicht nur aktiv fehlende Informationen zu finden, sondern auch ihre eigene Strategie bei der Suche nach Informationen kontinuierlich zu optimieren, wodurch eine Art zyklischer Optimierungseffekt entsteht, so dass die an den LLM übergebenen Inhalte genauer werden.

Diese Verbesserung wendet die Konzepte des erweiterten Testzeit-Schlussfolgerns innerhalb des Modells auf den RAG-Abruf an und verbessert die Genauigkeit und Effizienz des Abrufs erheblich. Dieser neue Ansatz ist auf jeden Fall einen Blick wert für alle, die an RAG-Retrievaltechniken arbeiten!

 

Kerntechnologie und Highlights

DeepSeek-R1 Begründungen

aktualisiert DeepSeek-R1 ist ein leistungsfähiges Inferenzmodell

  • Tiefgreifende Analyse von Informationsinhalten
  • Bewertung der vorhandenen Inhalte
  • Identifizierung fehlender Inhalte durch mehrere Runden von Schlussfolgerungen zur Verbesserung der Genauigkeit der Suchergebnisse

 

Tavily Sofortige Informationssuche

Tavily Sofortige Informationssuche, die das große Modell an den neuesten Informationen vorbeiführen kann und den Wissensumfang des Modells erweitert.

  • Dynamische Abfrage, um fehlende Informationen zu ergänzen, statt sich nur auf statische Daten zu verlassen.

 

LangGraph Rekursiver Abruf (RR)

über Agentische KI Mechanismus, der es dem großen Modell ermöglicht, nach mehreren Runden des Abrufs und der Schlussfolgerung einen geschlossenen Lernkreislauf zu bilden, mit dem folgenden allgemeinen Prozess:

  • Der erste Schritt ist die Suche nach Informationen über das Problem
  • Der zweite Schritt besteht darin, zu analysieren, ob die Informationen ausreichen, um die Frage zu beantworten.
  • Schritt 3 Wenn die Informationen unzureichend sind, stellen Sie weitere Nachforschungen an.
  • Schritt 4 Filtern Sie irrelevante Inhalte und behalten Sie nur gültige Informationen

wie rekursiv Retrieval-Mechanismus, um sicherzustellen, dass das große Modell die Abfrageergebnisse kontinuierlich optimieren kann, so dass die gefilterten Informationen vollständiger und genauer werden.

 

Quellcode-Analyse

Aus dem Quellcode geht hervor, dass es sich um drei einfache Dateien handelt:Agent, undllm, undAufforderungen

blank

 

Agent

Der Kerngedanke dieses Abschnitts ist, dass Arbeitsablauf erstellen diese Funktion

blank Sie definiert dies Arbeitsablauf Der Knoten der add_conditional_edges Ein Teil der Definition ist die bedingte Kante, und die ganze Idee der Verarbeitung ist die rekursive Logik des Graphen vom Anfang

Wenn Sie nicht vertraut sind LangGraph Wenn Sie das tun, können Sie sich die Informationen ansehen.
LangGraph Das Konstrukt ist eine Graphdatenstruktur mit Knoten und Kanten, und die Kanten können bedingt sein.

 

Nach jedem Abruf wird er durch das große Modell gescreent, wobei unbrauchbare Informationen herausgefiltert (Filter Out Irrelevant Information), nützliche Informationen beibehalten (Retain Useful Information) und fehlende Informationen ermittelt (Identify Missing Information) werden. Der Prozess wird so lange wiederholt, bis die gewünschte Antwort gefunden ist.

Aufforderungen

Es gibt zwei Hauptmerkmale, die hier definiert sind.VALIDIEREN_ABRUFEN Sie wird verwendet, um zu überprüfen, ob die abgerufenen Informationen die gestellte Frage beantworten können. Die Vorlage hat zwei Eingabevariablen: retrieved_context und question. Ihr Hauptzweck besteht darin, eine JSON-formatierte Antwort zu generieren, die anhand der angegebenen Textblöcke feststellt, ob sie Informationen enthält, die die Frage beantworten können. blank

ANTWORT_FRAGEVorlage zur Beantwortung von Fragen: Wird verwendet, um einen Agenten zur Beantwortung von Fragen anzuweisen, eine Frage auf der Grundlage eines vorgegebenen Textblocks zu beantworten. Die Vorlage hat auch zwei Eingabevariablen: retrieved_context und question. Ihr Hauptzweck besteht darin, eine direkte und präzise Antwort auf der Grundlage der gegebenen Kontextinformationen zu geben.

blank

llm

Hier ist es einfach, die Verwendung von r1 Modellierung

blank

Es ist möglich, auf Modelle anderer Anbieter umzusteigen, zum Beispiel openrouter kostenlos r1 Modellierung

blank

 

Testwirkung

Ich habe hier ein separates Skript geschrieben, das nicht das Skript im Projekt verwendet und nach dem Wer ist der Meister von Nezhas Meister in "Ne Zha 2"?

blank

Zuerst wird die Suche aufgerufen, um die Informationen zu suchen, und dann wird mit der Validierung der

blank

Dann beginnt es mit der Analyse und erhält Ne Zha's Meister ist Tai Yi Zhen Diese Informationen sind zutreffend, aber es wurden auch fehlende Informationen gefunden Die spezifische Identität oder der Name von Taiyis Meister (d. h. Nezhas Meister)

blank

Anschließend wird nach den fehlenden Informationen gesucht, und die zurückerhaltenen Informationen werden weiter analysiert und überprüft.

blank

Später meldete es einen Fehler, weil das Netzwerk bei mir ausgefallen war, aber wie Sie auf dem obigen Bild sehen können, hätte es in der Lage sein müssen, diese wichtige Information zu finden

CDN1
Darf nicht ohne Genehmigung vervielfältigt werden:Chef-KI-Austauschkreis " r1-reasoning-rag: neue Ideen für RAG auf der Grundlage von rekursiven Schlussfolgerungen aus gesammelten Informationen

Chef-KI-Austauschkreis

Der Chief AI Sharing Circle konzentriert sich auf das KI-Lernen und bietet umfassende KI-Lerninhalte, KI-Tools und praktische Anleitungen. Unser Ziel ist es, den Nutzern dabei zu helfen, die KI-Technologie zu beherrschen und gemeinsam das unbegrenzte Potenzial der KI durch hochwertige Inhalte und den Austausch praktischer Erfahrungen zu erkunden. Egal, ob Sie ein KI-Anfänger oder ein erfahrener Experte sind, dies ist der ideale Ort für Sie, um Wissen zu erwerben, Ihre Fähigkeiten zu verbessern und Innovationen zu verwirklichen.

Kontaktieren Sie uns
de_DE_formalDeutsch (Sie)