Von künstlicher Intelligenz generierter Text – lerne jetzt, wie du ihn ganz gezielt und spezifisch in deine Anwendungen einfließen lässt.
Das erwartet dich in diesem OpenAI-API-Kurs.
In diesem Video wird auf die verwendeten Werkzeuge und die erforderlichen Kenntnisse eingegangen.
Hier geht es um die OpenAI-Plattform und wie man sie verwenden kann.
Hier geht es um das Update von OpenAI. Erfahre, welche Änderungen es gibt. In der Projektdatei ist nochmal alles Wichtige zusammengefasst.
Wir erstellen unser erstes Projekt mit npm create astro und schauen uns die Struktur des Erzeugnisses an.
Da wir für unsere UI auf React setzen, muss Astro JS zuerst noch befähigt werden, React-Komponenten einzusetzen.
Unser Endpunkt für den Chat-Service wird ein get-Request auf die URL /api/chat sein. Diesen Endpunkt richten wir in diesem Video ein.
Für die Aufrufe der OpenAI-API brauchen wir neben einem API-Key, den wir über unser Konto bei der OpenAI-Plattform erzeugen können, auch das openai-npm-Package.
Zum Testen haben wir einen festen Text auf dem Server verwendet. Hier wollen wir das erste Mal den Text verwenden, der vom Browser in der URL als Query-Parameter geschickt wird.
Nur über die URL in der Adressleiste des Browsers zu chatten ist keine Dauerlösung. Deswegen erstellen wir in diesem Video eine rudimentäre React-UI, die die Eingabe des Chat-Texts erlaubt.
Noch haben wir keinen richtigen Chat, sondern nur eine Frage und die Antwort darauf bekommen. Um ein ergiebiges Gespräch mit dem LLM zu führen, müssen wir uns den Chatverlauf merken.
Manchmal möchte man einfach von vorne anfangen und das Gesagte vergessen. Damit dazu nicht der Server neu gestartet werden muss, verwenden wir eine Chat-ID, um den Chatverlauf auf dem Server zurückzusetzen.
Bisher war das Chatten noch sehr rudimentär. Hier werden einige Verbesserungen eingebaut, die unsere Chat-App etwas mehr in Richtung ChatGPT schieben.
Der Chat-Verlauf war bisher nicht gut zu lesen und wird in diesem Video etwas „schöner“ gemacht.
Nun ist unsere erste Chat-App fertig und doch gäbe es noch viel zu tun, wenn man ChatGPT Konkurrenz machen möchte. ;-) Wer das nicht möchte, kann im nächsten Abschnitt mit einem neuen Projekt weitermachen.
Wir setzen das neue Projekt auf und bedienen uns dabei bei unserer ersten Chat-App.
Ein Spiel braucht eine Geschichte. In diesem Video stelle ich meine Idee dafür vor und treffe erste Vorbereitungen für die Navigation durch das Spiel.
Drei Quests (Chats) muss der Spieler bestehen, um zum (vorläufigen) Ende des Spiels zu gelangen. Diese bereite ich in diesem Video vor.
Der Barkeeper ist der erste Chat-Partner in diesem Spiel und wird in diesem Video „zum Leben erweckt“.
Bisher war der Barkeeper etwas ahnungslos ob seiner Rolle im Spiel. Wir schaffen Abhilfe, indem wir das erste System-Prompt einbauen.
Unser Chat-Partner ist in seiner Rolle als Barkeeper aufgegangen, aber wir wissen im Programm noch nicht, ob der Quest durch den Spieler erfüllt wurde. Dazu bieten sich Funktionsaufrufe an, die das LLM von sich aus tätigen kann, wenn es dies für angebracht hält. Wir müssen dafür sorgen, dass es dies auch tut.
Funktionsaufrufe können Rückgabewerte haben und diese müssen wir der KI auch mitteilen, was wir in diesem Video bewerkstelligen.
Der Client (Browser) muss benachrichtigt werden, dass der Quest erledigt wurde, denn dann kann der Spieler auch mit Dr. Owen sprechen und dem Ziel etwas näherkommen.
Auch das schönste Gespräch muss ein Ende haben, aber wie kriegen wir dies im Programm mit? Durch einen Funktionsaufruf natürlich.
Endlich kann der Spieler mit dem KI-Experten sprechen, um von ihm die Lösung des letzten Rätsels zu erfahren.
Barkeeper und Dr. Owen sind zwei verschiedene Charaktere und dürfen sich deswegen keinen Chat-Verlauf teilen. Deswegen sollten wir für Dr. Owen einen neuen Chatverlauf anlegen.
Dr. Owen braucht eine Funktion, damit wir erfahren, dass der Spieler nach der Lösung seines kleinen Security-Robot-Problems gefragt und eine Antwort erhalten hat. Diese bekommt er in diesem Video.
Unser Endgegner in diesem Spiel ist der Sicherheitsroboter, der uns die ganze Zeit nicht vorbeilassen wollte. Nun aber hat der Spieler die Macht oder vielmehr das Wissen, um ihn letztlich doch zu überlisten.
Unser neues Projekt führt uns in die Welt der Gitarren-Shops, natürlich mit freundlicher Unterstützung der OpenAI-API, die es uns erlaubt, einen virtuellen Verkaufsassistenten zu realisieren.
Bisher war der Verkaufsassistent noch nicht besonders gut bei der Beratung. Dies soll jetzt mit einer simulierten „Datenbank“ mithilfe von Maps verbessert werden.
Bisher hatten wir nur 2 Produkte, die wir in diesem Video auf 4 aufstocken. Wichtig ist hierbei, dass wir nun mehrere Produkte pro Typ haben und somit den Verkaufsassistenten z. B. fragen können, welche E-Bässe im Sortiment sind.
Der Preis ist beim Gitarrenkauf zwar nicht alles, aber ein Kunde, der keine neue Hypothek auf sein Eigenheim aufnehmen will, sollte schon in der Lage sein, den Verkäufer nach E-Gitarren im unteren oder mittleren Preisbereich zu fragen. Dies erreichen wir mit einem zweiten Parameter priceRange bei der entsprechenden Funktion, die das LLM dann aufrufen soll.
Wir haben es kaputt gemacht mit dem letzten Video. Aber keine Sorge, der Fehler ist schnell behoben, wenn man weiß, wo man suchen muss.
Was wäre ein Online-Shop ohne Warenkorb? Obwohl wir keinen richtigen Warenkorb implementieren werden (darum geht es in diesem Kurs ja nicht), werden wir in diesem Video aber die Grundlagen schaffen, damit ihr einen Warenkorb an den virtuellen Verkaufsassistenten anbinden könnt. Auch hier hilft wieder … der Funktionsaufruf!
Kunden werden in den meisten Fällen die Namen der Produkte nur ungefähr kennen. Das LLM kann den Funktionsaufruf nur mit den Namen machen, die in der Anfrage des Kunden stehen. Aber mit einem kleinen Trick lässt sich für diese Fälle die KI recht einfach für eine „unscharfe“ Suche in den Produktnamen nutzen.
Kommentiere jetzt „OpenAI API: KI-basierte Chats, Verkaufsassistenten & Text-Adventures programmieren“