Hilfreich um jeden Preis - ChatGPT und das Ende des Software­entwicklers

Johannes Stiehler
Technologie
#LargeLanguageModels
#TextKI
#ChatGPT
Cover Image for Hilfreich um jeden Preis - ChatGPT und das Ende des Software­entwicklers

Alle Welt hat den Kopf verloren durch den Launch von ChatGPT. Das verstehe ich, die Mächtigkeit dieses neuen LLM ist beeindruckend und hat besonders für Fachfremde etwas Magisches weil Menschliches.

Unausweichlich gibt es eine Schwemme von Posts und Artikeln zu ChatGPT. Zum größten Teil - wie bei AI-Launches üblich - uneingeschränktes Beklatschen des "neuen Zeitalters" oder düstere Warnungen vor dem Ende einer oder mehrerer Berufsgruppen.

Bei ChatGPT sind diesmal nicht die Stock-Fotographen dran (die hat Dall-E ja schon erledigt), sondern Softwareentwickler.

Wer braucht die schon noch, wenn ChatGPT genauso gewandt Programme schreibt wie Gedichte?

Die Annahme, aktuelle LLMs würden eine Gefahr für die Zukunft von Softwareentwicklern darstellen, klingt für mich derart haltlos, dass ich leider den vielen ChatGPT-Artikeln noch einen hinzufügen muss.

Zuerst mal: Softwareentwicklung besteht erstaunlicherweise nicht darin, Codeschnipsel auszuwerfen, die einzelne übersichtliche Aufgaben erledigen ("Sortier mir eine Liste alphabetisch"), sondern z.B. in der Kombination vieler solcher Codeteile in sinnvolle Module und Service-Schnittstellen. Mir ist niemand bekannt, der überhaupt versucht, einer Konversations-AI diese Aufgabe vorzulegen.

Bleibt also noch die Frage, inwieweit ChatGPT oder seine Vorgänger (auch GPT-3 kann schon Code erzeugen) und Nachfolger (Sparrow wird das sicher auch können) einen Softwareentwickler wenigstens in seiner täglichen Arbeit entlasten und beschleunigen können.

Auf den ersten Blick und für simple Beispiele scheint das tatsächlich in gewissen Maße zu funktionieren:

Image

Hier hilft auch die Tatsache, dass man mit ChatGPT fortlaufende Konversationen führen kann, bei der Verfeinerung der Lösung:

Image

Rufen wir uns an dieser Stelle in Erinnerung, dass ChatGPT die Essenz aus unzähligen Trainingselementen (darunter auch viele solcher Softwareschnipsel) bildet und für jeden Input die wahrscheinlichste "Fortführung" auf Basis dieser Trainingselemente ausgibt. Zu oben genannter Javascript-Frage funktioniert das auch sehr gut.

Aber ChatGPT ist eben nur darauf trainiert, plausiblen und wahrscheinlichen Output zu generieren, nicht "wahren". In seiner Mission, dem Nutzer zu helfen, kann es sich nicht mit solchen Banalitäten wie Korrektheit aufhalten. Es zählt allein die Wahrscheinlichkeit der einzelnen Tokens.

Wenn wir uns ein bisschen von den Problemen entfernen, für die vermutlich große Mengen Beispiele im Training enthalten waren, wird die Luft dünn und die Antwort auch:

Image

Diese Antwort ist aus zwei Gründen falsch:

  1. ARRAY_TO_STRING akzeptiert keine integer-Arrays, die vorgeschlagene Lösung ist also kein gültiges BigQuery SQL.
  2. Selbst wenn sie funktionierte, würde sie kein Array erzeugen, wie gefordert, sondern einen einzelnen String-Wert (indem die Array-Elemente mit einem Delimiter verbunden werden).

Offensichtlich wurde die Frage korrekt interpretiert, aber in ihrem Eifer zu helfen, hat die AI lieber Lügen erzeugt, als nichts Plausibles zu antworten.

Versuchen wir, die Frage noch etwas zu präzisieren, weil das mit dem Javascript-Problem so gut funktioniert hat:

Image

Ich werde die Leser nicht einer Erklärung langweilen, was dieses Code-Schnipsel wirklich tut (im Gegensatz zum obigen ist es valides Big Query SQL). Auf jeden Fall tut es nicht das Richtige, sondern etwas ziemlich Nutzloses, das aber viele Ressourcen verbraucht.

