Werkstattbericht#

Der Workshop#

Ende Februar 2025 fand an der TU Darmstadt der Workshop “KI Konkret” statt Post auf LinkedIn.

Im Rahmen dieser Veranstaltung des ZKI Arbeitskreises Strategie und Organisation wurde auch diskutiert, ob die bisherigen Brainstormingformate zur Sammlung von Ideen und Meinungen in Form von analogen oder digitalen Zettelsammlungen weiterentwickelt werden könnten. Zudem wurde ein größerer Bedarf deutlich, die bestehenden KI-Aktivitäten, insbesondere die bereits angebotenen Dienste und Dienstleistungen im Bereich generativer KI, zusammenzutragen und zu kartieren.

Auf der Rückfahrt wurde dann mit einem Aufwand von etwa zwei Stunden ein klickbarer Prototyp mittels einer LLM implementiert. Prototyp im Browser starten

Interessant fand ich dabei die Fragestellung, wie viel Zeit man mittels KI für eine vollständige Umsetzung benötigen würde und ob diese Komplexität der Anwendung bereits mit LLM-Coding erreichbar ist.

Die Antwort auf diese Frage soll in diesem Werkstattbericht beleuchtet werden.

Gleich vorweg: Sie besuchen diese Website und das Vorhaben konnte erfolgreich umgesetzt werden. Die Anwendung funktioniert am Ende so wie gedacht. Hierfür war jedoch mehr eigene Arbeit notwendig, als anfänglich erhofft. Ohne LLMs wäre eine Umsetzung jedoch auf keinen Fall möglich gewesen.

Zahlen zu den Ergebnissen:#

DateiendungAnzahl DateienAnzahl Zeilen
Python298.542
HTML156.249
CSS41.660
Javascript4716
Konfigurationsdateien9365
GESAMT6117.532

Angaben zum Zeiteinsatz:#

AufgabeZeiteinsatz [h]
Abstimmung der Anforderungen1
Diskussion zur technischen Architektur1
Testumsetzung des technischen Gesamtansatzes1
Datenbankschemata1
OpenAPI - CRUD2
Crawler und Webseiteninterpretation2
Template-System und statischer Site-Generator2
LLM-Client2
Erarbeitung Designkonzept und UI1
Umsetzung und Problembehebung UI2
Prompts und Steckbriefableitung2
Admin-Redaktionsbereich, Workflows2
Übersichtsseite und Schlagwort-Wolke zu Projekten2
Diskussion zu Sicherheitsaspekten des Deployments1
CORS, CSRF1
Deployment 2 nginx-Konfigurationen, Datenbank, Uvicorn3
Docker, Docker compose, API-Routing und Fehlerbehebungen2
Einbindung Certbot2
Netzwerkkonfiguration, Ports, Domainfilter, Rate-Limits1
Planung und Umsetzung Dokumentationslösung1
SUMME32

Die Abschätzung der LLMs zum möglichen Umsetzungsaufwand durch eine klassische Agentur lag bei 180-200 Stunden.

Was waren die größten Hürden:#

  • Das Projekt ist für heutige Large Language Models (LLMs) zu umfangreich, da immer nur ein kleiner Teil des gesamten Codes bearbeitet werden kann. Der inhaltliche Kontext, der Zusammenhang auf Dateiebene, das Zusammenspiel der eingesetzten Technologien und der grundlegende Aufbau der Anwendung müssen dabei von der entwickelnden Person vollständig im Kopf behalten werden. Dies bedeutet auch, dass ohne zumindest grundlegende Kenntnisse von aktuellen Technologien und deren Zusammenhängen solche Entwicklungen nicht möglich sind.

  • Die LLMs erzeugen nicht nur häufig fehlerhaften Code, sondern, um es mit menschlichen Begriffen auszudrücken, schummeln, versuchen sich um schwierige Aufgaben zu drücken, nehmen Abkürzungen, die niemals funktionieren können, oder faken einfach einzelne Teile des Codes, damit es auf den ersten Blick als korrekte Lösung erscheint. Diese Abkürzungen sind nicht immer sofort zu erkennen, wenn der Code komplexer wird, und so muss jede Ausgabe der LLMs immer genau geprüft werden.

  • Die LLMs verrennen sich häufig in falsche Fährten bzw. Lösungen, die entweder zu komplex für die LLMs sind oder von den LLMs nicht zu einer lauffähigen Gesamtlösung abgeschlossen werden können. In diesen Fällen muss der gesamte Teilansatz wieder zurückabgewickelt werden, um einen anderen Ansatz zu implementieren.

  • Die LLMs neigen dazu, bei zu schwierigen Aufgaben Tricklösungen zu implementieren, z.B. mit Mock-Daten, wodurch das Gesamtsystem kurzfristig lauffähig scheinen kann.

  • Teilweise wählen LLMs Technologien zur Problembewältigung, die unnötig komplex, für das spezifische Problem nicht geeignet oder schlicht veraltet sind. Erkennt man diese ungünstige Technologiewahl zur Problemlösung nicht, wird das Programmiervorhaben nicht erfolgreich sein.

  • Die Bereitstellung der Anwendung auf Servern stellt einen großen Zusatzaufwand dar, bei dem die LLMs nur bedingt unterstützen können.

Welche LLMs wurden für das Projekt eingesetzt:#

Anthropic Claude Sonnet 3.7 und 4.0 OpenAi GPT-4o und GPT-4o mini Mistral Large2 GLM-4-0414 Model Series Cohere Command-R