Kommendes Webinar: Unternehmenssicherheit für Claude Code | 21. April · 11 Uhr PST. Registriere dich hier →

Eine vollständige Anleitung zum Abrufen Augmented Generation 2024

von TrueFoundry

Aktualisiert: May 22, 2024

Fassen Sie zusammen mit

Stellen Sie sich vor, Sie fragen eine KI:“Wie ist das aktuelle Wetter in Bangalore?“ und es reagiert,“Ich kann keine Echtzeitinformationen bereitstellen.„Dies ist eine typische Einschränkung vieler Sprachmodelle, die ausschließlich auf vorab trainierten Daten basieren und nicht in der Lage sind, Echtzeitinformationen abzurufen und zu nutzen. Hier kommt das Konzept der Retrieval-Augmented Generation ins Spiel, ein bahnbrechender Ansatz in den Bereichen künstliche Intelligenz (KI) und natürliche Sprachverarbeitung (NLP). Es bietet eine Methode, mit der Maschinen auf dem neuesten Stand bleiben und Antworten auf komplexe Anfragen liefern können.

Dies ist eine Beispielantwort von GPT-3.5

Retrieval-Augmented Generation (RAG) schließt diese Lücke, indem es die leistungsstarken generativen Fähigkeiten von Modellen wie GPT (Generative Pre-trained Transformer) mit dynamischem, externem Datenabruf kombiniert. RAG ermöglicht es der KI, in Echtzeit auf aktuelle Informationen aus verschiedenen Quellen zuzugreifen, wodurch diese nicht nur informativer, sondern auch genauer werden.

Beispielsweise würde ein RAG-gestütztes System zunächst die neuesten Wetterdaten aus einer zuverlässigen Quelle abrufen, wenn es nach dem Wetter gefragt wird, und diese Informationen dann verwenden, um eine aktuelle und kontextgenaue Antwort zu generieren. Diese Fähigkeit, die Generierung durch zeitnahen Abruf zu erweitern, verändert die Art und Weise, wie KI mit Benutzern interagieren, und liefert Antworten, die nicht nur plausibel, sondern auch sachlich korrekt und kontextreich sind.

Diese dynamische Verschmelzung von Abruf und Generierung eröffnet neue Möglichkeiten für KI-Anwendungen, von verbesserten Kundenservice-Bots und ausgeklügelten Informationsabrufsystemen bis hin zu reaktionsschnelleren und interaktiveren Tools für Datenanalyse und Entscheidungsfindung.

Retrieval-Augmented Generation (RAG) wurde insbesondere von einem Team von Facebook AI Research (FAIR) in ihrem Artikel aus dem Jahr 2020 vorgestellt. Die Methode kombinierte das Abrufen von Dokumenten, die für eine Abfrage relevant sind, mit einem generativen Modell, um den Generierungsprozess zu verbessern. Dieser Fortschritt hat erhebliche Auswirkungen auf verschiedene Bereiche, insbesondere auf die Verarbeitung natürlicher Sprache (NLP).

Im Bereich NLP hat RAG die Art und Weise verändert, wie Modelle mit Aufgaben umgehen, die komplexes Denken und den Zugriff auf externes Wissen erfordern, wie z. B. das Beantworten von Fragen und das Abrufen von Informationen. Durch die Nutzung einer Abrufkomponente zum Abrufen relevanter Informationen und einer generativen Komponente zur Synthese dieser Informationen zu kohärenten Antworten waren RAG-Modelle in der Lage, genauere und kontextuell angereicherte Ergebnisse zu liefern.

Neben NLP findet RAG auch Anwendungen in Bereichen wie dem Kundensupport, wo es dynamische, wissensbasierte Antworten geben kann, und bei der Inhaltsgenerierung, wo es durch den Zugriff auf aktuelle Informationen informativere und genauere Inhalte produzieren kann.

Kernkomponenten von RAG

Retriever

