RAG (Retrieval Augmented Generation) is the most common approach used to get LLMs to answer questions grounded in a particular domain's data. Learn how to develop apps using RAG with Python and the OpenAI SDK. We'll walk through our most popular RAG solution, showing the process of data ingestion with Azure Document Intelligence and AI Search, then walking through the RAG steps of query rewriting, hybrid search, and question answering. You'll learn how to easily bring your own data into the RAG solution, and how to customize the prompts and UI for your domain.