0Pricing
AI Prompt Engineering · Lektion

Vektordatenbanken für Prompting

Erkunden Sie, wie Vektordatenbanken relevante Informationen speichern und abrufen, um sie effektiv in RAG-Prompts einzuspeisen.

Vektordatenbanken für Prompting ist eine kostenlose AI Prompt Engineering-Lektion auf CoddyKit. Dies ist Lektion 3 von 3. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des AI Prompt Engineering-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der AI Prompt Engineering-Kurs umfasst insgesamt 3 Lektionen.

Was sind Vektordatenbanken?

Willkommen in der Welt der Vektordatenbanken (VDBs)! Diese spezialisierten Datenbanken eröffnen neue Möglichkeiten für die Arbeit mit Large Language Models (LLMs).

VDBs speichern Informationen als numerische Vektoren, also als einfache Zahlenlisten. Dadurch können sie schnell Daten finden, die „semantisch ähnlich“ sind – also eine ähnliche zugrunde liegende Bedeutung haben und nicht nur übereinstimmende Schlüsselwörter.

Sprache als Zahlen: Embeddings

Bevor Daten in eine VDB gelangen, werden sie in ein Embedding umgewandelt. Ein Embedding ist eine numerische Darstellung von Text, bei der Wörter oder Ausdrücke mit ähnlicher Bedeutung in einem mehrdimensionalen Raum nahe beieinanderliegen.

  • Text zu Vektor: Ein Embedding-Modell wandelt Ihren Text in einen Vektor um.
  • Bedeutung bleibt erhalten: Diese Vektoren erfassen die semantische Bedeutung des Textes.
  • Die Sprache des LLMs: So „verstehen“ und verarbeiten LLMs Sprache intern.

Daten in einer Vektordatenbank speichern

Stellen Sie sich eine Vektordatenbank als eine hervorragend organisierte Bibliothek vor, in der jedes Buch oder Textstück mit einem eindeutigen numerischen Fingerabdruck versehen ist – seinem Embedding-Vektor.

Wenn Sie Daten zu einer VDB hinzufügen, läuft der Prozess folgendermaßen ab:

  1. Ihr Text wird bei Bedarf in kleinere Abschnitte unterteilt.
  2. Jeder Abschnitt wird in einen Embedding-Vektor umgewandelt.
  3. Die VDB speichert diesen Vektor zusammen mit dem ursprünglichen Text und allen zugehörigen Metadaten.

Die Magie der Ähnlichkeitssuche

Die eigentliche Stärke von VDBs liegt in ihrer Fähigkeit zur Ähnlichkeitssuche. Statt Schlüsselwörter abzugleichen, finden sie Vektoren, die Ihrem Anfragevektor numerisch „nahe“ sind.

Wenn Sie also nach „Hundegefährten“ fragen, kann eine VDB Dokumente abrufen, in denen „Hunde“ oder „Haustiere“ erwähnt werden, selbst wenn diese genauen Wörter nicht vorkommen. Sie versteht die zugrunde liegende Bedeutung!

VDBs in Retrieval Augmented Generation (RAG)

Vektordatenbanken sind die zentrale Komponente des „Abruf“-Schritts in einem RAG-System. Sie dienen als externe Wissensbasis, auf die LLMs zugreifen können.

Der vereinfachte Ablauf sieht folgendermaßen aus:

  1. Der Benutzer stellt eine Frage.
  2. Die Frage wird in einen Vektor eingebettet.
  3. Die VDB findet die relevantesten Dokumentabschnitte bzw. Vektoren.
  4. Diese Abschnitte werden dem LLM als Kontext zur Beantwortung der Frage übermittelt.

Eine VDB befüllen: Beispielhafter Code

Sehen wir uns ein konzeptionelles Python-Beispiel dafür an, wie Sie Dokumente zu einer Vektordatenbank hinzufügen können. Dabei wird Ihr Text eingebettet und anschließend werden die resultierenden Vektoren gespeichert.

Beachten Sie, dass dieser Code nur der Veranschaulichung dient und in einer realen Umgebung bestimmte Client-Bibliotheken für Vektordatenbanken sowie ein Embedding-Modell erfordert.

import numpy as np

# Imagine an embedding model function
def get_embedding(text):
    # In a real scenario, this uses an LLM API
    # or a local embedding model.
    # For illustration, let's return a dummy vector.
    return np.random.rand(128).tolist() # 128-dim vector

# Imagine a simplified VectorDB client
class SimpleVectorDB:
    def __init__(self):
        self.vectors = {} # Stores {id: {'vector': [...], 'text': '...'}}

    def add_document(self, doc_id, text_content):
        vector = get_embedding(text_content)
        self.vectors[doc_id] = {'vector': vector, 'text': text_content}
        print(f"Added '{text_content[:20]}...' (ID: {doc_id})")

# --- Main simulation --- 
db = SimpleVectorDB()
db.add_document("doc1", "The capital of France is Paris.")
db.add_document("doc2", "Eiffel Tower is a landmark in Paris.")
db.add_document("doc3", "Berlin is the capital of Germany.")

Eine VDB abfragen: Beispielhafter Code

Sobald Ihre Vektordatenbank gefüllt ist, können Sie sie abfragen, um relevante Informationen zu finden. Auch die Abfrage selbst wird eingebettet. Anschließend sucht die VDB nach den Vektoren mit der geringsten Distanz.

