Programmieren ohne Programmiersprache – in OpenAIs GPT-Store blicken wir in die Zukunft. Dieser Artikel zeigt, wie wir ohne selbst eine Programmiersprache zu kennen, einen Lernassistenten zum Programmieren lernen erstellen.
Das Schlüsselwort lautet Prompt Engineering – wir weisen die KI in natürlicher Sprache an. Dazu benötigen wir ein Large Language Model (LLM) also eine spezielle KI, die eingens zu diesem Zweck erstellt wurde. OpenAI bietet uns mit ChatGPT den Zugang zum LLM und im GPT-Store können wir eigene kleine Chatbots erstellen. Diese heißen GPTs.
‘GPT’ steht ja ursprünglich für ‘Generative Pretrained Transformer’. Was das ist, brauchen wir im folgenden nicht zu verstehen – ‘GPT’ wird hier eher verwendet als Bezeichnung für einen Typ App, den wir ohne Programmierkenntnisse bei OpenAI erstellen und allen OpenAI-Usern zur Verfügung stellen können.
Erstellen wir also unseren Lernassistenten zum Programmieren lernen.
GPT-Store aufrufen
Als Voraussetzung benötigen wir lediglich einen Account bei OpenAI. Die Kosten nach der Einführungszeit betragen momentan je nach Abo-Typ ca. USD 20 pro Monat.
Sind wir eingeloggt, dann finden wir oben rechts im Menu den Zugang zum GPT-Store.
Auf der nächsten Seite können wir GPTs durchstöbern, die von anderen bereits öffentlich zur Verfügung gestellt wurden.
Oder wir bauen ein eigenes GPT. Dazu klicken wir oben rechts auf die grüne Schaltfläche:
Ein GPT konfigurieren
Wir werden belohnt mit einer Eingabemaske. Wir stellen sicher, dass ‘Configure’ eingestellt ist.
Unter ‘Name’ vergeben wir eine Bezeichnung für das GPT – ‘Programmieren lernen’.
Unter ‘Description’ erfassen wir eine kurze Beschreibung – ‘Lerne einfach eine neue Programmiersprache’ ist unser Beispiel.
Unter Instructions schreiben wir unseren Prompt. Mehr dazu im nächsten Abschnitt.
Unter Conversation Starters erfassen wir mindestens einen Satz, den die User des GPTs auswählen können, um einerseits das GPT zu starten und andererseits, dem GPT den notwendigen Kontext zu geben, um einen passenden Dialog zu führen.
Hier die Beispiele:
- Ich möchte ohne Vorkenntnisse Python lernen.
- Ich möchte ohne Vorkenntnisse Java lernen.
- Ich möchte ohne Vorkenntnisse SQL lernen.
- Ich möchte ohne Vorkenntnisse Spark DataFrames lernen.
Für dieses GPT benötigen wir unter ‘Knowledge’ und ‘Capabilities’ keine besonderen Eingaben und lassen die Vorgabe stehen.
Ist alles erfasst, dann klicken wir unten auf Create new Action.
Wir werden noch gefragt, wer das GPT sehen soll:
Wir wählen eine Option, mit der wir uns wohl fühlen und klicken dann auf ‘Share’.
Im nächsten Dialog klicken wir auf ‘View GPT’ und starten damit auch unser GPT.
Das GPT ausführen
Die Conversation Starters werden zur Auswahl angeboten.
Klicken wir beispielsweise auf ‘Ich möchte ohne Vorkenntnisse SQL lernen’ – dann beginnt ChatGPT einen Dialog.
Momentan generiert ChatGPT eine Antwort in Form einer allgemeinen Anleitung.
Hier ein Beispiel:
Prompt-Engineering: Das Verhalten des GPT beeinflussen
Jetzt verändern wir dieses Verhalten mit Prompt Engineering. Wir editieren das GPT.
Oben links finden wir ein Drop-Down-Menu und darin die Option ‘Edit GPT’.
Damit finden wir zurück in den Editier-Modus und widmen uns jetzt intensiv dem Prompt im Eingabefeld ‘Instructions’.
Jetzt entwickeln wir schrittweise unseren Prompt. Hier in Beispiel:
Den Kontext, also die Absicht, eine Programmiersprache zu lernen, gibt der User vor mit der Wahl des ‘Conversation Starters’.
Danach führt ChatGPT unseren Prompt durch. Dieser gibt weitere Anweisungen zum Verhalten des GPT und erweitern den Kontext
- Dieses GPT soll Aufgaben für Menschen ohne Programmierkenntnisse bereitstellen, die ihre Programme in der Programmiersprache schreiben wollen.
- Dieses GPT spricht User mit Du an.
ChatCPT sollte sich während der ganzen Konversation daran erinnern. Wir werden im Gebrauch des GPT beobachten, dass es das manchmal vergisst – insbesondere die Anredeform.
Jetzt geben wir genaue Anweisung, wie das GPT vorgehen soll:
- Das GPT generiert jeweils eine Aufgabe und zeigt sie dem Benutzer an, ohne die Lösung zu zeigen. Am Ende heißt es: Stelle eine Frage oder schreibe eine Lösung.
Führen wir das GPT aus, dann beobachten wir ein anderes Verhalten. Und es geht noch weiter:
Um ChatGPT mit didaktischen Fähigkeiten auszurüsten, überlegen wir uns, wie unsere User sich verhalten und wie das GPT – als geduldiger Lernassistent, darauf reagieren soll.
Im Beispiel unterscheiden wir drei Fälle:
- Wenn der Benutzer eine Frage stellt, dann beantwortet das GPT die Frage. Am Ende heißt es: Stelleine Frage oder schreibe eine Lösung.
- Wenn der Benutzer frustriert oder ungeduldig ist, wird dieses GPT einfühlsam und ermutigend antworten und sehr einfache Erklärungen zur aktuellen Aufgabe geben.
- Wenn der Benutzer eine Lösung vorschlägt, prüft das GPT diese und gibt ein Feedback und eine korrekte Lösung. Am Ende sagt es: Wünschst du eine weitere Übung?
Hier der ganze Prompt:
Führen wir das GPT jetzt aus, dann beobachten wir ein völlig verändertes Verhalten.
Hier ein Beispiel:
Fazit
Generative KI eröffnet die Möglichkeit, das Verhalten einer App mit natürlicher Sprache zu steuern.
Ich rechne damit, dass in Zukunft noch viel bessere Interaktionsmöglichkeiten zur Verfügung stehen werden.
Diese werden einen großen Einfluss auf uns als Gesellschaft haben und sicher auch die Art und Weise beeinflussen, wie und womit wir lernen – es lohnt sich, jetzt in diese Welt einzusteigen.