CiAgICA8IS0tIExpbmtlZEluIC0tPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgIF9saW5rZWRpbl9wYXJ0bmVyX2lkID0gIjEyMzUwNzMiOwogICAgICAgIHdpbmRvdy5fbGlua2VkaW5fZGF0YV9wYXJ0bmVyX2lkcyA9IHdpbmRvdy5fbGlua2VkaW5fZGF0YV9wYXJ0bmVyX2lkcyB8fCBbXTsKICAgICAgICB3aW5kb3cuX2xpbmtlZGluX2RhdGFfcGFydG5lcl9pZHMucHVzaChfbGlua2VkaW5fcGFydG5lcl9pZCk7CiAgICA8L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgICAgICAgKGZ1bmN0aW9uKCl7dmFyIHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07CiAgICAgICAgICAgIHZhciBiID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7CiAgICAgICAgICAgIGIudHlwZSA9ICJ0ZXh0L2phdmFzY3JpcHQiO2IuYXN5bmMgPSB0cnVlOwogICAgICAgICAgICBiLnNyYyA9ICJodHRwczovL3NuYXAubGljZG4uY29tL2xpLmxtcy1hbmFseXRpY3MvaW5zaWdodC5taW4uanMiOwogICAgICAgICAgICBzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGIsIHMpO30pKCk7CiAgICA8L3NjcmlwdD4KICAgIDxub3NjcmlwdD4KICAgICAgICA8aW1nIGhlaWdodD0iMSIgd2lkdGg9IjEiIHN0eWxlPSJkaXNwbGF5Om5vbmU7IiBhbHQ9IiIgc3JjPSJodHRwczovL3B4LmFkcy5saW5rZWRpbi5jb20vY29sbGVjdC8/cGlkPTEyMzUwNzMmZm10PWdpZiIgLz4KICAgIDwvbm9zY3JpcHQ+CiAgICA8IS0tIEVuZCBMaW5rZWRJbiAtLT4KICAgIA==
Generic filters
Exact matches only
Search in title
Search in excerpt
Search in content

ChatGPT in der Praxis: Anwendungen und Einsatzmöglichkeiten

Künstliche Intelligenz ist schon länger ein großes Thema – mit der Veröffentlichung von ChatGPT durch OpenAI aber wird es für jeden greifbar. ChatGPT versetzt den normalen Nutzer durch einen einfachen Chat in die Lage, die Fähigkeiten einer künstlichen Intelligenz zu erforschen und diese sofort im Alltag zu nutzen. Dabei ist ChatGPT alles andere als perfekt – hier werden insbesondere die unzureichenden mathematischen Fähigkeiten ins Feld geführt.

Dieser Beitrag zeigt Szenarien auf, in denen ChatGPT dennoch eingesetzt werden kann. Dabei fokussieren wir uns auf die Stärken der Textverarbeitung und wie sie schon heute genutzt werden können. Abschließend blicken wir auf mögliche Anwendungsfälle in naher Zukunft.

Was ist ChatGPT?

ChatGPT ist ein Modell für Natural Language Processing (NLP), das von OpenAI entwickelt wurde. Es basiert auf der Transformer-Architektur und wurde mithilfe von Deep Learning-Methoden trainiert. Das Modell hat die Fähigkeit, natürliche Sprache zu verstehen und darauf zu reagieren, indem es Text produziert, der sinnvoll und in einem bestimmten Kontext relevant ist.

ChatGPT in der Praxis - Konversation mit ChatGPT
Abbildung 1: Konversation mit ChatGPT

ChatGPT wurde ursprünglich entwickelt, um in Chatbots und Sprachassistenten eingesetzt zu werden. Inzwischen hat es sich auch in anderen Bereichen bewährt, wie zum Beispiel in der automatischen Textgenerierung oder Übersetzung. Das Modell nutzt einen großen Datensatz aus dem Internet und wurde durch maschinelles Lernen dafür trainiert, eine Vielzahl von Aufgaben auszuführen, die normalerweise von menschlichen Akteuren erfüllt werden. Im Kontext digitaler Anwendungen erweitert ChatGPT diese um neue Möglichkeiten zur Automatisierung und zur Interaktion mit natürlicher Sprache.

Was gilt es vor der Nutzung von ChatGPT zu beachten?

