Phase 2: Embeddings & Semantische Suche

Die Stichwortsuche scheitert, wenn Wörter nicht exakt übereinstimmen.

Wenn in einem Lebenslauf „Teammanagement“ steht und eine Stellenbeschreibung nach „Führungskompetenz“ fragt, liefert eine einfache Suche null Ergebnisse. Die Wörter sind unterschiedlich, aber die Bedeutung ist dieselbe.

Phase 2 löst dies durch den Einsatz von Embeddings und semantischer Suche.

Wie es funktioniert:

• Tokenisierung: Computer lesen keine Wörter. Sie lesen Zahlen. Ein Tokenizer zerlegt Text in kleine Stücke, sogenannte Tokens, und wandelt sie in Token-IDs um. Häufige Wörter werden zu einem Token. Seltene Wörter werden in mehrere Tokens aufgeteilt.

• Embeddings: Eine Token-ID ist nur eine Kennzeichnung. Die Embedding-Schicht wandelt diese ID in einen Vektor um. Ein Vektor ist eine lange Liste von Zahlen, die eine Bedeutung repräsentiert. Anstatt nur einer Zahl verwendet ein Modell viele Dimensionen, um ein Konzept zu beschreiben.

• Dimensionen: Betrachten Sie diese Zahlen als Koordinaten. Eine Dimension könnte „Frontend vs. Backend“ repräsentieren. Eine andere könnte „Web vs. Systeme“ repräsentieren. Hochdimensionale Vektoren ermöglichen es dem Modell, „React“ und „JavaScript“ in einem mathematischen Raum nah beieinander zu platzieren.

• Semantische Suche: Wenn Sie eine Frage stellen, wandelt das System Ihre Frage in einen Vektor um. Dann vergleicht es Ihren Vektor mit den Vektoren Ihrer gespeicherten Dokumente.

• Kosinus-Ähnlichkeit: Dies misst den Winkel zwischen zwei Vektoren. Wenn die Vektoren in dieselbe Richtung zeigen, sind sie ähnlich. Dies ermöglicht es dem System, „Kündigungsbedingungen“ zu finden, selbst wenn Sie nur nach „Kündigungsfrist“ gesucht haben.

Wichtige Erkenntnisse für die Produktion:

  • Vektordatenbanken: Das Durchsuchen von Millionen von Vektoren ist langsam. Datenbanken wie Pinecone oder Qdrant nutzen Indexierung, um die nächsten Nachbarn in Millisekunden zu finden.
  • Modell-Migrationen: Jedes Embedding-Modell nutzt einen anderen mathematischen Raum. Sie können einen OpenAI-Vektor nicht mit einem Cohere-Vektor vergleichen. Wenn Sie das Modell wechseln, müssen Sie alle Ihre Daten neu einbetten.
  • Kosten vs. ROI: Das erneute Einbetten von Millionen von Chunks ist teuer. Unternehmen bleiben oft bei älteren Modellen, es sei denn, der Genauigkeitsgewinn rechtfertigt die Migrationskosten.
  • Speichern Sie immer Ihre ursprünglichen Text-Chunks. Wenn Sie Ihr Modell später aktualisieren, können Sie den alten Text verwenden, um neue Vektoren zu erstellen.

Phase 2 ist der Punkt, an dem die Intelligenz entsteht.

Quelle: https://dev.to/surajrkhonde/phase-2-embeddings-semantic-search-3lco

Optionale Lern-Community: https://t.me/GyaanSetuAi