Retrieval Augmented Generation (RAG)

Retrieval Augmented Generation (RAG) im AI-Umfeld…. was ist das nun schon wieder? 

Gestern fand in München eine interessante Veranstaltung von Microsoft und NVIDIA zum Thema „Industrial Metaverse“ statt, natürlich vollgepackt mit neuester Grafik, verrückten Rechen- und Rechnerleistungen, Parallelisierung, und viel generativer KI, die zur Simulation, zum Training und zum Aufbau von Digitalen Zwillingen für Fertigung, Automotive, etc. verwendet werden kann. 

Im Vortrag von Ekaterina Sirazitdinova wurde eine sehr schöne und griffige Grafik zum Thema RAG gezeigt (siehe auch unten, (c) NVIDIA) und ich möchte mal kurz ein paar Gedanken zu diesem Begriff verlieren…. 

Wir alle kennen das Problem, dass GenAI-Systeme manchmal halluzinieren, dass Menschen auf einmal drei Beine haben und Texte irgendwie seltsam erzeugt werden. Auf Bildern ist das immer recht schnell erkennbar, bei Texten oder „Daten“ häufig nicht mehr. Insbesondere, wenn zum Trainieren von Modellen selbst künstliche Daten generiert und annotiert werden müssen (s.u.), können solche Fehler sich natürlich in die späteren Modelle fortpflanzen und zu sehr unschönen Effekten führen. Da gilt die wunderschöne alte Regel: shit-in > shit-out. Dieses Problem versucht man nun mittels RAG in den Griff zu bekommen. 

Hierbei werden mit GenAI erzeugte Daten (= künstliche Daten) mit echten Informationen (= reale Daten) abgeglichen. Bspw. wird geprüft, dass Menschen auch tatsächlich nur zwei statt drei Beine haben. Generierte Daten, die nicht mit dem Modell konform gehen, werden verworfen. Dieses anreichern (= augmentieren) von generierten Daten mittels geprüften Informationen erfordert natürlich, dass letztere auch schnell und effizient gefunden werden können. Hier kommen klassische Methoden aus dem Information Retrieval zum Einsatz, wie bspw. Graph-Datenbanken (siehe auch https://lnkd.in/ekTt_hYb). Man versucht also, das beste aus zwei Welten zu vereinen. 

Natürlich steht und fällt dieser Ansatz damit, dass eine Überprüfung überhaupt möglich ist. Aber da wir im Information Retrieval sehr Jahrzehnten an Algorithmen, Konzepten, Datenbanken, Merkmalsgraphen und Ontologien gearbeitet haben, die in (mehr oder weniger) strukturierter Form derartige Informationen liefern, ist das ziemlich vielversprechend und könnte auch Ansätze zur Überprüfbarkeit von AI ermöglichen. 

Ein wichtiger Punkt dabei ist die Notwendigkeit, für das Training von AI realistische, umfangreiche, korrekte und annotierte Datensätze zu besitzen. Damit eine KI bspw. defekte Schrauben erkennt, müssen 10.000e Bilder von defekten Schrauben zum Training vorliegen. Da wir häufig aber keine 10.000en Schrauben kaputt machen können, werden solche Bilder mittels GenAI in allen denkbaren Varianten erzeugt und dann der Bilderkennung zum Training gegeben. Je besser diese sind, desto besser werden später die „echten kaputten Schrauben“ erkannt. 

Aus meiner Sicht wird RAG in Zukunft eine zentrale Rolle im AI Umfeld spielen!