Beim Einsatz von ChatGPT sollten folgende Punkte und Einschränkungen berücksichtigt werden:

  • Qualität des Trainingsdatensatzes: Das Modell wurde mit einem großen Datensatz aus dem Internet trainiert. Dennoch ist dies keine Gewährleistung dafür, dass der Datensatz für die geplante Aufgabe relevant und qualitativ hochwertig ist.
  • Kontextualisierung: ChatGPT ist in der Lage, den Kontext zu verstehen und dementsprechend zu reagieren. Es muss sichergestellt sein, dass der Kontext klar definiert ist, damit das Modell die richtige Antwort liefert.
  • Limitationen: ChatGPT ist ein sehr mächtiges Modell, aber es hat auch seine Grenzen. Es ist wichtig, die Erwartungen realistisch zu halten und sicherzustellen, dass das Modell für die geplante Aufgabe geeignet ist.
  • Datenschutz: ChatGPT wurde mit einem großen Datensatz aus dem Internet trainiert. Darüber hinaus werden alle Konversationen gespeichert. Dementsprechend muss vor der Nutzung sichergestellt werden, dass die Verwendung des Modells den eigenen Datenschutzbestimmungen entspricht und dass keine sensiblen Daten in den Austausch mit der künstlichen Intelligenz einfließen.
  • Überwachung: Wie bei jeder AI-Anwendung ist es wichtig, das Modell regelmäßig zu überwachen und zu überprüfen, dass es sicher und ethisch korrekt eingesetzt wird.
  • Nachverfolgbarkeit: ChatGPT ist ein generatives Model, die Ergebnisse nachzuvollziehen gestaltet sich schwierig. Es ist wichtig, die Eingabe und die Ausgabe des Modells zu überwachen, um sicherzustellen, dass es keine unerwarteten Ergebnisse liefert.

Wie kann mit ChatGPT interagiert werden?

Es gibt aktuell drei Wege, die OpenAI zur Interaktion mit ChatGPT zur Verfügung stellt. Im Folgenden werden die drei Varianten mit den unterschiedlichen Möglichkeiten aufgeführt. Dabei wird ersichtlich, dass die Handhabung mit zunehmenden Möglichkeiten anspruchsvoller wird. Je nach Anwendungsfall kann bereits der Chat als einfachste Nutzungsform ausreichen.

Chat

Nach der kostenlosen Registrierung kann ChatGPT in Form eines Chats genutzt werden. Beim Aufruf der Seite werden zunächst einige Beispiele genannt sowie Möglichkeiten und Beschränkungen bei der Konversation mit ChatGPT. Am unteren Rand befindet sich die Texteingabe, über die eine Unterhaltung begonnen werden kann (vgl. Abbildung 1).

Knowhow: ChatGPT in der Praxis - Neuer Chat mit ChatGPT
Abbildung 2: Neuer Chat mit ChatGPT

Konversation

Der Nutzer beginnt eine Konversation mit ChatGPT mit der Eingabe einer Frage oder einer Aufgabe. Nach dem Absenden generiert die KI auf Basis ihrer Trainingsdaten eine passende Antwort. Dadurch, dass ChatGPT auf einer sehr breiten Datenbasis trainiert wurde, liefert die Anwendung zu fast zu jedem Thema einen Beitrag.

Im Rahmen eines Chats kann der Nutzer jederzeit vorherige Eingaben und Antworten referenzieren, da diese für den Verlauf der Unterhaltung von ChatGPT gespeichert werden. Die Chats werden zusätzlich in einer Historie gesichert und können später nochmals aufgerufen und fortgesetzt werden.

Durch diese einfache Interaktion ist die Verwendung für jeden gut zugänglich und leicht zu bedienen. Allerdings hängt die Qualität der Ergebnisse, die ChatGPT liefert, sehr stark von den Eingaben des Nutzers ab. Es ist wichtig, sich bereits im Vorfeld zu überlegen, wie genau das gewünschte Ergebnis sein soll, und bei der Eingabe entsprechend detaillierte Angaben zu machen. Die Optimierung von Eingaben wird als Prompt Engineering bezeichnet.

Prompt Engineering

Prompt Engineering ist eine Methode, die verwendet wird, um das Verhalten von Textgenerierungsmodellen wie ChatGPT zu steuern und zu beeinflussen. Es bezieht sich auf die Verwendung der Texte, die als Eingabe für das Modell verwendet werden, damit es bestimmte Arten von Antwort-Texten liefert. Diese Eingabe wird als „Prompt“ bezeichnet.

