Retrieval-Augmented Generation (RAG) is a transformative AI architecture that enables large language
models to answer questions using your specific data rather than relying solely on their training
knowledge. It combines the power of semantic search through vector embeddings with the natural
language capabilities of LLMs, creating AI systems that can provide accurate, contextual, and
verifiable responses grounded in your custom knowledge base. RAG has become the cornerstone of modern
AI applications, powering everything from intelligent customer support and internal knowledge bases to
research assistants and domain-specific Q&A systems. Unlike traditional chatbots or pure LLM
solutions, RAG-based systems can cite their sources, stay current with your latest data, and
dramatically reduce hallucinations by anchoring responses in retrieved documents. Companies from
startups to enterprises are adopting RAG to unlock the value in their documentation, support tickets,
and proprietary content. In this hands-on course, instructor James Charlesworth will take you from
understanding vector embeddings and semantic search to building a production-ready RAG chatbot in .NET
with OpenAI, Pinecone, and advanced techniques like HYDE for enhanced retrieval accuracy.
Course Curriculum
4h 25m 7 sections
Welcome
02:28Free preview
What will you learn in this course?
00:59Free preview
Who is the course for and prerequisites
02:21Free preview
What is a Vector?
03:23
Semantic Search vs Keyword Search
06:58
Creating Embeddings With A Large Language Model (LLM)
17:12
Searching With Vectors (Cosine Similarity & Euclidean Distance)
James is a Director of Engineering, O'Reilly author, speaker, and YouTuber with 20 years of experience in the tech industry. He has worked across startups and publicly listed tech companies, helping to build and scale software products. James focuses on teaching product skills to engineers, building high-performing product engineering teams, and defining the "Product Engineer" career path. He shares practical advice on software engineering, product development, and career growth through his Train to Code YouTube channel.