Grunddaten
Kosten
DLP-Sicherheitseinstellungen
DSGVO-konforme Datensicherung
Legen Sie fest, ob Texte pseudonymisiert werden, bevor sie an dieses Embedding-Modell gehen – beim Indexieren von Dokumenten und bei jeder Suche. Das ist vor allem wichtig, wenn das Embedding-Modell bei einem Cloud-Anbieter läuft.
Eine Änderung dieser Einstellung löst keine neue Indexierung aus. Bereits indexierte Dokumente behalten ihre Embeddings; die neue Einstellung gilt für Suchanfragen und für künftige Indexierungen.
Die Einstellung betrifft nur, was das Embedding-Modell erhält. Die
Wissensdatenbank speichert die Inhalte im Klartext, damit die Volltextsuche
auch Namen, IBANs oder Aktenzeichen findet. Was das Sprachmodell aus den
Suchergebnissen sieht, legt die Einstellung Datenschutz (DLP) der
jeweiligen Wissensdatenbank
fest: Bei Pseudonymisiert und aktiver DLP im Chat erhält es
pseudonymisierte Ergebnisse, ohne DLP im Chat oder bei Ungeprüft den
Klartext.
./flow knowledgebaseembedding:reindexstellt Dokumente, deren Textabschnitte noch Pseudonyme enthalten, für eine neue Indexierung ein. Die Indexierung übernimmt anschließend der Cronjobknowledgebaseembedding:generateembeddings; die Texte werden dabei erneut an das Embedding-Modell gesendet../flow knowledgebaseembedding:reindex --restore-tokenssetzt den Klartext direkt in der Datenbank wieder ein, ohne die Dokumente neu zu indexieren. Dokumente, bei denen nicht alle Pseudonyme aufgelöst werden können, werden für eine neue Indexierung eingestellt.
--dry-run zeigen beide Befehle nur an, welche Dokumente betroffen sind, ohne etwas zu ändern.
ICAP DLP Integration
Verbinden Sie Ihren Daten-Exit mit Ihrer Enterprise DLP-Lösung.Embedding-Modelle haben im Vergleich zu Chat-Modellen weniger
Konfigurationsoptionen, da sie ausschließlich für die Vektorisierung von
Texten eingesetzt werden und keine direkte Nutzer-Interaktion haben.
Lokales Embedding-Modell betreiben
Sie können Embeddings auf Ihrem eigenen Server erzeugen, statt einen externen Anbieter zu nutzen. Die Inhalte Ihrer Wissensdatenbanken verlassen den Server dann für die Vektorisierung nicht. VARIOS AI bindet ein lokales Modell über die Zugangsdaten OpenAI Kompatibel an. Geeignet ist jeder Modellserver, der die OpenAI-Schnittstelle/v1/embeddings bereitstellt.
Diese Anleitung beschreibt zwei Modellserver, die als zusätzlicher Dienst in Ihrer Docker-Compose-Installation laufen. Beide verwenden das mehrsprachige Modell bge-m3.
Verwenden Sie TEI, wenn viele Nutzer gleichzeitig Wissensdatenbanken durchsuchen oder große Datenmengen eingebettet werden.
VARIOS AI speichert alle Embeddings mit 1.536 Dimensionen. Kürzere Vektoren werden aufgefüllt, längere abgeschnitten. Verwenden Sie deshalb ein Modell mit höchstens 1.536 Dimensionen.
bge-m3 erzeugt Vektoren mit 1.024 Dimensionen.Modellserver einrichten
- Text Embeddings Inference
- Ollama
1
Dienst in der docker-compose.yml ergänzen
Fügen Sie in der Hugging Face stellt die offiziellen Images je Hardware bereit.
docker-compose.yml unter services einen Dienst tei hinzu. Der Dienst muss sich im selben Netzwerk wie der Dienst php befinden, in der Standardinstallation internal.cpu-1.9 läuft ohne GPU. Für Server mit NVIDIA-GPU gibt es eigene Images, zum Beispiel 89-1.9 für die Ada-Lovelace-Generation. Der Update-Helfer führt bei jedem Update docker compose pull aus; mit einer festen Version aktualisieren Sie TEI nur dann, wenn Sie die Version selbst ändern.MODEL_ID legt das Modell fest. MAX_BATCH_TOKENS begrenzt, wie viele Token TEI in einem Durchlauf verarbeitet, und damit auch die maximale Länge einer Eingabe; längere Eingaben kürzt TEI. Ohne diese Angabe verwendet TEI 16384 und prüft beim Start mit einer Anfrage dieser Größe, ob das Modell läuft. Dafür reicht der Arbeitsspeicher eines Servers ohne GPU häufig nicht. Bei der standardmäßigen Chunk-Größe von 2.000 Zeichen reicht 2048 in der Regel aus, da ein Token meist mehrere Zeichen umfasst. Erhöhen Sie den Wert, wenn Sie die Chunk-Größe erhöhen.Das Verzeichnis ./TEI auf dem Host speichert das heruntergeladene Modell. Veröffentlichen Sie keinen Port des Dienstes: VARIOS AI erreicht TEI über das interne Netzwerk.2
Dienst starten
Ready zeigt, und beenden Sie die Anzeige mit Strg+C. Prüfen Sie anschließend, ob der PHP-Container das Modell erreicht:Die Antwort enthält im Feld
data einen Vektor unter embedding.Modell über einen Proxyserver herunterladen
TEI und Ollama benötigen einen Internetzugang, um das Modell herunterzuladen. Muss dieser Zugang über einen Proxyserver laufen, tragen Sie den Proxyserver beim jeweiligen Dienst in der UmgebungsvariableHTTPS_PROXY ein:
http://benutzer:passwort@proxy.example.com:8080. Das Passwort steht dann im Klartext in der docker-compose.yml.
Setzen Sie für Ollama nicht zusätzlich HTTP_PROXY. Ollama lädt Modelle ausschließlich über HTTPS; HTTP_PROXY kann laut Ollama die Verbindung von ollama pull zum eigenen Dienst stören.
Der Proxyserver betrifft nur die Verbindung des Modellservers ins Internet. Die Anfragen von VARIOS AI an den Modellserver laufen über das interne Docker-Netzwerk. Den Proxyserver von VARIOS AI selbst konfigurieren Sie unter Allgemein, siehe Fehlerbehebung.
Proxyserver mit TLS-Inspection
Bricht der Proxyserver die TLS-Verbindung auf und signiert sie mit einem eigenen Zertifikat neu, muss der Modellserver dem CA-Zertifikat des Proxyservers vertrauen. Binden Sie das Zertifikat wie für den PHP-Container ein und übernehmen Sie es beim Start mitupdate-ca-certificates in den Trust Store des Containers. Die Anforderungen an die Zertifikatsdatei finden Sie unter Vertrauenswürdige Zertifizierungsstellen einrichten.
- Text Embeddings Inference
- Ollama
docker compose up -d tei bzw. docker compose up -d ollama neu.
Modell in VARIOS AI hinterlegen
1
Zugangsdaten anlegen
Legen Sie unter Zugangsdaten neue Zugangsdaten mit dem Anbieter OpenAI Kompatibel an.
Beide Modellserver prüfen den API-Schlüssel in dieser Konfiguration nicht. VARIOS AI verlangt das Feld jedoch.
2
Embedding-Modell anlegen
Legen Sie unter Modelle im Tab Embedding Modelle ein neues Modell an. Tragen Sie als Modellname
BAAI/bge-m3 (TEI) bzw. bge-m3 (Ollama) ein und wählen Sie unter Zugangsdaten die eben angelegten Zugangsdaten. Die Kostenfelder können Sie leer lassen.3
Modell verwenden
Wählen Sie das Modell in einer Wissensdatenbank als KI-Modell zur Generierung von Embeddings aus. Soll es für alle neuen Wissensdatenbanken gelten, hinterlegen Sie es unter Allgemein als Standard KI-Modell zur Generierung von Embeddings.
Beide Modellserver laufen ohne GPU, benötigen aber zusätzlichen Arbeitsspeicher und Prozessorleistung. Berücksichtigen Sie diesen Bedarf zusätzlich zum Sizing-Leitfaden, insbesondere wenn Sie große Datenmengen einbetten.
Fehlerbehebung
Dokumente bleiben im Status „Fehler“ oder „In Bearbeitung“
Dokumente bleiben im Status „Fehler“ oder „In Bearbeitung“
Prüfen Sie mit
docker compose ps, ob der Dienst tei bzw. ollama läuft, und mit docker compose logs tei bzw. docker compose logs ollama, ob das Modell geladen wurde. Bei Ollama zeigt docker compose exec ollama ollama list die heruntergeladenen Modelle. Der Modellname in VARIOS AI muss dem Modellnamen im Modellserver entsprechen.Fehlermeldung: Failed to connect to tei port 80
Fehlermeldung: Failed to connect to tei port 80
TEI öffnet den Port erst, wenn das Modell heruntergeladen und geladen ist. Prüfen Sie mit
docker compose logs tei, ob die Meldung Ready erscheint. Läuft der Download noch, warten Sie ihn ab. Startet der Dienst laut docker compose ps tei immer wieder neu, nennt das Protokoll die Ursache, zum Beispiel einen fehlgeschlagenen Download.TEI startet nach „Warming up model“ immer wieder neu (exited with code 137)
TEI startet nach „Warming up model“ immer wieder neu (exited with code 137)
Der Code 137 bedeutet, dass der Prozess beendet wurde, in der Regel wegen fehlenden Arbeitsspeichers. Beim Aufwärmen belegt TEI den meisten Speicher. Setzen Sie
MAX_BATCH_TOKENS wie oben beschrieben auf 2048 und starten Sie den Dienst mit docker compose up -d tei neu. Ein kleinerer Wert senkt den Speicherbedarf weiter. MAX_BATCH_TOKENS zählt jedoch Token, nicht Zeichen: Umfasst ein Chunk mehr Token als dieser Wert, kürzt TEI ihn, und der Rest fließt nicht in das Embedding ein.Das Modell lässt sich nicht herunterladen
Das Modell lässt sich nicht herunterladen
Prüfen Sie, ob der Server das Internet direkt oder über den in
HTTPS_PROXY eingetragenen Proxyserver erreicht. Meldet das Protokoll einen Zertifikatsfehler, bricht der Proxyserver die TLS-Verbindung vermutlich auf. Binden Sie dann das CA-Zertifikat ein, wie unter Proxyserver mit TLS-Inspection beschrieben.Die erste Suche nach einer Pause ist langsam oder bricht ab (Ollama)
Die erste Suche nach einer Pause ist langsam oder bricht ab (Ollama)
Ollama hat das Modell entladen und lädt es bei der Anfrage neu. VARIOS AI wartet höchstens 30 Sekunden auf eine Antwort. Prüfen Sie mit
docker compose exec ollama ollama ps, ob das Modell geladen ist und bis wann es geladen bleibt. Setzen Sie OLLAMA_KEEP_ALIVE wie oben beschrieben und starten Sie den Dienst mit docker compose up -d ollama neu.Die Verbindung schlägt nur bei aktivem Proxyserver in VARIOS AI fehl
Die Verbindung schlägt nur bei aktivem Proxyserver in VARIOS AI fehl
Ist unter Allgemein ein Proxyserver hinterlegt, leitet VARIOS AI auch die Anfragen an den Modellserver über den Proxy. Tragen Sie
tei bzw. ollama unter Proxy-Ausnahmen (kommagetrennte Hostnamen) ein.Der Hostname tei oder ollama wird nicht aufgelöst
Der Hostname tei oder ollama wird nicht aufgelöst
Der Modellserver und der Dienst
php befinden sich nicht im selben Docker-Netzwerk. Prüfen Sie den Eintrag networks beider Dienste in der docker-compose.yml.