Ein Prompt kann zahlreiche Parameter enthalten, die Einfluss auf die Länge, den Schreibstil, die Zielgruppe, die Textart oder ähnliches haben. Durch unterschiedliche Prompts und deren Ergänzung oder Veränderung gibt es also eine Vielzahl an Möglichkeiten, die Generierung der Texte zu beeinflussen.

Prinzipiell kann der Nutzer sich beliebig viele W-Fragen stellen, um einen geeigneten Prompt für sein gewünschtes Ergebnis zu formulieren. Hier eine Auswahl:

  • Was ist das Ziel des Textes?
  • Wer ist die Zielgruppe des Textes?
  • Welches Thema soll der Text behandeln?
  • Wie soll der Text strukturiert sein?
  • Welche Art von Text soll generiert werden (z. B. Beschreibung, Erklärung, Argumentation)?
  • Welche Form soll der Text haben (z. B. Aufsatz, Nachricht, Blog-Eintrag)?
  • Was soll der Text beinhalten (z. B. Fakten, Meinungen, Beispiele)?
  • Welche Art von Sprache und Schreibstil soll verwendet werden?
  • Welche Constraints sollen eingebaut werden?
  • Welche spezifischen Wörter oder Phrasen sollen enthalten sein?
  • Welche Schreibperspektive soll verwendet werden (z. B. erste Person, dritte Person)?
  • Welche Art von Emotionen oder Stimmung soll der Text vermitteln?
  • Welche spezifischen Anforderungen gibt es an die Textlänge?

Schon die Beantwortung einer Frage hat erheblichen Einfluss auf den Output, wie die folgenden Beispiele zeigen:

Know-how: ChatGPT in der Praxis - Beispiele für die Nutzung von Prompt Engineering - 1
Abbildung 3: Beispiele für die Nutzung von Prompt Engineering – 1

Know-how: ChatGPT in der Praxis - Beispiele für die Nutzung von Prompt Engineering - 2
Abbildung 4: Beispiele für die Nutzung von Prompt Engineering – 2

Know-how: ChatGPT in der Praxis - Beispiele für die Nutzung von Prompt Engineering - 1
Abbildung 5: Beispiele für die Nutzung von Prompt Engineering – 3

Know-how: ChatGPT in der Praxis - Beispiele für die Nutzung von Prompt Engineering - 4
Abbildung 6: Beispiele für die Nutzung von Prompt Engineering – 4

Know-how: ChatGPT in der Praxis - Beispiele für die Nutzung von Prompt Engineering - 5
Abbildung 7: Beispiele für die Nutzung von Prompt Engineering – 5

Playground

Der Playground von ChatGPT bietet im Vergleich zum Chat deutlich mehr Möglichkeiten, was die Kontrolle über die Generierung der Antworten betrifft. Neben dem Chatfenster gibt es mehrere Parameter, die eingestellt werden können, wodurch die Ausgabe beeinflusst wird.

Know-how: ChatGPT in der Praxis - Überblick der Parameter im Playground
Abbildung 8: Überblick der Parameter im Playground

Im Folgenden geben wir einen Überblick über die Parameter und deren Wirkung.

1. Modus

Derzeit gibt es drei verschiedene Modi, zwischen denen gewählt werden kann. Die Modi für Insert und Edit befinden sich zum Zeitpunkt der Erstellung dieses Beitrags noch in der Beta-Phase.

  • Completion: Auf Basis der Eingabe des Nutzers, generiert das Modell weiteren Text. Dies kann das Fortsetzen eines begonnenen Textes, die Beantwortung einer gestellten Frage oder auch die Durchführung einer gestellten Aufgabe sein.
  • Insert: Der Nutzer gibt einen Text ein und kann eine oder mehrere Stellen definieren, an denen die KI den Text ergänzen soll.
  • Edit: Der Nutzer gibt einen Text und eine Aufgabe ein, die durch den Chatbot durchgeführt werden soll, z. B. „korrigiere die Grammatik“.
2. Modell

OpenAI stellt mehrere Sprachmodelle bereit, die auf verschiedene Aufgaben trainiert wurden. Dementsprechend weisen die Modelle unterschiedliche Stärken auf, wobei das aktuell stärkste Modell „text-davinci-003“ alle Aufgaben der anderen Modelle erfüllen kann – oftmals sogar in besserer Qualität. Das Modell wird dementsprechend bei der Nutzung per API auch höher bepreist (siehe Application Programming Interface (API)) .

