9 RAG development framework and further exploration

 

This chapter covers

  • A recap of the concepts covered in this book using a six-stage RAG development framework
  • Areas for further exploration

The previous eight chapters covered a wide breadth of retrieval-augmented generation (RAG), including a conceptual foundation, critical components, evaluation methods, advanced techniques, the operations stack, and essential variants of RAG. By now, you should be equipped with the necessary information required to develop RAG systems.

This concluding chapter summarizes the discussion and recaps all the previously discussed concepts. To accomplish this, we put all the different aspects of developing RAG systems together and came up with a RAG development framework. Across the six stages of this RAG development framework, we recap the concepts covered in this book along with some best practices. This framework not only covers the technical aspects but also looks at the development process holistically.

RAG is a rapidly evolving technique. At the end of this chapter, we also discuss some of the ideas that you can explore further. Some of these approaches to incorporating context may compete with the RAG technique, while others may be complementary.

By the end of this chapter, you should

  • Have reviewed and consolidated your understanding of key RAG concepts.
  • Get a solid understanding of the RAG development framework.
  • Be ready to build and deploy RAG systems.

9.1 RAG development framework

9.1.1 Initiation stage: Defining and scoping the RAG system

9.2 Design stage: Layering the RAGOps stack

9.2.1 Indexing pipeline design

9.2.2 Generation pipeline design

9.2.3 Other design considerations

9.2.4 Development stage: Building modular RAG pipelines

9.2.5 Evaluation stage: Validating and optimizing the RAG system

9.2.6 Deployment stage: Launching and scaling the RAG system

9.2.7 Maintenance stage: Ensuring reliability and adaptability

9.3 Ideas for further exploration

9.3.1 Fine-tuning within RAG

9.3.2 Long-context windows in LLMs

9.3.3 Managed solutions

9.3.4 Difficult queries

Summary