Chat GPT und AWS: Eine ehrliche Einschätzung der KI-Unterstützung für Kundenprojekte

Die Idee

Die ganze Welt ist fasziniert von Chat GPT, und natürlich haben auch wir bei PROTOS ausgiebig darüber diskutiert. Je mehr wir darüber sprachen, desto neugieriger wurden wir und es wurde uns klar, dass wir herausfinden wollten, inwiefern wir Chat GPT in unseren täglichen Arbeitsablauf integrieren können. Ist Chat GPT ein echter Cloud Experte?
Bei unserem letzten Teamevent haben wir uns sofort an die Arbeit gemacht. Die Idee dahinter? Wir nehmen eine echte Kundenanfrage und geben Chat GPT die Aufgaben, die wir normalerweise nach Erhalt einer ersten Kundenanfrage abarbeiten.

Wir haben uns dabei folgende Frage gestellt:

Wie weit können wir KI nutzen, um ein reales Kundenprojekt in AWS zu lösen?

Das Projekt:

Wir haben eine recht vage Kundenanfrage per E-Mail erhalten, in der der Kunde mehrere AWS-Services anfordert. Insbesondere benötigt der Kunde eine virtuelle Maschine auf AWS mit bestimmten Hardware-Spezifikationen sowie eine MariaDB-Datenbank. Die E-Mail enthielt keine Beschreibung der bestehenden Infrastruktur und ließ uns im Unklaren darüber, wie kritisch die neuen AWS-Services im Hinblick auf Verfügbarkeit, Sicherheit usw. sein werden.

Der Arbeitsablauf:

Wie weit entspricht die KI-Antwort auf die Kundenanfrage den Best Practices von AWS:

  • Aufforderung an ChatGPT, eine Antwort auf die Anfrage des Kunden zu geben
  • Die KI hat eine relativ aussagekräftige Antwort in Form einer E-Mail gegeben, die leicht für die weitere Kommunikation mit dem Kunden verwendet werden kann. Es wurden keine Annahmen über eine bestehende Infrastruktur getroffen. Die KI hat einfach die Anfrage gelöst und eine Spezifikation für eine EC2-Instanz sowie einen RDS mit MariaDB bereitgestellt.
  • Die KI hat sogar die Schritte für eine Implementierung der gegebenen Infrastruktur bereitgestellt, wie Design, Konfiguration, Migration und Testen.
  • Nach dem Testen ist die KI in der Lage, weitere Dienste hinzuzufügen: Wir haben ein automatisches Failover für die EC2-Instanz angefordert, und es schlug die Verwendung eines ELB zusammen mit Route53 vor.
  • Die KI ist gut in der Lage, auf eine anfängliche Kundenanfrage zu reagieren, wenn diese nicht explizit spezifisch ist oder sich auf Technologien bezieht, die der KI unbekannt sind.

Wie gut kann die KI ihre ursprüngliche Antwort in Code übersetzen?

Hier kann es knifflig werden: ChatGPT hat nach 2021 keine Daten mehr. Daher war ein Teil der Syntax, die es für Terraform bereitgestellt hat, nicht mehr gültig. Chat GPT war jedoch klug genug, eine gültige VPC-Konfiguration mit öffentlichen und privaten Subnetzen sowie den entsprechenden Sicherheitsgruppen bereitzustellen. Interessanterweise ist die Software davon ausgegangen, dass die EC2-Instanz als Webserver dienen wird, da die Anforderung darin bestand, CentOS darauf laufen zu lassen.

Außerdem hat ChatGPT offenbar den RDS vergessen. Folglich ist eine Sicherheitsüberprüfung von entscheidender Bedeutung, wenn ChatGPT zur Erstellung einer AWS-Infrastruktur verwendet wird.

Mit den entsprechenden Aufforderungen („add rds“, „use region eu-central“, etc.) konnte es eine Infrastruktur schaffen, die die ursprünglichen Kundenwünsche abdeckte. Allerdings wies die Antwort syntaktische Fehler auf, da Terraform seit 2021 mehrere Updates vorgenommen hat.

Es wurde sogar ein Kostenvoranschlag erstellt, der als sehr willkürlicher Wert dienen könnte (Abweichung von 40-50%).

Fazit

Wie weit können wir KI nutzen, um ein reales Kundenprojekt in AWS zu lösen?

Trotz einiger Schwachstellen von Chat GPT konnten wir in weniger als einer Stunde Arbeit eine solide Grundlage für die Beantwortung der Kundenanfrage schaffen. Die größten Probleme waren das Debugging des von der KI generierten Codes und die Entwicklung eines Verständnisses dafür, wann die KI sich nicht selbst debuggen kann und ein menschlicher Developer sich mehr auf konventionelle Debugging-/Forschungstechniken verlassen sollte.

Für Developer bedeutet dies, dass Chat GPT ein nützliches Werkzeug sein kann, um bestimmte Aufgaben im Zusammenhang mit Kundenanfragen in der Cloud zu automatisieren. Es kann helfen, schnell eine grundlegende Infrastruktur bereitzustellen und Empfehlungen zu generieren. Developer müssen jedoch darauf achten, dass der von der KI generierte Code möglicherweise Fehler enthält und nicht immer den aktuellen Best Practices entspricht. Daher ist es wichtig, den generierten Code sorgfältig zu überprüfen, anzupassen und zu debuggen. Menschliche Developer bleiben unverzichtbar, um die Arbeit der KI zu validieren, komplexe Szenarien zu bewältigen und eine qualitativ hochwertige Lösung für Kundenprojekte in AWS zu gewährleisten.