Retrieval Augmented Generation (RAG)

Retrieval Augmented Generation (RAG) in the AI environment.... what is this again? 

Yesterday, Microsoft and NVIDIA held an interesting event in Munich on "Industrial Metaverse", of course packed with the latest graphics, crazy computing and computing power, parallelization, and lots of generative AI that can be used to simulate, train, and build digital twins for manufacturing, automotive, etc. 

In Ekaterina Sirazitdinova 's presentation, a very nice and catchy graphic on the subject of RAG was shown (see also below, (c) NVIDIA) and I would like to briefly share a few thoughts on this term.... 

We are all familiar with the problem that GenAI systems sometimes hallucinate that people suddenly have three legs and that texts are somehow generated in a strange way. This is always quite easy to recognize in images, but often not in texts or "data". Especially when artificial data has to be generated and annotated to train models (see below), such errors can naturally propagate into the later models and lead to very unsightly effects. The wonderful old rule applies: shit-in > shit-out. This problem is now being tackled using RAG. 

This involves comparing data generated with GenAI (= artificial data) with real information (= real data). For example, it is checked that people actually only have two legs instead of three. Generated data that does not conform to the model is discarded. This enrichment (= augmentation) of generated data with verified information naturally requires that the latter can also be found quickly and efficiently. This is where classic methods from information retrieval are used, such as graph databases (see also https://lnkd.in/ekTt_hYb). The aim is to combine the best of both worlds. 

Of course, this approach stands and falls with the fact that verification is possible at all. But since we have been working in information retrieval for decades on algorithms, concepts, databases, feature graphs and ontologies that provide such information in a (more or less) structured form, this is quite promising and could also enable approaches to the verifiability of AI. 

An important point here is the need to have realistic, comprehensive, correct and annotated data sets for training AI. For an AI to recognize defective screws, for example, 10,000s of images of defective screws must be available for training. However, as we often cannot break 10,000s of screws, such images are generated in all conceivable variants using GenAI and then given to the image recognition system for training. The better these are, the better the "real broken screws" are recognized later. 

In my view, RAG will play a central role in the AI environment in the future!