06 Tabellen in Form gebracht

So nehmen Ergebnisse Form an
Wer tritt schon gerne ungeschminkt ins grelle Scheinwerferlicht? Bevor sich beim Companion for First der Vorhang hebt, werden die Ergebnisse einer Nutzeranfrage hinter der Bühne fachgerecht aufbereitet und passend zurechtgemacht.
Es geht um weit mehr als ein bisschen Kosmetik: Ziel ist, dass man die Resultate mühelos einordnen und interpretieren kann. Deshalb wird sorgfältig abgewogen, welche Form der Darstellung die gewonnenen Daten am besten zur Geltung bringt und für die Nutzer intuitiv zugänglich macht.
Lässt sich ein Resultat bereits in einem einzelnen Satz knapp und präzise zum Ausdruck bringen, ist eine Übersichtstabelle erforderlich oder wäre eine zusätzliche Grafik hilfreich? Im vorliegenden Whitepaper dreht sich alles um diese Ergebnisaufbereitung als letzten Schritt in der RAG-Pipeline des Companion for First. Wir zeigen, wie der smarte Assistent seine Entscheidungen trifft und was Sie als Nutzer dabei erwarten dürfen.
Sie möchten das Whitepaper lieber hören?
Vor der Ausgabe
Springen wir zu Beginn noch einmal kurz einige Schritte zurück
Eine Nutzeranfrage wie etwa „welche Assets haben einen Marktwert > 1.000.000?“ durchläuft auf ihrem Weg durch den Companion zahlreiche Verarbeitungsstufen: Im Query Processing wird sie zunächst sprachlich aufgebrochen, entschlüsselt und interpretiert. Dann wird ein intelligenter Ausführungspfad konstruiert, der den Weg zur passenden Antwort weist. Schließlich wird dieser Pfad in der Tool Execution Schritt für Schritt abgearbeitet.
Dabei werden die für die Anfrage relevanten Inhalte aus der First Datenbank ausgelesen, Verbindungen geknüpft, Daten gefiltert, aggregiert und bei Bedarf Zusatzinformationen aus Drittquellen eingeholt, bevor am Ende die gewünschten Antworten stehen – zunächst noch als Rohdaten. Je nach Nutzeranfrage sprechen wir hier von einer singulären Zahl, doch in den meisten Fällen bestehen die Resultate aus Zeilen und Spalten mit Daten, vergleichbar mit einer Excel-Tabelle. Deren Struktur ist dabei höchst individuell und von der konkreten Anfrage abhängig.
Formatwahl mithilfe der KI
Nun, in der Ergebnisaufbereitung als „Endstück“ der RAG Pipeline angekommen, gilt es, das passende Format für diese Rohdaten zu finden.
Die Optionen und Möglichkeiten sind vielfältig und nicht immer vollkommen scharf abgrenzbar. Alles ein wenig „fuzzy“, wie Informatiker gerne sagen, und damit die perfekte Ausgangslage für den Einsatz externer Large Language Models (LLM) auf Basis künstlicher Intelligenz. Denn fuzzy ist deren Stärke.
Dennoch dient die KI hier nur als Helfer. Die Aufsicht führt der sogenannte Presentation Agent, der den Kontext analysiert, Entscheidungen trifft und Sub-Agenten für die Formatierung hinzuzieht. Er selbst ist übrigens Bestandteil des Companions, genau wie die angesprochenen Sub-Agenten. Sie alle arbeiten aber mit dem externen LLM bei der Entscheidungsfindung zusammen, wobei jeder Sub-Agent einen klar definierten Aufgabenbereich abdeckt:
Um eine sinnvolle Formatauswahl durch das LLM zu ermöglichen, wird es von den Agenten mit der aufbereiteten Nutzeranfrage konfrontiert. Zusätzlich erhält es die Metadaten der in der Tool Execution gewonnenen Informationen. Darüber kann das LLM auf die Dateninhalte schließen, die als Resultat der Nutzeranfrage hervorgebracht wurden. Man könnte auch sagen: Frage und Antwort, Input und Output, werden für eine fundierte Entscheidungsfindung zusammengeführt.
Diese Inhalte stehen auch als Download zur Verfügung.