Je nach Anwendungsfall kann es sinnvoll sein, eines der anderen Modelle zu nutzen, um die Kosten zu reduzieren oder eine bessere Performance zu erzielen. Für weitere Informationen zu den Modellen wird an dieser Stelle auf die Dokumentation von OpenAI verwiesen.

3. Temperature

Bei der Generierung von Texten wird durch das Modell immer eine Wahrscheinlichkeit für die Auswahl der nächsten Wörter ermittelt. Dementsprechend werden Wörter, die eine hohe Wahrscheinlichkeit aufweisen, häufiger verwendet als solche mit einer niedrigen Wahrscheinlichkeit.

Über die Temperature kann gesteuert werden, ob die KI häufiger unwahrscheinliche Wörter verwendet und somit zufälliger agieren soll oder ob es im Extremfall auf die gleiche Anfrage immer identisch antworten soll. Derart deterministisch wäre das Modell mit einer Temperature von Null.

4. Maximum Length

Bei der Analyse und Generierung eines Textes wird dieser für eine leichtere Verarbeitung in Einzelteile (Tokens) zerlegt. Ein Token steht für etwa vier Buchstaben (bezogen auf englischen Text). Um besonders lange Antworten zu vermeiden, kann die Länge der Antwort auf eine maximale Anzahl an Tokens begrenzt werden. Das ist sinnvoll vor dem Hintergrund, dass die Modelle manchmal zu ausschweifenden Antworten neigen und die Kosten für die Nutzung per API auf Basis der genutzten Tokens berechnet werden.

5. Stop Sequences

Die Ausgabe der KI kann neben der Begrenzung der Länge auch über die Nutzung sogenannter Stop-Sequenzen beschränkt werden. Sobald die KI eine solche Sequenz generiert, wird eine weitere Erzeugung von Text unterbunden.

6. Top P

Wie bereits erwähnt, nutzt die KI für die Auswahl der nächsten Wörter einer Antwort immer deren Wahrscheinlichkeit. Mit dem Parameter Top P kann gesteuert werden, wie viel Prozent der möglichen Wörter gewichtet nach deren Wahrscheinlichkeit in Betracht kommen sollen. Bei einem Wert von 0,5 werden also nur die Hälfte der möglichen Fortsetzungen für eine Generierung berücksichtigt.

7. Frequency Penalty

Frequency penalty ist eine Methode, die verwendet wird, um die Anzahl häufig vorkommender Wörter oder Phrasen zu verringern, die von einem Sprachmodell generiert werden. Ziel ist es, die Generierung von sinnlosen oder irrelevanten Wörtern oder Phrasen zu reduzieren und das Modell dazu zu bringen, nach weniger häufig vorkommenden und somit möglicherweise interessanteren Wörtern oder Phrasen zu suchen.

8. Presence Penalty

Die Presence Penalty arbeitet ähnlich wie die Frequency Penalty und regt das Modell dazu an, alternative Wörter oder Phrasen zu suchen und zu verwenden, anstatt häufig vorkommende oder vorhersehbare zu wählen. Presence Penalty zielt darauf ab, die Generierung von irrelevanten, sinnlosen oder langweiligen Wörtern oder Phrasen zu reduzieren und die Qualität des generierten Textes zu verbessern, indem es die Textgenerierung natürlicher und weniger vorhersehbar macht.

9. Best of

Über die Einstellung eines Best-of-Wertes kann gesteuert werden, dass zu einer Frage oder Aufgabe serverseitig mehrere Completions generiert werden und nur die beste erzeugte ausgegeben wird. Dabei werden die Tokens für alle serverseitig generierten Antworten berechnet, wodurch die Verwendung des Best-of-Parameters je nach Höhe sehr kostspielig werden kann.

10. „Inject start text” und „inject restart text”

Diese Parameter geben die Möglichkeit, der Nutzereingabe oder der Antwort von ChatGPT automatisch Text anzuhängen. Durch die Inject-Funktionalität können Instruktionen für die Generierung des Textes mitgegeben werden, um die gewünschte Ausgabe für den Nutzer zu verbessern. Der Restart-Text dient dazu, nach der Generierung der Antwort durch die KI immer einen Text mitzugeben, um eine bestimmte Struktur aufrecht zu erhalten.

Few-Shot-Learning

