Häufig gestellte Fragen (FAQ)
Was ist TypeChat?
TypeChat erleichtert die Erstellung von natürlichsprachlichen Schnittstellen mithilfe von Typen. Diese Typen repräsentieren die Domäne Ihrer Anwendung, z. B. eine Schnittstelle zur Darstellung der Benutzerstimmung oder Typen für Aktionen, die ein Benutzer in einer Musik-App ausführen könnte.
Nachdem Sie Ihre Typen definiert haben, kümmert sich TypeChat um den Rest durch
- Erstellung eines Prompts für das LLM unter Verwendung von Typen.
- Validierung, dass die LLM-Antwort dem Schema entspricht. Wenn die Validierung fehlschlägt, wird die nicht konforme Ausgabe durch weitere Interaktion mit dem Sprachmodell repariert.
- Prägnante Zusammenfassung (ohne LLM-Nutzung) der Instanz und Bestätigung, dass sie mit der Benutzerabsicht übereinstimmt.
Typen sind alles, was Sie brauchen!
Warum ist TypeChat nützlich?
Wenn Sie einer App eine natürlichsprachliche Schnittstelle hinzufügen möchten – nehmen wir zum Beispiel an, eine Kaffee-Bestell-App, die es Ihnen erlaubt, Ihre Bestellung auszusprechen –, müssen Sie eine Anfrage schließlich in etwas Präzises und Konkretes übersetzen, das Ihre App für Aufgaben wie Abrechnung, Bestellung usw. verarbeiten kann.
TypeChat ermöglicht es Ihnen, große Sprachmodelle für diese Arbeit einzusetzen, ohne sich Gedanken über das Parsen der Antwort oder den Umgang mit „imaginären“ Elementen und Aufgaben machen zu müssen. Das liegt daran, dass alles strukturiertes JSON sein muss, das gegen Ihre Typen validiert wird.
Was sind die Vorteile der Verwendung von TypeChat?
TypeChat wurde mit dem Ziel entwickelt, die Sicherheit von natürlichsprachlichen Schnittstellen zu erhöhen.
Wir glauben, dass TypeChat drei wichtige Hauptvorteile bei der Arbeit mit großen Sprachmodellen bietet
- Genau: Große Sprachmodelle leisten hervorragende Arbeit bei der Zuordnung von Benutzerabsichten zu vordefinierten Typen. Die Validierung und Reparatur von TypeChat bereinigt den Rest!
- Zugänglich: Kein Prompt-Engineering mehr! Typen sind alles, was Sie brauchen. Sie haben sie wahrscheinlich schon herumliegen.
- Sicherheit: Typen schränken die Domäne und die Unsicherheit des Modells ein. Das Zurückgeben der Instanz bestätigt, dass sie vor der Aktion mit der Benutzerabsicht übereinstimmt.
Wie funktioniert TypeChat? Wie verhält sich TypeChat zu TypeScript?
TypeChat verwendet TypeScript-Typen als „Sprache für die Spezifikation“ für Antworten von Sprachmodellen. Der Ansatz für das Senden einer Anfrage ist minimal und umfasst die Eingaben des Benutzers, Ihre Typen und Text, der das Modell auffordert, die Benutzereingabe in ein JSON-Objekt im Einklang mit den TypeScript-Typen zu übersetzen.
Nach Erhalt einer KI-Antwort verwendet TypeChat die TypeScript-Compiler-API im Hintergrund, um die Daten basierend auf den von Ihnen bereitgestellten Typen zu validieren. Wenn die Validierung fehlschlägt, sendet TypeChat einen Reparatur-Prompt zurück an das Modell, der Diagnosen vom TypeScript-Compiler enthält. So kann TypeChat garantieren, dass Ihre Antwort korrekt typisiert ist.
Wie zuverlässig ist TypeChat?
TypeChat ist *sehr* zuverlässig. Große Sprachmodelle haben bewiesen, dass sie gut funktionieren, wenn sie mit eindeutigen, formalen Beschreibungen möglicher Ausgaben eingeschränkt werden. Sie funktionieren auch besser, je mehr Training sie erhalten haben. TypeScript ist das Typsystem der beliebtesten Programmiersprache der Welt, und JSON ist das Austauschformat der beliebtesten Programmiersprache. Infolgedessen ist das Modell mit beidem extrem vertraut, was die Genauigkeit erhöht. TypeChat erstellt den Prompt bewusst kompakt, und TypeScript kann bis zu 5x prägnanter sein als eine JSON-Schema-Entsprechung. Meistens reagiert das Modell gut auf den Prompt von TypeChat und sendet eine gültige Instanz zurück. TypeChat fügt Validierung und (falls diese fehlschlägt) selbstreparierende Logik hinzu, um eine gültige Antwort vom Modell unter Verwendung von Diagnosen vom TypeScript-Compiler zu erhalten. Schließlich hält TypeChat den Benutzer zur endgültigen Bestätigung der Absicht im Loop, was als letzter Sicherheitsmechanismus dient.
Welche Sprachen unterstützt TypeChat?
Derzeit wird TypeChat nur für TypeScript und JavaScript entwickelt. Entwickler, die an Unterstützung für zusätzliche Sprachen interessiert sind, können sich in den GitHub Discussions von TypeChat austauschen.