Retriever sind in der RAG-Architektur von entscheidender Bedeutung und dienen als Komponente, die für das Abrufen relevanter Informationen aus einem Datensatz oder einer Wissensdatenbank verantwortlich ist. Ihre Hauptfunktion besteht darin, die Fähigkeit der KI zu verbessern, auf externe, aktualisierte Informationen zuzugreifen und diese zu nutzen, die nicht von Natur aus im Modell selbst gespeichert sind. Es gibt zwei Haupttypen von Retrievern:

Sparse Retriever: Diese basieren auf schlüsselwortbasierten Methoden wie TF-IDF oder BM25, um relevante Dokumente abzurufen. Sie eignen sich für eine Vielzahl von Datensätzen und sind weniger rechenintensiv.

Dense Retriever: Diese verwenden Deep-Learning-Techniken, um Dokumente zu verstehen und abzurufen, die auf semantischer Ähnlichkeit und nicht auf der Suche nach Schlüsselwörtern basieren. Sie sind besonders nützlich bei der Bearbeitung komplexer Abfragen, die das Verständnis nuancierter Bedeutungen erfordern.

Plattformen wie OpenAI und Hugging Face bieten Tools und APIs, die die Integration dieser Abruftechniken in verschiedene Anwendungen unterstützen und komplexere Funktionen zum Abrufen von Informationen ermöglichen.

Generatoren

Generatoren im RAG-Framework wandeln die abgerufenen Daten in kohärenten, menschenähnlichen Text um. Sobald die relevanten Informationen abgerufen wurden, werden sie verarbeitet und in ein generatives Modell integriert, typischerweise ein großes Sprachmodell wie GPT oder BERT. Die generative Komponente verwendet diese Informationen, um Antworten zu erstellen, die nicht nur kontextuell relevant sind, sondern auch die Nuancen und Besonderheiten der Eingabeabfrage widerspiegeln. Diese Synthese ermöglicht informationsreiche, genaue und auf die Anfrage des Benutzers zugeschnittene Ergebnisse, wodurch die Interaktionsqualität im Vergleich zu herkömmlichen Modellen, bei denen Antworten ausschließlich auf vorab gelernten Daten basieren, erheblich verbessert wird.

Zusammen bilden diese Komponenten das Rückgrat des RAG-Systems und ermöglichen es, Aufgaben auszuführen, die sowohl den Datenabruf in Echtzeit als auch eine ausgefeilte Textgenerierung erfordern, wodurch die Lücke zwischen statischen KI-Modellen und dynamischen, realen Anwendungen geschlossen wird.

Funktionsweise der RAG-Systeme