Few-Shot-Learning ist ein Konzept der künstlichen Intelligenz, bei dem ein Modell mit wenigen Daten trainiert wird, um eine bestimmte Aufgabe auszuführen. Im Gegensatz dazu werden in den meisten traditionellen Ansätzen von Machine Learning große Mengen an Daten verwendet, um das Modell zu trainieren und zu testen.

Konkret heißt das, dass beim Few-Shot-Learning vor dem eigentlichen Prompt einige wenige Beispiele gegeben werden können, die eine bestimmte Frage-Antwort-Struktur vorgeben. Anhand dieser Beispiele lernt ChatGPT dann, wie eine Antwort aussehen soll. Dabei kann bereits ein einziges Beispiel ausreichend sein.

Application Programming Interface (API)

Der Playground bietet bereits einen umfassenden Werkzeugkasten, um die Generierung von Texten mit Hilfe von ChatGPT granular zu steuern und für den jeweiligen Anwendungsfall anzupassen. All diese Möglichkeiten stehen auch bei der Nutzung der API zur Verfügung. Zusätzlich können so die generierten Texte oder Antworten in ein eigenes Programm integriert werden und die von ChatGPT gegebenen Antworten vor der Ausgabe an den Nutzer kontrolliert oder verändert werden.

Die Nutzung der API erlaubt das Finetuning eigener Modelle. Als Basis dient dabei eines der von OpenAI zur Verfügung gestellten Modelle. Somit ist es möglich, der KI weiteres Wissen anzutrainieren und sie auf eine bestimmte Verhaltensweise zur Beantwortung von Eingaben innerhalb eigener Programme oder Anwendungen zu trainieren.

Finetuning

OpenAI stellt für das Finetuning von Modellen ein Command-Line-Interface (CLI) zur Verfügung, das die Nutzung und das Training von Modellen vereinfacht. Das CLI ist als Python-Bibliothek verfügbar – die Installation von Python ist also Voraussetzung zur Nutzung. Die Bibliothek kann dann über die Konsole mit folgendem Befehl installiert werden:

pip install --upgrade openai

Anschließend sind die Funktionen der Bibliothek verfügbar.

Um ein eigenes Modell zu trainieren, wird zunächst ein größerer Beispiel-Datensatz benötigt. Der Datensatz sollte aus mindestens einigen hundert Prompt-Explanation-Paaren bestehen. Durch diese Frage-Antwort-Paare lernt das Modell zum einen das enthaltene Wissen und zum anderen, in welcher Form es auf die unterschiedlichen Anfragen reagieren soll, unter Berücksichtigung von variierenden Parameter. Das Datenset kann in einer CSV- oder Excel-Datei in zwei Spalten mit den Überschriften „Prompt“ und „Explanation“ angelegt werden und dann mittels des CLI in ein JSONL-Format konvertiert werden. Der zugehörige Befehl in der Command Line lautet:

openai tools fine_tunes.prepare_data -f

Bei der Ausführung des Befehls werden einige Vorschläge zur Aufbereitung der Daten gemacht, welche die Daten in eine für das Training bessere Qualität bringen sollen. Sobald die Trainingsdaten im JSONL-Format vorliegen, kann die Datei an das gewählte Modell übergeben und das Training gestartet werden:

openai api fine_tunes.create -t -m

Die Datei wird daraufhin hochgeladen und das Training des Modells gestartet. Dies kann – je nach Größe des Datensets – einige Zeit in Anspruch nehmen. Das trainierte Modell erhält nach Abschluss einen eigenen Namen. Weitere Details zum Finetuning finden sich in der Dokumentation von OpenAI.

Test und Verwendung

Im Anschluss an das Training kann das neue Modell wie jedes andere Modell verwendet werden. Um das Modell zunächst zu testen, sollte wiederum ein entsprechendes Datenset zur Verfügung stehen, welches ausschließlich Prompts enthält und zu denen das Modell die zugehörige Explanation erzeugen soll. Ein automatischer Test, bei dem die Prompts per API an das Modell übergeben werden sollen, kann in einer beliebigen Programmiersprache geschrieben werden. Das manuelle Testen kann auch im Playground durchgeführt werden, da hier neben den Basis-Modellen auch alle trainierten Modelle zur Auswahl stehen.

Das Modell steht, wie die übrigen Modelle auch, mit allen Funktionen zur Verfügung. Um die Performance des eigenen Modells weiter zu verbessern, kann ein weiteres Finetuning auf dem bereits trainierten Modell durchgeführt werden.

