RAG #5 - A recap and progress check-in
Mark Gerow
Impactful Application Development | Process Automation | Artificial Intelligence | Agile Project Management | Technology Leadership
In this post I step back to review the prototype now that both unstructured and structured data is incorporated. Included is a short video demonstrating both successful and problematic responses and discusses some ways in which question phrasing can be used to address failures.
Why create a prototype?
It's always important to keep in mind the "why" behind any project. In this case my goal is to strip away the hype and noise around RAG and generative AI and expose both its potential and shortcomings. While this is a personal journey of discovery, I hope that others find it helpful too. The key question is what business problems lend themselves to RAG and how to make it work. The #1 use I see for RAG is to create powerful question/answer systems that seekers can interact with using natural language. Such systems will hide the complexity of the countless sources of data and documents that a typical knowledge worker must sift through to do their work. The promise of RAG is a significant increase in productivity and the quality of decision making.
Where are we?
The RAG prototype has evolved through five iterations so far, each providing successively more functionality, specifically:
I chose to use .NET, C#, OpenAI (embedding and GPT3.5), Azure SQL (for structured data), and DataStax (for unstructured data). Other developers might choose other tools. The bottom line is that you will need:
领英推荐
Where to go next?
The truth is that with generative AI there is likely no clear end point. At least two factors contribute to my assertion: 1) generative AI is probabilistic, and so there is always room to refine any application to improve the quality of the responses and reduce the chance of hallucinations, and 2) the field is evolving so quickly that any solution relying on generative AI will also need to evolve at a rapid pace. Having said this, there are two refinements to the current prototype that I'd like to explore next:
I would love to hear if you find this series helpful, and if so, which aspects. I am also open to suggestions for which areas of RAG this series should explore.
Onward!