Rapid Prototyping mit LLM: Erkenntnisse aus einem Content-Migrations-Tool#
In diesem Beitrag sollen Beobachtungen aus einem experimentellen Projekt zur LLM-gestützten Content-Migration dokumentiert werden. Das Projekt diente primär dazu zu testen, ob eine bestimmte Tool-Idee in der Praxis funktionieren kann – ein klassisches Rapid-Prototyping-Szenario.
Ausgangssituation#
Im Kontext einer anstehenden Plone-zu-TYPO3-Migration stellte sich die Frage, wie dieser Prozess durch Werkzeuge unterstützt werden könnte. Dabei ging es weniger um eine sofortige Produktivlösung, sondern um eine Exploration der Machbarkeit: Lässt sich ein Tool entwickeln, das JSON-Exporte aus Plone verarbeitet, die Inhalte durch LLM-Analyse verbessert und in verschiedenen Formaten exportiert?
Das entwickelte Tool verarbeitet komplette Sub-Websites (typischerweise einige KB bis wenige MB) als strukturierte JSON-Dateien. Eine zweistufige LLM-Verarbeitung analysiert zunächst die Content-Struktur, schlägt Verbesserungsmöglichkeiten vor und wendet dann dieses Konzept auf die bestehenden Inhalte an. Die Verarbeitung erfolgt ausschließlich im Speicher der Session.
Technische Umsetzung#
Die Architektur basierte auf bereits bekannten Technologien: Python, Gradio für die Web-Oberfläche, eine OpenAI-kompatible API für die LLM-Integration und Docker für das Deployment. Diese Wahl ermöglichte eine schnelle Umsetzung, da auf Vorerfahrungen aufgebaut werden konnte. Die Anwendung wurde in drei Module strukturiert – eine Organisation, die von Anfang an geplant war und sich als praktikabel erwies.
Ein zentrales Lernfeld war das JSON-Handling bei großen, strukturierten Importen. Beispielsweise umfasst eine Sub-Website zum Thema WLAN 85 Seiten mit verschiedenen Content-Typen (Dokumente, FAQ-Items, Dateien, Bilder) und wird als 12-MB-JSON-Datei verarbeitet. Für solche Datenmengen erwies sich ein LLM-Kontext von 256.000 Token als notwendig.
Entwicklungsprozess#
Der Entwicklungsablauf folgte einem etablierten Muster: Eine detaillierte Spezifikation – sowohl funktional als auch technisch – wurde zunächst ausgearbeitet und dann am Stück an das LLM übergeben. Nicht-funktionale Anforderungen wurden direkt in dieser Spezifikation berücksichtigt. Das KISS-Prinzip wurde bereits bei der Spezifikationserstellung beachtet, was zu fokussiertem Code führte.
Die gesamte Entwicklung benötigte etwa 20 Minuten für die Spezifikation und eine Stunde für die Implementierung, verteilt auf drei Iterationen: Die erste Code-Umsetzung, Anpassungen für verschiedene Export-Formate (Markdown, ZIP, Word) und kleinere UI-Verfeinerungen. Die Dokumentation wurde dabei automatisch aus Spezifikation und Code generiert.
Aktueller Status und Ausblick#
Das Tool befindet sich derzeit in einer Evaluierungsphase durch mehrere Teams. Es dient der Vorbereitung der Migration und hilft bei der Bearbeitung der Frage, wie diese Migration konkret unterstützt werden kann. Die Rückmeldungen aus dieser Phase werden für eine mögliche nächste Entwicklungsstufe gesammelt.
Die Tatsache, dass aus einem einstündigen Prototyping-Experiment ein Tool entstand, das nun von verschiedenen Gruppen evaluiert wird, illustriert eine mögliche Stärke des LLM-gestützten Rapid Prototyping: Ideen lassen sich schnell in funktionsfähige Demonstratoren überführen, die dann als Grundlage für fundierte Entscheidungen dienen können.
Dieser Beitrag ist Teil einer Serie, die methodische Erkenntnisse aus verschiedenen LLM-gestützten Entwicklungsprojekten dokumentiert.