Published on

Einbettungsmodelle für deutsche Fachtexte im Vergleich

Authors

Das Einbettungsmodell: die Entscheidung, die Sie nicht zurücknehmen können

TL;DR

Alle anderen RAG-Bausteine lassen sich austauschen — Sprachmodell, Vektordatenbank, Oberfläche. Das Einbettungsmodell nicht: Ein Wechsel macht jeden vorhandenen Vektor unbrauchbar. Deshalb verdient diese Entscheidung mehr Sorgfalt als jede andere, und die entscheidenden Kriterien sind Mehrsprachigkeit und Kontextlänge, nicht die Rangposition in einer Bestenliste.


Warum diese Entscheidung schwerer wiegt

Ein Einbettungsmodell bildet Text auf einen Punkt in einem hochdimensionalen Raum ab. Die Vektoren zweier verschiedener Modelle liegen in verschiedenen Räumen — sie sind nicht vergleichbar, auch nicht bei gleicher Dimensionszahl.

Praktisch: Wenn Sie das Modell wechseln, müssen alle Abschnitte neu eingebettet werden. Bei 1,8 Millionen Abschnitten sind das Stunden bis Tage Rechenzeit und, bei einem Cloud-Modell, die vollen Kosten der Erstindexierung noch einmal.

Alles andere ist billiger zu ändern. Das Sprachmodell tauschen Sie in einer Konfigurationszeile, wenn ein Gateway davorsteht — die Systematik steht im Beitrag zum Modellwechsel. Die Vektordatenbank wechseln Sie mit einem Export und einem Import. Das Einbettungsmodell nicht.

Die Kriterien, die tatsächlich zählen

Mehrsprachigkeit — und zwar echte. Der wichtigste Punkt für deutsche Bestände. Viele Modelle nennen sich mehrsprachig und sind überwiegend auf Englisch trainiert. Der Unterschied zeigt sich nicht in allgemeinen Bestenlisten, sondern an Ihren Dokumenten.

Ein konkreter Prüfstein: Deutsche Komposita. "Druckbehälterprüfintervall" ist ein Wort. Ein Modell, das englisch geprägt ist, zerlegt das in Teilstücke, die semantisch wenig mit dem Ganzen zu tun haben. Testen Sie mit fünf typischen Komposita aus Ihrem Fachgebiet, ob eine Suche danach die richtigen Abschnitte findet.

Maximale Sequenzlänge. Wie lang darf ein Abschnitt sein? Modelle mit 512 Token Grenze zwingen Sie zu kleinen Abschnitten. Das ist nicht grundsätzlich schlecht, aber es zerreißt Tabellen und längere Verfahrensbeschreibungen. Modelle mit mehreren tausend Token geben Ihnen Freiheit bei der Abschnittsbildung.

Dimensionszahl. Beeinflusst Speicherbedarf und Suchgeschwindigkeit. 1.024 Dimensionen sind ein guter Mittelwert. Bei 4.096 verdoppeln Sie den Speicher gegenüber 2.048 für einen meist geringen Qualitätsgewinn. Manche neueren Modelle erlauben es, die Dimensionszahl beim Einbetten zu reduzieren — das ist praktisch, weil Sie die Entscheidung dann nicht endgültig treffen müssen.

Lokal betreibbar. Wenn Ihre Dokumente das Haus nicht verlassen dürfen, gilt das auch für die Einbettung. Jeder Abschnitt jedes Dokuments geht durch das Modell — bei einem Cloud-Einbettungsmodell übermitteln Sie damit Ihren gesamten Dokumentenbestand, nicht nur die Anfragen.

Dieser letzte Punkt wird regelmäßig übersehen. Unternehmen betreiben das Sprachmodell aufwendig lokal und schicken beim Indexieren den kompletten Bestand an einen Cloud-Anbieter.

Der Test, den Sie selbst machen müssen

Bestenlisten helfen bei der Vorauswahl und nicht bei der Entscheidung. Der Test dauert einen halben Tag:

# 200 Abschnitte aus dem eigenen Bestand, 30 echte Fragen mit bekannter Antwort
for name, modell in kandidaten.items():
    vektoren = modell.encode([a["text"] for a in abschnitte])
    treffer = 0
    for frage in fragen:
        fv = modell.encode([frage["text"]])[0]
        top5 = top_k_by_cosine(fv, vektoren, k=5)
        if any(abschnitte[i]["id"] in frage["referenz"] for i in top5):
            treffer += 1
    print(f"{name}: Recall@5 = {treffer / len(fragen):.2f}")

