AI-gestützte Transformation
14.05.2025, 08:29 Uhr
ArtificialCast: Typensichere Transformationen mittels Inferenz
Die Bibliothek ArtificialCast wandelt Typen auf Basis von Inferenz und KI um.

(Quelle: EMGenie)
Das GitHub-Projekt Zorokee/ArtificialCast bietet eine neue Methode zur typensicheren Transformation von Objekten im .NET-Umfeld an. Das Tool nutzt die Leistungsfähigkeit großer Sprachmodelle (LLM), um komplexe Typumwandlungen durchzuführen, die üblicherweise viel manuellen Aufwand erfordern würden. Dies bedeutet, dass Entwickler mit einer minimalen Konfiguration arbeiten können, indem sie einfach ihre Typen definieren und sich zurücklehnen können, während das Tool die Umwandlungen übernimmt.
Die Grundidee hinter ArtificialCast ist es, den Prozess der Typumwandlung zu automatisieren. Entwickler müssen sich nicht mehr mit dem oft fehleranfälligen und zeitaufwendigen Mapping zwischen verschiedenen Typen auseinandersetzen. Stattdessen kann der Nutzer seine Datentypen einfach definieren, und die dahinter stehende Logik übernimmt den Rest. Die Software ist so konzipiert, dass sie bidirektionale Typumwandlungen ermöglicht, wobei die Inferenz von JSON-Schemas eine zentrale Rolle spielt.
Ein grundlegendes Beispiel für die Verwendung zeigt, wie ein Objekt vom Typ LegacyUserDTO in einen NewUserModel umgewandelt werden kann. Hierbei wird eine JSON-Schema-Generierung durchgeführt, gefolgt von einem Aufruf eines lokal installierten LLM, um die Transformation durchzuführen. Im Beispiel wird der Code für die Umwandlung wie folgt dargestellt:
var result = await AC<LegacyUserDTO, NewUserModel>(legacyUser);
Innerhalb dieser Zeile wird der LegacyUser automatisch in ein neues Benutzer-Modell umgewandelt, ohne dass der Entwickler spezifische Regeln oder Mappings erstellen muss. Hierbei wird überprüft, ob die Struktur des neuen Modells mit den vorhandenen Daten übereinstimmt.
Die Möglichkeiten von ArtificialCast gehen jedoch über einfache Typumwandlungen hinaus. Das Projekt bietet eine gesamte Suite von Werkzeugen unter dem Namespace ArtificialCast.*, die unter anderem auch Objektgenerierung nach Typdefinitionen sowie das Mergen und Splitting von strukturierten Daten umfasst. Dies eröffnet Entwicklern ein breites Spektrum an potenziellen Anwendungen, die von der Datenmigration bis zu komplexen Abfragen über in-memory Datasets reichen.
Als Teil des BIGPISS-Stacks, einer Sammlung von Tools, die konventionelle Logik durch Inferenz und Struktur ersetzen, wird ArtificialCast als experimentelles Werkzeug vorgestellt. Die Entwicklung der Software stellt eine kritische Auseinandersetzung mit der zunehmenden Tendenz dar, KI-generierte Logik als produktionsreif zu erachten. Das Projekt dient auch als Warnung vor den potenziellen Gefahren, die durch den Einsatz von KI in Softwareentwicklungsprozessen entstehen können. Gezeigt wird beispielsweise, dass die Bibliothek auch einen mathematischen Term auswerten kann. Da es aber nicht auf die Regel "Punkt vor Strich" hingewiesen wird, kann das Ergebnis falsch ausfallen.
Die Bereitstellung der Software ist deshalb nur zu Demonstrations- und Bildungszwecken gedacht. Es wird ausdrücklich darauf hingewiesen, dass das Tool nicht in Produktionsumgebungen eingesetzt werden darf. Dadurch wird die Diskussion über die aktuelle Softwareentwicklung und die damit verbundenen Risiken angestoßen, wobei die Problematik einer fehlerhaften KI sowie deren Integration in bestehende Systeme thematisiert wird.
Bibliothek zur Typumwandlung - mit Vorsicht zu genießen.