Dieser konzeptionelle Python-Code veranschaulicht die Suche nach semantisch ähnlichen Inhalten.

import numpy as np
from scipy.spatial.distance import cosine # For similarity

# (Re-using get_embedding and SimpleVectorDB conceptually)
def get_embedding(text):
    return np.random.rand(128).tolist()

class SimpleVectorDB:
    def __init__(self):
        self.vectors = {}

    def add_document(self, doc_id, text_content):
        vector = get_embedding(text_content)
        self.vectors[doc_id] = {'vector': vector, 'text': text_content}

    def search(self, query_text, top_k=1):
        query_vector = get_embedding(query_text)
        
        scores = []
        for doc_id, data in self.vectors.items():
            doc_vector = data['vector']
            # Cosine similarity: 1 - cosine distance
            similarity = 1 - cosine(query_vector, doc_vector)
            scores.append({'id': doc_id, 'text': data['text'], 'score': similarity})
        
        # Sort by similarity in descending order
        scores.sort(key=lambda x: x['score'], reverse=True)
        return scores[:top_k]

# --- Main simulation --- 
db = SimpleVectorDB()
db.add_document("doc1", "The capital of France is Paris.")
db.add_document("doc2", "Eiffel Tower is a landmark in Paris.")
db.add_document("doc3", "Berlin is the capital of Germany.")

user_query = "What is the capital city of France?"
results = db.search(user_query, top_k=2)

print(f"Query: '{user_query}'")
print("Top results:")
for res in results:
    print(f"- Text: '{res['text']}' (Score: {res['score']:.2f})")

Die wichtigsten Vorteile von VDBs

Die Integration von Vektordatenbanken in Ihren RAG-Workflow bietet erhebliche Vorteile:

  • Semantische Suche: Findet Ergebnisse anhand ihrer Bedeutung und nicht nur anhand von Schlüsselwörtern.
  • Weniger Halluzinationen: Verankert LLMs in externen, faktischen Daten und macht die Antworten dadurch zuverlässiger.
  • Skalierbarkeit: Verarbeitet effizient große Mengen unstrukturierter Daten.
  • Echtzeitaktualisierungen: Kann problemlos mit neuen Informationen aktualisiert werden, sodass der Kontext Ihres LLMs aktuell bleibt.

Wichtige Überlegungen zu VDBs

Um die bestmögliche Leistung aus Ihrer Vektordatenbanklösung herauszuholen, sollten Sie folgende Punkte berücksichtigen:

  • Auswahl des Embedding-Modells: Die Qualität Ihrer Einbettungen wirkt sich direkt auf die Genauigkeit der Suche aus.
  • Chunking-Strategie: Die Art, wie Sie Dokumente aufteilen (z. B. nach Absatz oder Satz), beeinflusst die Granularität des Abrufs.
  • Aktualität der Daten: Aktualisieren Sie Ihre VDB regelmäßig mit neuen Informationen, damit das LLM stets über den neuesten Kontext verfügt.
  • Metadaten: Speichern Sie neben den Vektoren nützliche Metadaten, um Filterung und Abruf zu verbessern.

Kurzer Test: Vektordatenbanken in RAG

Vektordatenbanken spielen eine entscheidende Rolle bei der Verbesserung der Leistung und Zuverlässigkeit von LLMs. Testen wir, ob Sie ihre wichtigste Funktion innerhalb eines Retrieval Augmented Generation (RAG)-Systems verstanden haben.

Zusammenfassung: VDBs und Ihre LLMs

In dieser Lektion haben wir Vektordatenbanken und ihre wichtige Rolle in modernen KI-Anwendungen untersucht, insbesondere im Zusammenhang mit RAG.

  • VDBs speichern numerische Einbettungen, die die Bedeutung von Text erfassen.
  • Sie ermöglichen eine leistungsfähige semantische Suche, mit der Informationen anhand ihres Kontexts gefunden werden.
  • VDBs verbessern LLMs erheblich, indem sie externe, faktische Daten bereitstellen. Dadurch werden die Ausgaben genauer und zuverlässiger.

Die Beherrschung von VDBs ist entscheidend für den Aufbau robuster und intelligenter KI-Systeme!

Häufig gestellte Fragen

Ist die Lektion „Vektordatenbanken für Prompting“ kostenlos?

Ja — der vollständige Text von „Vektordatenbanken für Prompting“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des AI Prompt Engineering-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der AI Prompt Engineering-Kurs umfasst insgesamt 3 Lektionen.

Was lerne ich in „Vektordatenbanken für Prompting“?

Erkunden Sie, wie Vektordatenbanken relevante Informationen speichern und abrufen, um sie effektiv in RAG-Prompts einzuspeisen. Du übst AI Prompt Engineering mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um AI Prompt Engineering zu starten?

Keine Vorkenntnisse erforderlich. AI Prompt Engineering auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 3.

Wie lange dauert die Lektion „Vektordatenbanken für Prompting“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser AI Prompt Engineering-Lektion Code schreiben und ausführen?

Ja. Jede AI Prompt Engineering-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Prompting mit externen Daten
  2. Retrieval Augmented Generation (RAG)
  3. Vektordatenbanken für Prompting
← Zurück zu AI Prompt Engineering