In einer Ära, in der Künstliche Intelligenz (KI) immer mehr Domänen durchdringt, zeigt sich besonders eindrucksvoll, wie Large Language Models (LLM) dazu beitragen, die Erstellung komplexer Graph Style Scripts (GSS) zu optimieren. GSS ist eine eigens entwickelte Sprache, ähnlich einer CSS-Struktur, die speziell für die optische Gestaltung von Graphen in Anwendungen wie Memgraph Lab konzipiert wurde. Die Kombination aus KI und spezifischen graphischen Styling-Regeln verspricht einen Quantensprung in puncto Visualisierung und Analyse von vernetzten Daten. Die Herausforderung bei der Nutzung von LLMs wie GPT-4 liegt darin, dass diese Modelle auf einer breiten Basis bekannter Programmiersprachen und Syntaxmuster trainiert sind. Das Erlernen einer neuen, eigenen Sprache wie GSS erfordert daher ein gezieltes Training und die Integration umfangreicher Dokumentationen als Kontext.
GSS ist keine gängige Programmiersprache und bringt eigene Konventionen, Funktionen und Syntax mit sich, die für die Modelle zunächst fremd sind. Der Aufbau von GSS erlaubt es, graphische Elemente auf vielfältige Weise anzupassen. Nodes und Edges können nicht nur farblich hervorgehoben, sondern in Größe, Textanzeige und Verhalten individuell gesteuert werden. Dies macht die visuelle Interpretation von komplexen Datenbeziehungen intuitiver und automatisierbar. Ein Beispiel hierfür ist die Anforderung, dass ein Knoten vom Typ "Officer" einen Namen zeigen soll.
Wenn eine bestimmte Notiz vorhanden ist, erhält der Knoten einen orangenen Rand. Die Entität mit Label "Entity" kann mit einem spezifischen Hintergrundbild versehen werden. Solche Regeln, einfach formuliert, bilden die Grundlage für tiefgehende visuelle Analysen. Um den Umgang mit GSS durch das LLM zu verbessern, wurde ein umfangreicher Trainingskontext aus der Memgraph-Dokumentation bereitgestellt. Dies geschieht insbesondere für LLMs, die nicht in der Lage sind, in Echtzeit das Internet zu durchsuchen, wie beispielsweise GPT-3.
5. Das Einbringen von Referenzmaterial ermöglicht es den Modellen, auf eine Fülle von Built-in-Funktionen und Syntaxregeln zuzugreifen und damit präzise Codevorschläge zu liefern. Die praktische Anwendung zeigt schnell, dass LLMs manchmal Funktionen vorschlagen, die in der GSS-Syntax nicht existieren – etwa „Linear“ für lineare Skalierung oder ein klassisches „Switch-Case“-Statement wie in anderen Programmiersprachen. Während dies zunächst als Fehler erscheint, eröffnet es gleichzeitig Inspiration für die Weiterentwicklung der Sprache. Denn solche Vorschläge spiegeln reale Anwendungsbedürfnisse wider, die in neuen Versionen von GSS implementiert werden könnten.
Ein besonders komplexer Anwendungsfall ist die dynamische Skalierung von Knotengrößen basierend auf der Anzahl bestimmter eingehender Kanten – hier exemplarisch für den Typ „JURISDICTION_IN“. Die Herausforderung: GSS verfügt nicht über native Funktionen, um solche Aggregationen oder mathematischen Operationen direkt durchzuführen, wie sie in traditionellen Sprachen üblich sind. Daher sind Workarounds notwendig, bei denen beispielsweise vorausberechnete Werte in Eigenschaften einzelner Knoten gespeichert und zur Stilgestaltung herangezogen werden. Im beschriebenen Szenario ist es gelungen, mit Hilfe der GSS-Funktion „Define“ eigene Utility-Funktionen zu erstellen, die gezielt auf den Graphen und seine Knotenstruktur zugreifen. So kann etwa eine Filterfunktion für eingehende Kanten nach Typ definiert werden.
Anschließend werden Maximal- und Minimalwerte für die Skalierung festgelegt und eine benutzerdefinierte lineare Interpolationsfunktion implementiert. Dieses Vorgehen erlaubt, innerhalb der Beschränkungen von GSS eine intelligente visuelle Skalierung zu realisieren. Die Integration solcher komplexer Funktionalitäten zeigt einerseits die Flexibilität der Sprache, offenbart aber andererseits Grenzen, die nur mit zusätzlicher Berechnung oder Erweiterung des Sprachangebots vollständig überwunden werden können. LLMs helfen bei der iterativen Verbesserung der Skripte, indem sie Fehler erkennen, korrigieren und alternative Lösungen vorschlagen. So verwandelt sich ein anfängliches Syntaxproblem in eine Lerngelegenheit für das Modell und den Nutzer.
Ein weiterer interessanter Aspekt ist der generische Einsatz von GSS zur Hervorhebung signifikanter Knoten und Beziehungen im Graphen. Hierbei werden Knoten gewichtet und farblich hervorgehoben, abhängig von ihrer Vernetzung und ihrem Einfluss im Netzwerk. Die große Herausforderung liegt darin, allgemeingültige Regeln zu formulieren, die für verschiedenste Datensätze sinnvolle visuelle Hinweise geben. LLMs übernehmen hier die Rolle von Kreativpartnern, die auf Basis der vorliegenden Daten und des Graphschemas passende Styling-Regeln generieren. Die Zusammenarbeit zwischen menschlichen Experten und KI-Modellen bringt auch den Vorteil, dass Entwickler nicht alle Feinheiten der GSS-Syntax von Grund auf lernen müssen.
Stattdessen kann das LLM auf Basis von Beispielen und korrigierten Fehlern schnell verständlichen Code generieren, der dann in Memgraph Lab getestet und visualisiert wird. Fehlermeldungen helfen dem Modell, sich Schritt für Schritt an die korrekte Syntax und Funktionalität anzupassen. Selbst wenn manche Befehle oder Funktionen von GSS noch nicht implementiert sind, können Entwickler durch die von LLM vorgeschlagenen Alternativen und Workarounds wertvolle Impulse erhalten. Die Fähigkeit des Modells, die Dokumentation zu verarbeiten, neue Kontextinformationen zu integrieren und kreative Ansätze zu entwickeln, ist ein wichtiger Fortschritt bei der Automatisierung komplexer Aufgaben. Die Zukunft der graphischen Datenvisualisierung wird stark von solchen hybriden Methoden geprägt sein.
Die Kombination von menschenbasiertem Wissen und KI-gesteuerter Codegenerierung ermöglicht es, auch anspruchsvolle Styling-Regeln schnell umzusetzen und an individuelle Anforderungen anzupassen. GSS steht dabei exemplarisch für eine moderne, flexible Sprache, die stetig weiterentwickelt wird, unter anderem dank der Anregungen, die aus der Zusammenarbeit mit LLMs entstehen. Zusammenfassend zeigt sich, dass die Einbindung von großen Sprachmodellen in den Entwicklungsprozess von Graph Style Scripts eine wertvolle Unterstützung ist, auch wenn es anfangs zu Syntax-Fehlern und Missverständnissen kommt. Das schrittweise Lernen und Anpassen innerhalb eines vorgegebenen Dokumentationsrahmens führt schnell zu produktiven Ergebnissen, die in komplexen Datensätzen wie den Pandora Papers unmittelbar sichtbare Mehrwerte liefern. Es lohnt sich, GSS und Memgraph Lab selbst auszuprobieren, um die Möglichkeiten der KI-gestützten Graph-Stilgestaltung zu entdecken.
Gleichzeitig ist die aktive Beteiligung an der Weiterentwicklung von GSS notwendig, um die Sprache noch mächtiger und anwenderfreundlicher zu machen. Die Zusammenarbeit zwischen Mensch und Maschine steht hierbei im Mittelpunkt eines innovativen Ökosystems, das in den kommenden Jahren die visuelle Datenanalyse wesentlich prägen wird.