Wie kann ChatGPT in der Praxis und im Business Intelligence verwendet werden?

Wir haben nun eine grundsätzliche Vorstellung von ChatGPT und auf welche Weise man die KI nutzen kann. Abschließend folgen einige Anregungen, wie ChatGPT  im Unternehmenskontext genutzt werden kann und welche Potentiale daraus insbesondere für Business-Intelligence-Anwendungen erwachsen.

Sofortige Nutzung

Die Chat-Funktion erfordert lediglich eine Registrierung. Es ist also sofort möglich, ChatGPT direkt in den Arbeitsalltag zu integrieren – ähnlich, wie das „Googeln“ sich hier etabliert hat.

Allgemeine Nutzungsoptionen

Da es sich um ein Sprachmodell handelt, das in Textform antwortet und für die Arbeit mit Texten aller Art und in allen Varianten trainiert wurde, bietet es sich an, es auch dafür zu nutzen. Darüber hinaus gibt es die Möglichkeit sich Ideen, andere Perspektiven, Anleitungen, Erklärungen und vieles mehr durch die KI liefern zu lassen. Im Folgenden geben wir einige Anregungen – ohne hier Anspruch auf Vollständigkeit zu erheben:

  • Arbeiten mit Texten: Wenn eine andere Formulierung gebraucht wird, ein Text zusammengefasst werden soll, Stichpunkte oder ein ganzer Text zu einem Thema benötigt werden oder ein Text übersetzt oder vereinfacht werden soll, kann ChatGPT passable Lösungen bieten.
  • Erklärung: Die KI kann die Erklärung eines Begriffs mit oder ohne Kontext, eines Sachverhalts oder eines Themas unter Bezugnahme auf zentrale Aspekte liefern und spart somit gegebenenfalls eine längere Recherche über Suchmaschinen.
  • Perspektivwechsel: Soll ein Sachverhalt aus unterschiedlichen Perspektiven betrachtet werden, kann ChatGPT das übernehmen und so wertvolle Anregungen und Ideen liefern, die vorher vielleicht außer Acht geblieben wären.
  • Anleitungen: Wenn unbekannt ist, wie eine bestimmte Funktionalität genutzt wird, wie ein Prozess funktioniert oder wie eine bestimmte Einstellung in einem weit verbreiteten Programm vorgenommen wird, kann ChatGPT eine Schritt-für-Schritt-Anleitung bereitstellen. Bei Bedarf lassen sich zu jedem Schritt weitere Informationen anfordern.
  • Ideensammlung: Sollen verschiedene Ansätze zu einem Vorgehen oder zu einem Thema zusammengetragen werden, kann die KI sofort unterschiedliche Ideen dazu liefern. Dies bildet wiederum eine gute Basis für eine weitere Evaluierung des Ausgangssachverhalts.
  • Argumentation: ChatGPT kann die Vor- und Nachteile von Vorgehensweisen und Lösungen sowie verschiedene Argumentationsketten bereitstellen, sodass in kürzester Zeit ein Überblick über die wichtigsten zu bedenkenden Punkte besteht.

Selbst für eine individuelle Auflistung der Nutzungsmöglichkeiten, zugeschnitten auf die eigene Position und Tätigkeit im Unternehmen, kann ChatGPT befragt werden. Unter Verwendung des Prompt Engineerings kann direkt eine Liste mit Aufgaben generiert werden, bei denen die KI vielleicht einen Mehrwert oder eine Erleichterung in der täglichen Arbeit bringen kann.

Unterstützung in der Entwicklung

Da sämtliche Programmiersprachen ebenfalls aus Text bestehen, ist ChatGPT in der Lage, auch diese zu analysieren und zu schreiben. Es ist also möglich, der KI zum Beispiel einen Code-Ausschnitt mitzuteilen und sich diesen erklären oder auf Fehler untersuchen zu lassen. Außerdem kann der Chatbot mit natürlicher Sprache angewiesen werden, Code für einen beliebigen Anwendungsfall in einer bestimmten Sprache zu schreiben.

Alle gängigen Programmiersprachen sind der KI bekannt. Sie kann in der Entwicklung somit als guter Sparrings-Partner genutzt werden, der Fleißarbeiten abnimmt, alternative Möglichkeiten aufzeigt und bei der Dokumentation oder Fehlersuche hilft.