Was ist ein Software Agent?
Wenn hier von Agenten die Rede ist, so sind damit nicht James Bond und seine finsteren Gegenspieler gemeint.
Als Software Agents werden Programme und abgrenzbare Programm-Einheiten bezeichnet, die autonom agieren und Entscheidungen bzw. Aktionen im Auftrag ihrer Befehlsgeber selbständig ausführen. Software Agents sind häufig lernfähig, anpassungsfähig und dadurch prädestiniert, mit anderen Agents zu interagieren, um gemeinsam klar definierte Ziele zu erreichen.
Agenten lieben Metadaten
Metadaten, das sind beispielsweise die Spaltennamen von berechneten oder aus der Datenbank ausgelesenen Informationen, der Datentyp dieser Spalten (Text, Datum, Zahl), die Anzahl der gefundenen Zeilen und die durchgeführten Sortierungs-, Gruppierungs- und Filter-Operationen.
Die Kenntnis dieser Metainformationen liefert wertvolle Hinweise für die Einordnung der Daten und die Entscheidungsfindung hinsichtlich ihrer optimalen Darstellung. Etwa weil der Spaltenname immer eine verwertbare Information über den Dateninhalt birgt, im Sinne von „ISIN“, „assetLabel“, „assetType“, „MarketValueLC“, „Currency“ etc. Das gehört zu den Stärken eines LLMs, dass es mit solchen Begrifflichkeiten dank seines (Sprach-) Trainings tatsächlich etwas anfangen kann.
Die jeweiligen Sub-Agenten (Text Agent, Table Agent etc.) formatieren die Daten auch nicht selbst, sondern melden ihre Empfehlungen an die Ergebnisaufbereitung im Companion zurück, wo sie schließlich umgesetzt werden. Schauen wir uns die einzelnen Agenten deshalb einmal etwas näher an.
Der Text Agent
Für die Umsetzung von Ergebnissen in Wort und Schrift zeichnet der Text Agent verantwortlich. Manchmal benötigt es als Antwort auf eine Nutzeranfrage nicht mehr als einen einzigen Satz, etwa wenn eine Summe, eine Stückzahl oder eine prozentuale Veränderung ermittelt wurde. Liegen dagegen umfangreichere Daten als Tabelle vor oder wird zusätzlich eine Grafik präsentiert, dann beschreibt der Text Agent diese Daten, beispielsweise in der Form „Die Tabelle zeigt die 5 größten Asset-Positionen nach Marktwert. Das Balkendiagramm visualisiert den Vergleich…“
Dabei formuliert der Agent grundsätzlich in der Landessprache, in der auch die Nutzeranfrage aufgegeben wurde. Die KI macht dies möglich. Außerdem berücksichtigt er das typische Zahlen- und Währungsformat für den jeweiligen Sprachraum.
Tabellen in Form gebracht
Aufgabe des Tabellen-Agenten bzw. Table Agent ist es, Tabellen den entscheidenden Schliff zu verleihen, das Wichtige nach vorne und das weniger Wichtige nach hinten zu rücken und unnötige Spalten vor der Ausgabe zu entfernen. Etwa, weil die darin enthaltenen Informationen im Laufe der Ergebnisfindung zwar eine wichtige Rolle gespielt haben, aber für den Nutzer nicht wirklich interessant sind. Letzteres gilt beispielsweise für technische Spalten mit Identifikationsnummern, Zeitstempeln etc.
Ganz anders dagegen Spalten, die mit Begriffen aus der Nutzeranfrage korrespondieren oder gar explizit angefordert wurden, etwa „ISIN“ oder „Asset“. Diese werden ins Blickfeld gerückt, indem sie nach links an den Beginn der Tabelle geschoben werden. Zur Identifikation der Tabellenzeilen sollte ganz vorne mindestens eine unterscheidbare Spalte mit eindeutigen und nicht wiederkehrenden Inhalten stehen. Idealerweise ein Label oder auch eine ID, falls kein Label vorhanden ist. Damit man bei der Besprechung einer Tabelle mit Kollegen leichter auf relevante Positionen Bezug nehmen kann. Bei numerischen Ergebnissen bekommen Hauptdaten grundsätzlich den Vorrang vor abgeleiteten Informationen, werden also weiter links dargestellt, beispielsweise marketValue vor weight. Das alles soll dazu beitragen, dass sich Nutzer in den zurückgelieferten Tabellen gut zurechtfinden, nicht mit überschüssigen Informationen belastet werden, sondern im Gegenteil unmittelbar auf das stoßen, wonach sie gesucht haben.
Auf einen Blick
Grundsätzlich können First Nutzer den Companion explizit zur Erzeugung von Grafiken auffordern, etwa durch eine Anfrage wie „zeige Top 10 Assets als Balkendiagramm“. Aber auch ohne direkte Ansage denkt der Companion immer mit und bietet zusätzlich zu Datentabellen grafische Visualisierungen an, wann immer dies sinnvoll erscheint. Die Auswahl des passenden Diagrammtyps und die Zuordnung der Dateninhalte zu den Hauptachsen eines solchen Diagramms sind die Aufgabe des Visualization Agents.
Dazu beliefert dieser Agent das LLM mit Informationen über die Anfrage und die daraus resultierenden Metadaten einerseits, sowie abstrakten Beschreibungen der verfügbaren Diagrammtypen andererseits. Ein LLM ist bei dieser Ausgangslage allen deterministischen Verfahren haushoch überlegen, weil Nutzeranfragen ja sprachlich völlig frei formuliert sein können. Einfach ganz klassisch in den Anfragen nach Schlagworten zu suchen und diese ohne tieferes Verständnis mit einem vermeintlich passenden Diagrammtyp zu „matchen“, würde hier nicht verlässlich zum Ziel führen.
Außerdem erkennt das LLM anhand der Spaltenbezeichnungen aus den Metadaten zusätzlich, ob etwa Zeitreihenanalysen oder Summendaten vorliegen. Dieses Wissen kann es bei der Auswahl des Diagrammtyps ebenfalls berücksichtigen. Dadurch werden die Rohdaten in den passenden fachlichen Rahmen gesetzt.
Diagrammtypen
In seiner ersten Version wird der Companion Liniendiagramme, Säulendiagramme, Kuchendiagramme, gestapelte Balkendiagramme und Histogramme erstellen können. In Abhängigkeit von der jeweiligen Nutzeranfrage und den gewonnenen Daten wird er selbständig einschätzen, welche Art von Diagramm am besten passt. Sollte eine andere Art der Darstellung gewünscht sein, kann man ihn aber auch ausdrücklich dazu auffordern, wie eingangs geschildert.
Alle Diagramme werden innerhalb des Companions übrigens mithilfe der bewährten Open-Source Bibliothek plotly erstellt, die für ihre prägnanten und ansehnlichen Darstellungen bekannt ist. plotly steht sowohl in Python als auch in JavaScript lizenzfrei zur Verfügung. Das kommt der Entwicklung des Companions in Python, sowie der Grafikdarstellung innerhalb des Webbrowsers mit JavaScript sehr entgegen.
Diese Inhalte stehen auch als Download zur Verfügung.
Output der visualisierten Daten
Der Output der gefundenen und berechneten Daten als Antwort auf die Nutzeranfrage erscheint zunächst auf dem Bildschirm.
Zahlen und Datumsangaben werden dabei grundsätzlich im vorgegebenen Datenformat der jeweiligen First Instanz formatiert, sofern die Nutzeranfrage nicht explizit in einer anderen Landessprache aufgegeben wurde. Auch die eingestellten Schriftarten, Schriftgrößen und Schriftfarben der jeweiligen First Instanz werden berücksichtigt.
Für die Weiterverarbeitung lassen sich die produzierten Daten jederzeit abspeichern: als Excel-Tabelle oder als Grafikdatei. Sie können dadurch außerhalb des Companions in einen größeren Präsentationskontext eingebettet werden.
Weitere Eingriffsmöglichkeiten in den Output sind für nachfolgende Versionen geplant. Etwa dass man Text hinzufügen, Zahlen ergänzen oder sogar komplette Templates vorgeben kann, in die die Ausgaben des Companion for First einfließen. Das ist zum aktuellen Zeitpunkt noch einen Schritt entfernt, doch schon jetzt sorgt die Ergebnisaufbereitung dafür, dass die gefundenen Zahlen und Ergebnisse bei jeder Anfrage ins passende Licht gerückt werden. Damit man ohne großen Aufwand zu aussagekräftigen und präsentablen Ergebnissen gelangt, die sonst vielleicht tief in den Datenbeständen einer First Instanz verborgen blieben. Schließlich sind nicht die Zahlen das Ziel des Rechnens, sondern Einsichten. Genau die liefert Ihnen stets schnell und verlässlich Ihr Companion for First. Denn dafür ist er da.
Weitere Inhalte unserer Companion-Reihe:
Fragen zu KI oder RAG Pipeline? Die FAQ erklären’s einfach.
Neugierig geworden?
Sie möchten mehr über First Cloud, den Companion for First und den Betrieb in der Fact Cloud erfahren? Dann schreiben Sie uns oder sprechen Sie direkt mit unserem Experten Aleksandar Ivezić. Er freut sich auf Ihre Anfrage:
Aleksandar Ivezić
a.ivezic@fact.de
+49 2131 777 238


