Dynamischer Kontext per API
Beim Erstellen eines Assistenten ermöglicht der dynamische Kontext nun, Inhalte über eine API abzurufen und direkt in das Systemeinzuspeisen. Dies erlaubt Echtzeitinformationen in die KI einzubinden. Retrieval-Augmented Generation (RAG) aus eigenen Datenquellen wie z.B. einer Vektor-Datenbank zu implementieren wird möglich.
Anwendungsfälle
- Verbindung mit einer Vektor-Datenbank, um Inhalte basierend auf einer letzten Nachricht einzufügen.
- „Der neueste Newsletter-Post“ kann jetzt in den KI-Assistenten integriert werden.
- Die „Letzten 10 Tweets“ vom eigenen Account lassen sich direkt in den Assistenten einbinden.
Funktionsweise
- Gehe zu Assistenten → Erstelle oder bearbeite einen Assistenten → Richte einen dynamischen Kontext über API ein.
- Wenn ein User mit dem Assistenten chattet, wird der API-Endpunkt aufgerufen.
- Die Antwort des API-Endpunkts wird zum Systemprompt des Assistenten hinzugefügt.
- Der Assistent nutzt diesen zusätzlichen Kontext, um die Fragen des Nutzers besser zu beantworten.
Vergleich mit dem Hinzufügen von Trainingsdaten
- Dynamischer Kontext injiziert Inhalte direkt in den Assistenten, ohne dass eine Suche erforderlich ist, um den gewünschten Inhalt zu erhalten.
- Vorteile: Der Assistent hat jederzeit und ohne Verzögerung vollen Zugriff auf den Kontext.
- Nachteile: Es wird mehr Kontextlänge verwendet.
Flexibilität
- Zusätzliche Informationen wie Chat-ID, Assistenten-ID, letzte Nutzernachricht usw. können den Anfrage-Headern/-Body hinzugefügt werden.
- Einrichtung einer Cache-Richtlinie. Um zu verhindern, dass der Assistent bei jeder Nachricht kontinuierlich die API aufruft.
- Der Endpunkt für den dynamischen Kontext kann so eingerichtet werden, dass er eigene Server oder andere zugängliche APIs aufruft.
Limits
- Die API-Antwort wird dem Systemprompt hinzugefügt, was die Länge des Kontexts erhöht. Die API-Antwort sollte daher kurz und prägnant sein.
- Die maximale Länge der API-Antwort beträgt 15% des Kontextlimits des Modells. Texte die dieses Limit überschreiten, werden gekürzt.
- Das beste Format für die API-Antwort ist formatiertes JSON (nicht minimiert) oder Markdown.
Verfügbarkeit von Variablen
Folgende Variablen stehen zur Verwendung im Request Header und Request Body zur Verfügung. Diese Variablen werden ersetzt, wenn die API aufgerufen wird:
- {chatID} (String) ist die einzigartige ID des aktuellen Chats.
- {characterID} (String) ist die einzigartige ID des Assistenten, mit dem der Nutzer chattet.
- {lastUserMessage} (String) ist der Inhalt der letzten Nachricht vom Nutzer.