Die Generierung von Code durch die KI ist allerdings (noch) häufig mit Fehlern verbunden. Das Erzeugnis darf also nicht eins zu eins übernommen, sondern sollte wiederum geprüft werden. Die Korrektur der Fehler kann mit den entsprechenden Kenntnissen entweder selbst durchgeführt werden oder durch entsprechende Rückmeldung mit der Beschreibung des Fehlers durch ChatGPT.

Die gängigsten Einsatzgebiete von ChatGPT in der Entwicklung können folgendermaßen zusammengefasst werden:

  • Analyse von Code: Die KI kann verwendet werden, um Code-Ausschnitte zu analysieren und auf Fehler oder Unstimmigkeiten hinzuweisen. Dafür muss der zu untersuchende Abschnitt zusammen mit der Anweisung, diesen Code auf Fehler zu prüfen, in das Chat-Fenster kopiert werden.
  • Erstellung von Code: ChatGPT eignet sich, um Ansätze für eine neue Funktion oder Anwendung als Code in verschiedenen Programmiersprachen zu generieren. Unter Angabe der Programmiersprache und einer Beschreibung der Funktion, die geschrieben werden soll, liefert ChatGPT einen Lösungsvorschlag, welcher zumindest als Ausgangspunkt für die eigentliche Entwicklung hilfreich ist.
  • Unterstützung bei der Code-Optimierung: Für die Optimierung von bestehendem Code hinsichtlich der Leistung, der Länge oder der Kommentierung, kann die KI eine große Hilfe sein. Dafür genügt die Angabe des Code-Abschnitts mit der gewünschten Art der Optimierung als Prompt, um in kürzester Zeit Alternativen oder Ergänzungen von ChatGPT zu erhalten.
  • Automatisierung von Testfällen: Der Chatbot kann genutzt werden, um Test-Code für automatisierte Tests zu generieren. Durch Eingabe einer Funktion mit der Instruktion, einen automatischen Test für die Funktion zu schreiben, kann gegebenenfalls viel Zeit eingespart werden. Dadurch wird die Durchführung von Tests effizienter.
  • Dokumentation: Zu einem neu geschrieben Code-Abschnitt kann ChatGPT automatisch eine Dokumentation erstellen, indem es den Code analysiert und die relevanten Informationen extrahiert. Das funktioniert besonders gut, wenn die KI den Kontext der Funktionen kennt.
  • Übersetzung von Code: Sollte es nötig oder hilfreich sein, Code von einer Programmiersprache in eine andere zu übersetzen, funktioniert das analog zu natürlichen Sprachen. Wenn zum Beispiel eine in Java geschriebene Funktion in C# benötigt wird, kann ChatGPT per Code-Eingabe und Prompt zur Übersetzung diese dann durchführen.

Die Nutzung von ChatGPT ist mit Hilfe von GitHub Copilot bereits direkt in der Entwicklungsumgebung möglich.

Zukünftige Potenziale

ChatGPT ist die erste KI, die ein sehr breites Spektrum an Aufgaben bearbeiten kann und die der breiten Masse zur Verfügung gestellt wurde. Es bietet damit die Chance, sich der zukünftigen Nutzung von KI direkt in der Praxis anzunähern – und schon in näherer Zukunft KI ins eigene Unternehmen zu integrieren. Letztlich ist ChatGPT ein Werkzeug, bei dem der Anwendungsbereich nicht klar definiert ist, sodass sich eine Vielzahl an Nutzungsmöglichkeiten ergibt. Was wäre also zeitnah realisierbar?

Anwendungshilfe

Fragen zur Bedienung, zum Beispiel von Office-Produkten, kann ChatGPT leicht beantworten, da es in der Vielzahl an Daten, mit dem das Modell trainiert wurde, etliche Webseiten gibt, die sich mit Fragen zur Bedienung von Word, Excel und Co. beschäftigen.

Es ist also möglich, der KI die Struktur einer Software mit den einzelnen Menüs, Funktionen und Einstellmöglichkeiten beizubringen. Alles, was es dazu braucht, sind jede Menge Frage-Antwort-Paare, die jeden einzelnen Punkt behandeln und mit denen ein entsprechendes Modell trainiert wird. Wie viele Datensätze hier benötigt werden und ob die Funktionen mehr als einmal behandelt werden müssen, kann an dieser Stelle nicht beantwortet werden. Auch wie gut ein entsprechendes Modell funktionieren würde, kann wohl nur durch einen Versuch ermittelt werden. Eine entsprechende Datengrundlage kann auch als Basis für das Training späterer und leistungsstärkerer Modelle herangezogen werden. Ein solches Datenset kann man sich automatisiert zusammenstellen lassen – mit Hilfe der Dokumentation und der KI selbst.

