Heim > Artikel > Technologie-Peripheriegeräte > GraphRAG verstehen (1): Herausforderungen von RAG
RAG (Risk Assessment Grid) ist eine Methode zur Erweiterung vorhandener großer Sprachmodelle (LLM) mit externen Wissensquellen, um kontextbezogenere Antworten zu liefern. In RAG erhält die Abrufkomponente zusätzliche Informationen, die Antwort basiert auf einer bestimmten Quelle und speist diese Informationen dann in die LLM-Eingabeaufforderung ein, sodass die Antwort des LLM auf diesen Informationen basiert (Verbesserungsphase). RAG ist im Vergleich zu anderen Techniken wie dem Trimmen wirtschaftlicher. Es hat auch den Vorteil, Halluzinationen zu reduzieren, indem zusätzlicher Kontext basierend auf diesen Informationen bereitgestellt wird (Augmentationsphase) – Ihr RAG wird zur Workflow-Methode für die heutigen LLM-Aufgaben (wie Empfehlung, Textextraktion, Stimmungsanalyse usw.).
Wenn wir diese Idee basierend auf der Benutzerabsicht weiter aufschlüsseln, fragen wir normalerweise eine Datenbank mit Vektoren ab. Vektordatenbanken verwenden einen kontinuierlichen Vektorraum, um die Beziehung zwischen zwei Konzepten mithilfe einer auf Nähe basierenden Suche zu erfassen.
Im Vektorraum werden Informationen, egal ob Text, Bilder, Audio oder jede andere Art, in Vektoren umgewandelt. Vektoren sind numerische Darstellungen von Daten in einem hochdimensionalen Raum. Jede Dimension entspricht einem Merkmal der Daten, und die Werte in jeder Dimension spiegeln die Stärke oder das Vorhandensein dieses Merkmals wider. Durch die Vektordarstellung können wir mathematische Operationen, Abstandsberechnungen, Ähnlichkeitsvergleiche usw. an den Daten durchführen. Die den verschiedenen Dimensionen entsprechenden Werte spiegeln die Stärke oder das Vorhandensein des Merkmals wider. Am Beispiel von Textdaten kann jedes Dokument als Vektor dargestellt werden, wobei jede Dimension die Häufigkeit eines Wortes im Dokument darstellt. Auf diese Weise können zwei Dokumente
auf Nähe basierende Suchen in Datenbanken durchführen, indem sie den Abstand zwischen ihren Vektoren berechnen, diese Datenbanken einbeziehen und mit einem anderen Vektor abfragen und im Vektorraumvektor nach etwas suchen, das diesem „nahe“ ist. Die Nähe zwischen Vektoren wird normalerweise durch Abstandsmaße wie den euklidischen Abstand, die Kosinusähnlichkeit oder den Manhattan-Abstand bestimmt. Die Nähe zwischen Vektoren wird normalerweise durch Abstandsmaße wie den euklidischen Abstand, die Kosinusähnlichkeit oder den Manhattan-Abstand bestimmt.
Wenn Sie eine Suche in einer Datenbank durchführen, stellen Sie eine Abfrage bereit, die das System in einen Vektor umwandelt. Die Datenbank berechnet dann den Abstand oder die Ähnlichkeit zwischen diesem Abfragevektor und bereits in der Datenbank gespeicherten Vektoren. Vektoren, die nahe am Abfragevektor liegen (gemäß der gewählten Metrik), gelten als die relevantesten Ergebnisse. Die Vektoren, die dem Abfragevektor (basierend auf der gewählten Metrik) am nächsten kommen, gelten als die relevantesten Ergebnisse.
Die auf Nähe basierende Suche ist in Vektordatenbanken besonders leistungsstark und eignet sich für Aufgaben wie Empfehlungssysteme, Informationsabruf und Anomalieerkennung.
Dieser Ansatz ermöglicht es dem System, intuitiver zu arbeiten und effektiver auf Benutzeranfragen zu reagieren, indem es den Kontext und die tiefere Bedeutung der Daten versteht, anstatt sich ausschließlich auf oberflächliche Übereinstimmungen zu verlassen.
Allerdings gibt es einige Einschränkungen bei Anwendungen, die für erweiterte Suchen eine Verbindung zu Datenbanken herstellen, wie z. B. Datenqualität, Fähigkeit zum Umgang mit dynamischem Wissen und Transparenz.
Je nach Größe des Dokuments wird RAG grob in drei Kategorien eingeteilt: Wenn das Dokument klein ist, kann kontextuell darauf zugegriffen werden; wenn das Dokument groß ist (oder mehrere Dokumente vorhanden sind). ) werden bei der Abfrage von Blöcken, die indiziert und als Antwort auf Abfragen verwendet werden, kleinere Daten generiert.
Trotz seines Erfolgs weist RAG einige Mängel auf.
Die beiden Hauptindikatoren zur Messung der Leistung von RAG sind Ratlosigkeit und Halluzination. Ratlosigkeit stellt die Anzahl der gleichermaßen möglichen nächsten Wortwahlen im Textgenerierungsprozess dar. Das heißt, wie „verwirrt“ das Sprachmodell in seiner Auswahl ist. Halluzinationen sind unwahre oder erfundene Aussagen der KI.
Während RAG hilft, Halluzinationen zu reduzieren, beseitigt es sie nicht. Wenn Sie ein kleines und prägnantes Dokument haben, können Sie Verwirrung vermeiden (da es nur wenige LLM-Optionen gibt) und Halluzinationen reduzieren (wenn Sie nur fragen, was in dem Dokument steht). Die Kehrseite ist natürlich, dass ein einzelnes kleines Dokument zu einer trivialen Anwendung führt. Für komplexere Anwendungen benötigen Sie eine Möglichkeit, mehr Kontext bereitzustellen.
Betrachten Sie zum Beispiel das Wort „Rinde“ – wir haben mindestens zwei verschiedene Kontexte:
Baumkontext: „Die raue Rinde einer Eiche schützt sie vor der Kälte.“
Hundekontext : „Der Hund des Nachbarn bellt jedes Mal laut, wenn jemand an seinem Haus vorbeigeht.“
Eine Möglichkeit, mehr Kontext bereitzustellen, besteht darin, einen RAG mit einem Wissensgraphen (einem GRAPHRAG) zu kombinieren.
Im Wissensgraphen werden diese Wörter mit dem Kontext und der damit verbundenen Bedeutung verknüpft. Beispielsweise würde „Rinde“ mit Knoten verbunden, die „Baum“ und „Hund“ darstellen. Andere Zusammenhänge können auf gemeinsame Handlungen hinweisen (z. B. der „Schutz“ des Baums, das „Lärmmachen“ des Hundes) oder Eigenschaften (z. B. die „Rauheit“ des Baums, die „Lautheit“ des Hundes). Diese strukturierten Informationen ermöglichen es dem Sprachmodell, die passende Bedeutung basierend auf anderen Wörtern im Satz oder dem Gesamtthema der Konversation auszuwählen.
Im nächsten Abschnitt werden wir die Einschränkungen von RAG sehen und wie GRAPHRAG diese angeht.
Originaltitel: Understanding GraphRAG – 1: Die Herausforderungen von RAG
Originalautor: ajitjaokar
Das obige ist der detaillierte Inhalt vonGraphRAG verstehen (1): Herausforderungen von RAG. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!