Ein repräsentatives Beispiel des RAG-Verfahrens, das auf die Beantwortung von Fragen angewendet wurde ( https://arxiv.org/pdf/2312.10997 )

Schritt 1: Eingabe abfragen

Der Benutzer gibt eine Abfrage in das System ein.

Schritt 2: Indizierung

Dokumente werden vorverarbeitet und in Blöcke aufgeteilt.

Diese Chunks werden dann in Vektoren kodiert und zum schnellen Abrufen in einer Vektordatenbank gespeichert.

Schritt 3: Abruf

Das System ruft aufgrund der semantischen Ähnlichkeit die wichtigsten k Chunks ab, die für die Abfrage des Benutzers am relevantesten sind. Dazu wird die Vektordarstellung der Abfrage mit den Dokumentvektoren verglichen.

Schritt 4: Kontextkombination

Die abgerufenen Chunks werden mit der ursprünglichen Abfrage kombiniert, um eine kontextreiche Eingabe zu bilden.

Schritt 5: Generierung

Diese angereicherten Eingaben werden in ein Large Language Model (LLM) eingespeist.

Das LLM generiert eine Antwort, indem es die abgerufenen Informationen und das im Modell kodierte interne Wissen integriert.

Schritt 6: Lieferung der Ausgabe

Die generierte Antwort wird an den Benutzer geliefert und bietet idealerweise eine umfassende und kontextrelevante Antwort auf die Anfrage.

Naive RAG, Advanced RAG und Modular RAG

1. Naiver RAG

Naive RAG verarbeitet Dokumente systematisch, indem es sie indexiert, einbettet und als Vektoren für den Abruf speichert. Wenn eine Abfrage eingegeben wird, wird sie mithilfe desselben Modells in einen Vektor umgewandelt und mit der Datenbank verglichen, um relevante Teile abzurufen. Diese werden dann in die Frage des Benutzers integriert, um eine Antwort zu generieren. Dieser Prozess stellt sicher, dass die Antwort datenbasiert ist, und minimiert das Risiko, irrelevante oder ungenaue Inhalte zu generieren, indem indexiertes, domänenspezifisches Wissen genutzt wird.

2. Fortgeschrittenes RAG

Advanced RAG verbessert Naive RAG, indem es die semantische Ausrichtung zwischen Abfragen und Dokumenten verbessert. Es umfasst die Optimierung der Datenindizierung durch Verbesserung der Datenqualität und -strukturierung, den Einsatz ausgeklügelter Abrufmethoden wie die Feinabstimmung von Einbettungsmodellen mit domänenspezifischen Daten und die Verwendung fortschrittlicher Ähnlichkeitsmetriken. Strategien nach dem Abruf wie Neubewertung und schnelle Komprimierung verbessern die Kontextqualität und stellen so sicher, dass das Sprachmodell die relevantesten und genauesten Antworten generiert.

3. Modularer RAG

Modular RAG beinhaltet verschiedene fortschrittliche Strategien, um den durch Abruf erweiterten Generierungsprozess zu verbessern. Es integriert zusätzliche Suchmodule, die Daten aus verschiedenen Quellen abrufen, und verwendet ein Speichermodul, um historische Abfrage-Antwort-Paare zu verwenden. Fortschrittliche Fusionstechniken für parallele Vektorsuchen und intelligentes Reranking optimieren die Abrufergebnisse, während Routing-Mechanismen die Antwort des Systems auf bestimmte Abfragetypen zuschneiden und so sowohl die Relevanz als auch die Genauigkeit erhöhen.

Implementierung von RAG

Dieser Code richtet eine grundlegende RAG-Implementierung ein, bei der das System Informationen zur Eingabefrage abruft und Antworten generiert. Sie müssen die Pfade anpassen und möglicherweise die Komponenten an Ihren spezifischen Anwendungsfall und Ihre Daten anpassen.

1. Installieren Sie die erforderlichen Bibliotheken: Zuerst müssen Sie die notwendigen Python-Bibliotheken installieren. Sie können dies über Pip tun:


!pip install transformers
!pip install datasets

2. Laden Sie ein vortrainiertes RAG-Modell: Importieren und laden Sie das RAG-Modell aus der Transformers-Bibliothek. Hier verwenden wir RAG-Token für Generation und DPR Fragencoder für die Kodierung der Frage.


from transformers import RagTokenForGeneration, DPRQuestionEncoder
question_encoder = DPRQuestionEncoder.from_pretrained('facebook/dpr-question_encoder-single-nq-base')
rag_token = RagTokenForGeneration.from_pretrained('facebook/rag-token-nq')

3. Initialisieren Sie RAG: Kombinieren Sie den Frage-Encoder mit RAG, indem Sie den DPR-Kontext-Encoder und einen Generator verwenden.


from transformers import DPRContextEncoder, DPRContextEncoderTokenizer, RagTokenizer, RagRetriever


context_encoder = DPRContextEncoder.from_pretrained('facebook/dpr-ctx_encoder-single-nq-base')
context_tokenizer = DPRContextEncoderTokenizer.from_pretrained('facebook/dpr-ctx_encoder-single-nq-base')
question_encoder_tokenizer = DPRContextEncoderTokenizer.from_pretrained('facebook/dpr-question_encoder-single-nq-base')
rag_tokenizer = RagTokenizer.from_pretrained('facebook/rag-token-nq', retriever=rag_retriever)


rag_retriever = RagRetriever(
    rag_tokenizer.question_encoder_tokenizer,
    rag_tokenizer.generator_tokenizer,
    'datasets/wikipedia/20200501.en',
    index_name="compressed",
    passages_path='my_knowledge_dataset'
)

4. Antworten generieren: Erstellen Sie eine Funktion, um Fragen an das Modell zu übergeben und Antworten zu generieren


def ask_question(question):
    inputs = rag_tokenizer(question, return_tensors="pt")
    with torch.no_grad():
        outputs = rag_token.generate(inputs['input_ids'])
    return rag_tokenizer.batch_decode(outputs, skip_special_tokens=True)


# Example query
print(ask_question("What is the capital of France?"))

Anwendung des RAG-Systems

Retrieval-Augmented Generation (RAG) verbessert verschiedene Branchen erheblich, indem aktuelle Daten mit KI-generierten Antworten integriert werden. Hier finden Sie eine detaillierte Untersuchung seiner Anwendungen:

Gesundheitswesen: RAG verbessert die Entscheidungsfindung im Gesundheitswesen, indem es auf die neuesten medizinischen Forschungsergebnisse und Richtlinien zugreift. Es unterstützt Diagnoseinstrumente, bietet genauere und aktuellere medizinische Ratschläge und verbessert so die Qualität der Patientenversorgung.

Finanzen: Im Finanzbereich analysiert die RAG aktuelle Marktdaten und Finanzberichte und bietet personalisierte Beratung und Risikobewertungen an. Dies ermöglicht eine genauere Finanzplanung und Anlagestrategien, indem wirtschaftliche Erkenntnisse in Echtzeit berücksichtigt werden.

Kundenservice: RAG erhöht die Genauigkeit des Kundensupports, indem es aktualisierte Produktinformationen und Benutzerdaten abruft, Antwortfehler reduziert und die Qualität der Kundeninteraktion verbessert.

Generierung von Inhalten: Neben Routineanwendungen zeichnet sich RAG auch durch die Generierung von Inhalten für E-Mails, Beiträge in sozialen Medien und sogar technische Texte aus und stellt sicher, dass die Inhalte nicht nur grammatikalisch korrekt, sondern auch kontextuell angereichert sind.

Lehrmittel: RAG transformiert die Bildung und bietet personalisierte Lernerfahrungen, indem sie maßgeschneiderte Inhalte und Erklärungen generiert und so das Engagement und die Effektivität der Bildung verbessert.

Recht und Forschung: RAG optimiert die Rechtsrecherche und die Erstellung von Dokumenten. Durch die Suche nach relevanten Rechtspräzedenzfällen und Fachliteratur hilft es bei der Erstellung fundierterer Rechtsdokumente und Analysen.

Empfehlungssysteme: Auf digitalen Medienplattformen verbessert RAG die Suchmaschinen für Inhaltsempfehlungen, indem es die Präferenzen der Nutzer versteht und maßgeschneiderte Inhaltsvorschläge generiert, wodurch das Engagement und die Zufriedenheit verbessert werden.

Fehlerstellen in RAG-Systemen

Trotz der Fortschritte, die Retrieval-Augmented Generation (RAG) -Systeme in KI-Anwendungen mit sich bringen, stehen sie vor mehreren Herausforderungen. Hier sind einige Fehlerstellen in RAG-Systemen:

  1. Inhaltslücken: RAG-Systeme können ausfallen, wenn die erforderlichen Informationen in den Datenquellen, auf die sie Zugriff haben, fehlen. Wenn das System keine relevanten Informationen finden kann, generiert es möglicherweise standardmäßig eine unverbindliche oder allgemeine Antwort oder, schlimmer noch, es zieht falsche Schlüsse.
  2. Probleme beim Ranking und Abrufen: Selbst wenn relevante Dokumente vorhanden sind, werden sie möglicherweise nicht hoch genug eingestuft, um für die Antwortgenerierung ausgewählt zu werden. Dies kann dazu führen, dass das RAG-System wichtige Informationen übersieht, was die Qualität der Ergebnisse beeinträchtigt.
  3. Kontextuelle Fehlausrichtung: Manchmal werden die erforderlichen Dokumente abgerufen, aber nicht effektiv in den Kontext für die Generierung von Antworten integriert. Dies führt zu Antworten, die aus dem Zusammenhang geraten oder unvollständig sind, was die Zuverlässigkeit des Systems beeinträchtigt.
  4. Fehler beim Extrahieren: Es gibt Fälle, in denen die richtige Antwort in dem Kontext liegt, der für das generative Modell bereitgestellt wird, das Modell diese Informationen jedoch nicht korrekt extrahiert und verwendet. Dies könnte an der Komplexität der Abfrage oder an Widersprüchen in den Eingabedaten liegen.
  5. Falsche Formatierung: RAG-Systeme könnten Schwierigkeiten haben, Antworten in dem vom Benutzer angeforderten Format zu generieren, z. B. Listen oder Tabellen, was die Nutzbarkeit der Ausgabe beeinträchtigen kann.
  6. Unzureichende Spezifität: Die generierten Antworten entsprechen möglicherweise nicht angemessen den Bedürfnissen des Benutzers, da sie entweder zu vage oder zu detailliert sind. Dies ist häufig auf eine Diskrepanz zwischen den Erwartungen des Benutzers und den Ergebnissen des Systems zurückzuführen.
  7. Unvollständige Antworten: Selbst wenn teilweise korrekte Informationen bereitgestellt werden, liefert das System möglicherweise keine umfassende Antwort, sodass einige Details übersehen werden, die für die vollständige Beantwortung der Benutzeranfrage von entscheidender Bedeutung sind.

Fazit

Mit Blick auf die Zukunft nimmt das Potenzial von Retrieval-Augmented Generation (RAG) zur Revolutionierung datengesteuerter Technologien weiter zu. Die erwarteten Fortschritte in den Bereichen KI und maschinelles Lernen könnten RAG-Systeme mit ausgeklügelten neuen Funktionen und Fähigkeiten ausstatten und deren Effizienz und Umfang potenziell verbessern. Möglicherweise werden wir Verbesserungen feststellen, die eine nahtlosere Integration mit Echtzeit-Datenquellen, eine robustere Verarbeitung komplexer Abfragen und eine noch höhere Genauigkeit der generierten Inhalte ermöglichen. Der Horizont ist hell und verspricht, die Lücke zwischen statischen Wissensdatenbanken und dynamischen realen Anwendungen weiter zu überbrücken und RAG zu einer Eckpfeilertechnologie für zukünftige KI-Systeme zu machen.

Der schnellste Weg, deine KI zu entwickeln, zu steuern und zu skalieren

Melde dich an
Inhaltsverzeichniss

Steuern, implementieren und verfolgen Sie KI in Ihrer eigenen Infrastruktur

Buchen Sie eine 30-minütige Fahrt mit unserem KI-Experte

Eine Demo buchen

Der schnellste Weg, deine KI zu entwickeln, zu steuern und zu skalieren

Demo buchen

Entdecke mehr

May 23, 2024
|
Lesedauer: 5 Minuten

Was sind Vektoreinbettungen? — Ein vollständiger Leitfaden 2024

May 22, 2024
|
Lesedauer: 5 Minuten

Was ist Vector Indexing? - Ein vollständiger Leitfaden 2024

May 22, 2024
|
Lesedauer: 5 Minuten

LLM Embeddings 101: Ein vollständiger Leitfaden 2024

April 22, 2026
|
Lesedauer: 5 Minuten

GraySwan-Integration mit TrueFoundry

Keine Artikel gefunden.
April 22, 2026
|
Lesedauer: 5 Minuten

Aufbau der KI-Kontrollebene für Unternehmen: Gartner Insights und der Ansatz von TrueFoundry

Vordenkerrolle
April 22, 2026
|
Lesedauer: 5 Minuten

Marktplätze für KI-Agenten: Die Zukunft der Automatisierung auf Unternehmensebene

Keine Artikel gefunden.
April 22, 2026
|
Lesedauer: 5 Minuten

TrueFoundry AI Gateway-Integration mit LangSmith

LLM-Werkzeuge
LLM-Terminologie
Technik und Produkt
Keine Artikel gefunden.

Aktuelle Blogs

Machen Sie eine kurze Produkttour
Produkttour starten
Produkttour