Kann ich mit ChatGPT Plus meine Produktivität im Engineering und Backoffice steigern? Mein Test zeigt: eher nicht. Wer akkurate Ergebnisse benötigt, kann kaum auf ChatGPT setzen. Ich zeige das anhand der Übersetzung einer Excel-Tapete.
Inhalt
Das Mini-Problem: Excel-Tapete übersetzen
Um das Anliegen zu simulieren, habe ich meine Projekt-Historie verwendet: Eine wunderbar Ingenieurs-akribische Excel-Tapete, die auf Englisch übersetzt werden muss. „Klasse“, dachte ich, „das sollte für ein LLM Sprachmodell ein Klacks sein!“ Bis ich die erste Antwort von ChatGPT las:
Ok, geschenkt. Mein erster Prompt war unpräzise:
Ich ahnte Böses. ChatGPT wollte mir nicht die englische Übersetzung ausgeben. Stattdessen:
Nach weiterem verbalen Debuggen gestandt ChatGPT:
Also Sackgasse.
Der vermaledeite Zeilenumbruch!
Klartext übersetzen? Kein Problem. Tabellen mit Sonderzeichen? Katastrophe. Bei Datenmigrationen sind Sonderzeichen ein bekanntes Übel. Hier ein Semikolon, da ein Zeilenumbruch ‚\n‘, dort ein Pipe ‚|‘ (der Teufel!) und schon sind ganze Datensätze verhagelt. Meine Excel-Tapete war voll davon. So sah eine typische Zeile aus:
Zuerst brachte ich ChatGPT bei, wie es mit den Sonderzeichen umgehen sollte. Damit gab ChatGPT endlich ein „Ergebnis“ aus:
Das ist in etwa 40% akkurat. In den letzten vier Spalten fehlte Text. Viele der Zeilen konnte ChatGPT nicht auslesen. Vor allem aber hatte ChatGPT wild halluziniert. Porsche wurde zu Tesla, Bosch zu Toyota oder Automotive zu Aerospace. Es wirkte fast, als wolle ChatGPT die Tabelle ‚aufwerten‘ – leider ohne Rücksprache mit mir.
Ein zweites Problem war, dass mir ChatGPT die englische Übersetzung nicht als Excel-Tapete ausgeben wollte. Ich bekam sowas:
bis mir ChatGPT nach einigem verbalen Debugging sagte:
Ja, dumm von mir. Schlecht instruiert. Der typische Anfängerfehler bei Pointer-Programmierung, wenn der Pointer auf die falsche Speicherzelle zeigt. Da ChatGPT Python, Panda & Co. einsetzt, war mir klar, wie ich „prompten“ musste.
Prompts erinnern an Mikromanagement
Mit einigem verbalen Debugging entstand folgender Prompt:
Übersetze die angefügte Tabelle von Deutsch auf Englisch. Gehe wie folgt vor:
1. Ersetze Sonderzeichen und Ausdrücke durch geeignete Platzhalter, z. B. „-“ durch $MINUS, „\n“ oder durch $NEWLINE
2. Lade die Tabelle in einen ersten Dataframe "dt". Achte darauf, dass jede Zelle in Anführungsstriche „“ gewrappt wird
3. Erstelle einen zweiten Dataframe "en" mit der gleichen Dimension wie der Dataframe "dt"
4. Lese den Inhalt der Zelle A1 des Dataframe "dt" aus und speichere sie in einer Variablen "translate"
5. Übersetze den Inhalt der Variable "translate" von Deutsch auf Englisch
6. Schreibe den übersetzten Inhalt von "translate" in die Zelle A1 des Dataframe "en"
7. Wiederholte die Schritte 1 bis 6 analog für alle nicht-leeren Zellen, beginnend mit der Zelle A2 im Dataframe „dt“
8. Ersetze dann im Dataframe „en“ alle Platzhalter laut Schritt 1 wieder zurück zu den entsprechenden Sonderzeichen/Ausdrücken
9. Stelle das Ergebnis als Klartext-Tabelle bereit
Halluziniere nicht. Erfinde keine Daten. Korrekte Übersetzung hat oberste Priorität.
Wenige Kaffee später stand in der Ausgabe:
Das entsprach einer Güte von etwa 45%. Wieder unvollständig. Vor allem aber weiterhin halluziniert. Komischerweise fehlten auch ganze Zeilen. Dazu ChatGPT:
Große Datenmengen sind der Zweck von LLM, oder? Daraufhin hat mir ChatGPT diesen Satz um die Ohren gehauen:
Das sagen Leute, wenn sie keine Ahnung haben; dies aber durch hohe Worte kaschieren wollen…
Taugt das für Engineering & Projekte?
Insgesamt ernüchternd und schade. In Engineering-Projekten haben wir unzählig viele solcher Daten, die ähnlich aussehen: Log-Dateien, Excel-Tapeten, DOORS, Rhapsody, Enterprise Architect, UMLet, APIS IQ, und und und. Klar, mit Datenbereinigung, Ausnahmebehandlungen und RegEx-Parsen bekommt man das hin. Diesen Aufwand wollte ich mit ChatGPT reduzieren. Dazu ChatGPT selbst:
Akzeptabel ist das nicht für Engineering oder anspruchsvollere Büroarbeit wie etwa Buchführung. Das Tool muss akkurate Ergebnisse liefern. Ich stelle mir vor, wie einfach ein Sicherheitsmechanismus entfällt. Das würde sicherlich noch auffallen. Was aber, wenn nur subtile Änderungen erfolgen, z. B. „16V“ zu „18V“ verfälscht werden? So ein unscheinbarer „Bitkipper“ sticht nicht unbedingt ins Auge. Die Folgen können aber katastrophal sein. Es sind schon Raumsonden auf dem Mars eingeschlagen, weil es einen Dokumentationsfehler der Längeneinheiten gab.[1]
Wer akkurate Ergebnisse benötigt, wird derzeit kaum mit ChatGPT arbeiten können.
Für solche nicht-funktionalen Anforderungen braucht es spezialisierte „Experten-KI“.
Eine weitere Fehlerquelle bin natürlich ich selbst. Ich lerne noch, was gute von schlechten Prompts unterscheidet und was ChatGPT verdauen kann.
Fazit
Mein Testlauf zeigt: Für die Datenverarbeitung ist ChatGPT noch ungeeignet, wenn es auf hohe Güte ankommt. Vermutlich braucht es eine ‚Experten-KI‘, die solche Aufgaben zuverlässig lösen kann. Wie sind Ihre Erfahrungen mit ChatGPT? Hätte ich meinen Prompt anders gestalten sollen? Glauben Sie, dass spezialisierte KI der nächste Schritt ist? Ich bin gespannt auf Ihre Meinungen!
Ihr, Nico Litschke
Endnoten
- ↑Ein bekanntes Beispiel für die Folgen subtiler Fehler ist die Mars Climate Orbiter-Mission, vgl. Wikipedia (2024). Mars Climate Orbiter. Abgerufen am 18.11.2024: https://en.wikipedia.org/wiki/Mars_Climate_Orbiter
Titelbild: generiert mit DALL-E von OpenAI