Support

Um von einer Anwendungshilfe überzugehen zu einem KI-gestützten Support-Chat, fehlen wahrscheinlich nur die modellspezifischen Informationen. Es wäre wohl erforderlich, je Kunde entsprechende Frage-Antwort-Paare zusammenzustellen, um so das entsprechende Datenmodell der KI kenntlich zu machen. Dabei wäre darauf zu achten, dass keine unter Datenschutz stehenden Informationen gefährdet und entsprechende Erklärungen des Modells nur anonymisiert übergeben werden dürfen. Prinzipiell sollte es aber möglich sein, ein zuvor auf die Anwendung trainiertes Modell dahingehend zu modifizieren, dass es kundenspezifische Fragen beantworten kann. Die Zusammenstellung der dafür notwendigen Datensets dürfte allerdings deutlich aufwändiger sein.

Aufbau von Datenmodellen

Ein trainiertes Modell könnte schnell in der Lage sein, aus bekannten Tabellen und Feldern (sofern diese sprechende Namen aufweisen) automatisch eine Dimension-Measure-Matrix aufzubauen, um nur ein Beispiel zu nennen. Im Optimalfall generiert es sogar die dazugehörigen Views für die Dimensionen und Fakten. Eine grundsätzliche Vorstellung von Datenmodellen hat ChatGPT bereits gelernt. Was es bräuchte, wäre weiteres Training dahingehend, wie ein Modell aufgebaut wird und wie die Views erstellt werden. Auch wenn die angebotene Lösung nicht perfekt wäre, wäre sie zumindest eine Grundlage und schafft dadurch eine deutliche Arbeitserleichterung bei der Datenmodellierung für Business-Intelligence-Anwendungen.

Übersetzung in SQL und MDX

Die Übersetzung von natürlicher Sprache in SQL oder MDX ist bereits heute schon möglich. Allerdings enthalten die Antworten oftmals noch Fehler, weshalb sich die Nutzung von ChatGPT hier nur eignet, wenn eigene Programmier-Sprachkenntnisse vorhanden sind, um diese Fehler zu finden und zu korrigieren.

Zukünftig könnte eine entsprechende Sprach-Umwandlung aber auch in Anwendungen integriert werden, sodass Fragen zu bestimmten Daten per Chat gestellt und beantwortet werden können. ChatGPT würde dabei die Übersetzung in die benötigte Sprache übernehmen und die erzeugte Anfrage würde an die Datenbank gesendet werden, welche die gewünschte Antwort liefert. Hierzu wäre eine annähernd fehlerfreie Übersetzung seitens ChatGPT erforderlich, was nur durch intensives Training des Modells erreicht werden könnte.

Fazit zu ChatGPT in der Praxis

ChatGPT bietet dem Nutzer einen ersten Eindruck davon, was zukünftig mit Künstlicher Intelligenz möglich sein wird, und kann heute bereits für verschiedenste Anwendungsfälle eingesetzt werden. Durch den Variantenreichtum der Nutzung kann der Chatbot sowohl vom normalen Anwender direkt genutzt werden als auch von technisch affinen Personen und Unternehmen adaptiert, integriert und weiter trainiert werden.

Während bei der Verwendung des Chats insbesondere die Gestaltung der Prompts große Auswirkungen auf die gewünschte Ausgabe hat, kann im Playground oder per API die Antwort durch Parameter auf tieferer Ebene beeinflusst werden. Es gibt bereits einige direkte Nutzungsmöglichkeiten, die in verschiedenen Bereichen hilfreich sind.

Für die Integration in eigene Programme und Software-Anwendungen besteht die größte Herausforderung darin, die benötigten Datensets zu sammeln und das Modell eigens zu trainieren. Das Ergebnis eines solchen Finetunings in Eigenregie ist ungewiss: der vom Modell generierte Output muss immer kritisch hinterfragt werden. Die KI trägt auch falsche Sachverhalte sehr eloquent und glaubhaft vor, da sie nur auf Basis der Trainingsdaten lernt und nicht zwischen richtig und falsch unterscheiden kann. Daher ist es wichtig, einen adäquaten Umgang mit der neuen Technologie zu erlernen, um für die Zukunft gut gerüstet zu sein.