Überblick
Ein Assistent aus VARIOS AI lässt sich als Chatbot in eine beliebige Webseite einbinden, etwa für Kundenanfragen, Bürgerservice oder Support-Portale. Die Webseite spricht dabei nicht direkt mit VARIOS AI, sondern über einen Proxy auf dem eigenen Webhost. Das kann der vorhandene Webserver sein, ein eigener Dienst ist nicht zwingend nötig. Dieser Aufbau hat drei Gründe:- Der API-Key bleibt auf dem Server. Alles, was im Browser liegt, kann ausgelesen werden.
- Der Proxy begrenzt die Anfragen pro Besucher. VARIOS AI sieht nur die Adresse des Webhosts, nicht die der einzelnen Besucher.
- Der Proxy begrenzt die Größe der Anfragen und kann den Gesprächsverlauf kürzen und filtern.
Info: Die API ist OpenAI-kompatibel. Jede Bibliothek und jedes Chat-Widget, das mit der OpenAI Chat Completions API arbeitet, funktioniert auch mit VARIOS AI. Es muss lediglich die Basis-URL auf den Proxy zeigen.
Vorbereitung in VARIOS AI
1
Globalen Assistenten anlegen
Legen Sie unter Globale Assistenten einen eigenen Assistenten für den Chatbot an. Einem API-Key lassen sich nur globale Assistenten zuordnen. Persönliche Assistenten einzelner Nutzer erscheinen in der Auswahl erst, wenn sie zur globalen Freigabe vorgeschlagen wurden. Verwenden Sie keinen Assistenten, den auch interne Nutzer einsetzen, damit Änderungen für den Chatbot nicht den internen Betrieb beeinflussen.
2
Wissensdatenbank zuordnen
Hinterlegen Sie die Inhalte, die der Chatbot kennen soll, in einer Wissensdatenbank: Webseiteninhalte, Formulare, Öffnungszeiten, Zuständigkeiten, häufige Fragen. Ordnen Sie sie dem Assistenten zu. Weitere Informationen finden Sie unter Wissensdatenbanken.
3
API-Key erstellen
Erstellen Sie unter API-Keys einen eigenen Key für den Chatbot und ordnen Sie ihm nur diesen einen Assistenten zu. Setzen Sie ein Kostenlimit pro Monat, aktivieren Sie DLP erzwingen und die Option kompatibel mit der Chat-Completions-API. Ohne die Kompatibilitätsoption liefert die Streaming-Antwort kein Standardformat, und übliche Client-Bibliotheken können sie nicht lesen. Details unter API-Keys.
4
Assistenten-ID notieren
Die ID des Assistenten steht in der Adresszeile der Assistenten-Einstellungen, z. B.
.../admin/assistants/584ab525-7988-4e5d-8140-b03e4c9ee66c. Sie wird in der API als model übergeben.Hinweis: Jeder API-Key benötigt eine eigene Lizenz.
Den Assistenten für den Chatbot gestalten
Ein Chatbot auf einer öffentlichen Webseite spricht mit Menschen, die VARIOS AI nicht kennen und keine Einführung bekommen. Der Systemprompt des Assistenten sollte deshalb enger gefasst sein als bei einem internen Assistenten. Zweck und Grenzen festlegen- Beschreiben Sie, wofür der Chatbot zuständig ist, und weisen Sie ihn an, Fragen außerhalb dieses Bereichs freundlich abzulehnen.
- Legen Sie fest, dass Antworten nicht rechtsverbindlich sind und der Chatbot bei Unsicherheit auf Telefon, E-Mail oder Kontaktformular verweist, statt zu raten.
- Weisen Sie den Assistenten an, keine personenbezogenen Daten abzufragen. Besucher sollen keine Namen, Adressen oder Aktenzeichen eingeben müssen.
- Kurz, in einfacher Sprache, in der Sprache der Anfrage.
- Immer die passende Seite der eigenen Webseite als vollständige URL im Antworttext nennen. Über die API werden die Quellen-Fußnoten der Wissensdatenbank entfernt. Nur was der Assistent selbst in den Text schreibt, kommt beim Besucher an.
- Keine Markdown-Tabellen oder komplexe Formatierungen, wenn das Widget sie nicht darstellen kann.
Die API ansprechen
Der Endpunkt istPOST /api/v1/chat/completions. Der API-Key wird als Bearer-Token übergeben, die Assistenten-ID als model.
Antwort in einem Stück
choices[0].message.content.
Streaming
Mit"stream": true liefert die API die Antwort als Server-Sent Events. Jedes Ereignis ist eine Zeile data: {...} mit einem chat.completion.chunk, der Text steht in choices[0].delta.content. Das Ende markiert data: [DONE].
/chat an, nicht VARIOS AI direkt. Der Proxy ergänzt den API-Key. Bei einem eigenen Proxy (Variante B unten) setzt dieser auch model und stream selbst und ignoriert die Werte aus dem Browser.
Fehler
Proxy auf dem Webhost
Der Proxy hat drei Pflichtaufgaben: den API-Key ergänzen, Anfragen pro Besucher begrenzen und die Streaming-Antwort durchreichen. Dafür genügt in den meisten Fällen die Konfiguration des vorhandenen Webservers, ohne eigenen Anwendungscode. Ein kleiner eigener Proxy lohnt sich erst, wenn zusätzlich der Gesprächsverlauf gekürzt oder gefiltert werden soll.Variante A: Nur Webserver-Konfiguration
Der Browser sendet die Anfrage im Chat-Completions-Format an einen Pfad der eigenen Webseite, etwa/chat. Der Webserver setzt den API-Key ein und leitet an VARIOS AI weiter. Die Assistenten-ID darf der Browser selbst mitsenden, sie ist nicht geheim: Der Key ist ohnehin auf diesen einen Assistenten beschränkt.
- nginx
- Apache
- Traefik
ngx_http_proxy_module und ngx_http_limit_req_module, beide in der Standardinstallation enthalten.- Den Verlauf kürzen. Die Größenbegrenzung deckelt nur die Gesamtgröße der Anfrage. Das Widget im Browser sollte deshalb selbst nur die letzten Nachrichten mitsenden.
- Systemnachrichten filtern. Eine
system-Nachricht aus dem Browser wird von VARIOS AI mit dem Systemprompt des Assistenten zusammengeführt. Der Assistent bleibt wirksam, aber Besucher können ihm zusätzliche Anweisungen mitgeben. Das Widget sollte keine Systemnachrichten senden; verhindern lässt es sich nur mit Variante B. - Das Kostenlimit von VARIOS AI kommt als
429beim Browser an, genau wie das eigene Rate-Limit. Das Widget zeigt in beiden Fällen dieselbe Meldung, etwa „Bitte versuchen Sie es später erneut”.
Variante B: Kleiner eigener Proxy
Ein eigener Proxy ergänzt die drei Pflichtaufgaben um das Kürzen des Verlaufs und das Filtern der Nachrichten. Das folgende Beispiel mit Node.js und Express ist vollständig. Vergleichbares lässt sich in jeder serverseitigen Sprache umsetzen.- Der Verlauf wird auf die letzten zehn Nachrichten gekürzt und jede Nachricht auf 2.000 Zeichen begrenzt. Das hält Kosten und Antwortzeit stabil und verhindert, dass ein Skript beliebig große Anfragen absetzt.
- Systemnachrichten aus dem Browser werden verworfen. Der Systemprompt kommt ausschließlich aus dem Assistenten.
- Fehler von VARIOS AI werden nicht an den Browser durchgereicht, sondern durch eine feste Ausweichantwort ersetzt. Besucher sehen keine internen Fehlermeldungen.
- Beim Abbruch durch den Besucher wird auch die Verbindung zu VARIOS AI beendet, damit dort kein Prozess weiterläuft.
Für beide Varianten empfohlen
- Bot-Schutz vor der ersten Nachricht, etwa ein unsichtbares Captcha, wenn der Chatbot öffentlich und ohne Anmeldung erreichbar ist.
- Herkunft prüfen: Der Pfad nimmt nur Anfragen von der eigenen Webseite an, etwa über den
Origin-Header oder ein Sitzungs-Cookie. - Protokollierung ohne Inhalte: Anzahl der Anfragen, Antwortzeiten und Fehler protokollieren, aber nicht die Nachrichten der Besucher.
- Liegt die Webseite hinter einem CDN mit eigenen Regeln für Rate-Limiting, kann der Deckel pro Besucher auch dort gesetzt werden.
Das Chat-Widget
Für das Widget im Browser eignet sich jede Komponente, die mit der OpenAI Chat Completions API arbeitet, ebenso ein eigenes kleines Widget. Unabhängig von der Wahl gilt:- KI-Kennzeichnung: Der Chatbot weist sich vor der ersten Nachricht als automatisches System aus. Ein Hinweis, dass Antworten nicht rechtsverbindlich sind und keine personenbezogenen Daten eingegeben werden sollen, gehört an dieselbe Stelle.
- Verlauf nur im Browser: Der Gesprächsverlauf liegt im
sessionStoragedes Besuchers und wird bei jeder Anfrage mitgesendet. Der Proxy speichert nichts. - Barrierefreiheit: Tastaturbedienung, beschriftete Schaltflächen, eine Statusmeldung, wenn die Antwort vollständig ist, und ausreichende Kontraste. Viele fertige Widgets erfüllen das nicht vollständig; prüfen Sie es vor dem Einsatz mit einem Screenreader.
- Übergabe an Menschen: Eine dauerhaft sichtbare Schaltfläche für Telefon, E-Mail oder Kontaktformular, unabhängig davon, ob der Assistent sie im Text nennt.
- Startvorschläge: Drei bis fünf Beispielfragen zu den häufigsten Anliegen senken die Hürde für die erste Nachricht.