ChatGPT besteht im Laufe der Konversation fest darauf, falsche Lösungen zu produzieren, um hilfreich zu sein. Ein bisschen erinnert mich das an Leute, die man nach dem Weg fragt und die sich nicht trauen, ihre Ortsunkenntnis einzugestehen. Stattdessen schicken sie einen in irgendeine Richtung. Wäre ja peinlich, wenn sie zugeben müssten, dass sie sich nicht auskennen.

Hier also mein Fazit, wie so oft ein anderes als das vieler anderer "Experten": Nein, ChatGPT wird nicht Softwareentwickler oder auch nur Junior Programmer ersetzen. Eventuell erspart es einem Entry-Level-Entwickler den einen oder anderen Ausflug zu Stackoverflow. Aber selbst dann muss man sich fragen, ob das Ausprobieren und Aussortieren solcher falschen Lösungen im Durchschnitt nicht mehr Zeit kostet als die richtigen Antworten einsparen.

Johannes Stiehler
CO-Founder NEOMO GmbH
Johannes hat während seiner gesamten Laufbahn an Softwarelösungen gearbeitet, die Textinformationen verarbeiten, anreichern und kontextabhängig anzeigen.

Wir haben noch mehr zu bieten!

Unseren Newsletter abonnieren

Wenn Sie sich vom Twitter- und LinkedIn-Wahnsinn abkoppeln, aber trotzdem unsere Inhalte lesen möchten, freuen wir uns und haben genau das richtige für Sie: Unser Newsletter hält Sie über alles Wissenswerte auf dem Laufenden.

Bitte benutzen Sie das untenstehende Formular, um ihn zu abonnieren.

NEOMO verpflichtet sich, Ihre Privatsphäre zu schützen und zu respektieren und Ihre persönlichen Daten nur dazu verwenden, Ihr Konto zu verwalten und die von Ihnen angeforderten Informationen bereitzustellen. Um Ihnen die gewünschten Inhalte zur Verfügung stellen zu können, müssen wir Ihre personenbezogenen Daten speichern und verarbeiten.

Folgen Sie uns für Einblicke, Ausblicke und Durchblicke.

Wann immer neue Inhalte verfügbar sind oder etwas Bemerkenswertes in der Branche passiert - wir halten Sie auf dem Laufenden.

Folgen Sie uns auf LinkedIn und Twitter, um Neuigkeiten zu erfahren, und auf YouTube für bewegte Bilder.

Teilen, wenn's gefällt

Wenn Ihnen unser Beitrag gefällt, helfen Sie uns bitte, ihn zu verteilen, indem Sie Ihr eigenes Netzwerk aktivieren.

Weitere Blogartikel

Image

"Digitale Wissensbissen": Die Zukunft der Datenanalyse – Ein Gespräch mit Christian Schömmer

Data Warehouse, Data Lake, Data Lakehouse - die Begriffe eskalieren stetig. Aber was brauche ich wirklich für welchen Zweck? Reicht meine alte (und teure) Datenbank oder würde ein "Data Lakehouse" mein Geschäft so richtig weiterbringen? Gerade in der Kombination mit Generativer KI sind die Möglichkeiten so vielfältig wie verwirrend. Gemeinsam mit Christian Schömmer setzen wir uns vors Datenhaus am See und gehen der Sache auf den Grund.

Image

"Digitale Wissensbissen": Generative KI in geschäftskritischen Prozessen

Nach der etwas kritischen Sicht auf generative KI in der letzten Episode geht es diesmal um den konkreten Einsatz: Kann man generative KI schon in Geschäftsprozessen integrieren und wenn ja, wie geht das genau. Es stellt sich heraus: Wenn man zwei oder drei Grundregeln beachtet, treten die meisten der Probleme in den Hintergrund und die coolen Möglichkeiten generative KI kommen relativ risikofrei zur Geltung. Wir gehen sehr konkret darauf ein, wie wir eine Compliance-Anwendung gebaut haben, die maximal von Large Language Models profitiert, ohne auf menschliche Kontrolle und "Accountability" zu verzichten.

Image

Bleeding Edge - Fluch oder Segen?

Wir setzen auf modernste Technologien, um Unternehmen durch innovative Lösungen voranzubringen. Daher gehen wir in Gesprächen mit Kunden und Partnern oder unseren Webinaren immer wieder darauf ein, Unternehmen die Vorteile und Möglichkeiten moderner Technologien nahezubringen. Aber auch für uns selbst kommt KI zum Einsatz: Durch die Automatisierung von Ausschreibungsprozessen konnten wir wertvolle Ressourcen sparen und Effizienz steigern.