200 Abschnitte reichen für einen Vergleich zwischen Modellen — Sie messen relative Unterschiede, nicht absolute Qualität. Wichtig ist, dass die Abschnitte und Fragen aus Ihrem eigenen Bestand kommen. Ein Modell, das auf allgemeinen deutschen Texten gut ist, kann bei Ihrer Fachsprache schlechter sein als eines mit niedrigerer Rangposition.

Nehmen Sie in die 30 Fragen bewusst solche auf, die Komposita, Normbezeichnungen und Teilenummern enthalten. Genau dort trennt sich das Feld.

Was Sie tun, wenn Sie später doch wechseln müssen

Es kommt vor — ein deutlich besseres Modell erscheint, oder das eingesetzte wird nicht mehr gepflegt. Der Ablauf, der Ausfallzeit vermeidet:

  1. Zweite Sammlung parallel aufbauen mit dem neuen Modell, ohne die alte anzufassen
  2. Beide gegen den Testsatz messen und den Unterschied belegen, nicht vermuten
  3. Umschalten über eine Konfiguration in der Anwendung
  4. Alte Sammlung zwei Wochen behalten, dann löschen

Der doppelte Speicherbedarf während der Umstellung ist einzuplanen. Bei 1,8 Millionen Abschnitten mit 1.024 Dimensionen sind das rund 7 GB zusätzlich — kein Problem, aber es sollte vorher jemand wissen.

Häufig gestellte Fragen

Welches Einbettungsmodell eignet sich für deutsche Fachtexte?

Ein ausdrücklich mehrsprachiges Modell, das an Ihren eigenen Dokumenten getestet wurde. Allgemeine Bestenlisten sind für die Vorauswahl brauchbar und für die Entscheidung nicht, weil Fachsprache, Komposita und Normbezeichnungen dort nicht abgebildet sind. Der Test mit 200 eigenen Abschnitten und 30 echten Fragen dauert einen halben Tag und ist aussagekräftiger.

Kann ich das Einbettungsmodell später wechseln?

Nur mit vollständiger Neuberechnung aller Vektoren. Einbettungen verschiedener Modelle liegen in verschiedenen Räumen und sind nicht vergleichbar, auch nicht bei gleicher Dimensionszahl. Bei größeren Beständen bedeutet das Stunden bis Tage Rechenzeit und, bei Cloud-Modellen, die vollen Kosten der Erstindexierung erneut.

Wie viele Dimensionen sollte das Modell haben?

1.024 sind für die meisten Anwendungen ein guter Mittelwert aus Qualität und Speicherbedarf. Höhere Dimensionszahlen verbessern das Ergebnis in der Regel nur geringfügig und vervielfachen den Speicherbedarf im Index. Manche neueren Modelle erlauben es, die Dimensionszahl beim Einbetten zu reduzieren — das hält die Entscheidung offen.

Darf ich ein Cloud-Einbettungsmodell nutzen, wenn das Sprachmodell lokal läuft?

Technisch ja, inhaltlich ist es meist ein Widerspruch. Beim Indexieren geht jeder Abschnitt jedes Dokuments durch das Einbettungsmodell — Sie übermitteln also Ihren gesamten Dokumentenbestand an den Anbieter, nicht nur einzelne Anfragen. Wer das Sprachmodell aus Datenschutzgründen lokal betreibt, sollte dasselbe für die Einbettung tun.

Wie lang dürfen Abschnitte sein?

So lang, wie das Einbettungsmodell verarbeiten kann — die maximale Sequenzlänge ist eine harte Grenze, darüber hinausgehender Text wird abgeschnitten. Modelle mit 512 Token zwingen zu kleinen Abschnitten und zerreißen Tabellen und längere Verfahrensbeschreibungen. Modelle mit mehreren tausend Token Grenze geben Ihnen die Freiheit, an der Dokumentstruktur zu schneiden statt an einer Zeichenzahl.


Der nächste Schritt

Bevor Sie eine Zeile Ingestion-Code schreiben: Testen Sie zwei bis drei Einbettungsmodelle an 200 eigenen Abschnitten und 30 eigenen Fragen. Ein halber Tag jetzt spart Ihnen später eine vollständige Neuindexierung. Beim Aufbau des Tests helfen wir gern.

📖 Verwandte Artikel

Weitere interessante Beiträge zu ähnlichen Themen