In real world applications, simple naive RAG systems are rarely used nowadays. To provide correct answers to a user query, we are always adding some agency to the RAG system. However, it is important to ๐—ป๐—ผ๐˜ ๐—ด๐—ฒ๐˜ ๐—น๐—ผ๐˜€๐˜ ๐—ถ๐—ป ๐˜๐—ต๐—ฒ ๐—ฏ๐˜‚๐˜‡๐˜‡ ๐—ฎ๐—ป๐—ฑ ๐˜๐—ฒ๐—ฟ๐—บ๐—ถ๐—ป๐—ผ๐—น๐—ผ๐—ด๐˜† and understand that there is ๐—ป๐—ผ ๐˜€๐—ถ๐—ป๐—ด๐—น๐—ฒ ๐—ฏ๐—น๐˜‚๐—ฒ๐—ฝ๐—ฟ๐—ถ๐—ป๐˜ to add the mentioned agency to your RAG system and you should adapt to your use case. My advice is to not get stuck on terminology and think about engineering flows. Letโ€™s explore some of the moving pieces in Agentic RAG: ๐Ÿญ. Analysis of the user query: we pass the original user query to a LLM based Agent for analysis. This is where:

The real power of Agentic RAG lies in its ability to perform additional routing pre and post generation, handle multiple distinct data sources for retrieval if it is needed and recover from failures in generating correct answers. What are your thoughts on Agentic RAG? Let me know in the comments!

ๅ›พๅƒ