Part 3: hands-on RAG console app (#500)#510
Merged
Merged
Conversation
Extends the Part 2 console app with a by-hand RAG loop on net10.0: IEmbeddingGenerator, paragraph chunking, in-memory vector store, hand-written cosine similarity search, top-k retrieval, and prompt augmentation. Includes a sample product doc and step-by-step README. Adapted from Steve Sanderson's dotnet-ai-workshop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds the new Part 3: Add RAG by hand — extends the Part 2 console app with a complete, hand-written Retrieval-Augmented Generation loop and no vector database. Resolves #500.
Second hands-on part of the workshop rewrite.
What's included
Part 3 - Add RAG/RagChatApp/— anet10.0console projectIEmbeddingGeneratorfrom the sameAzureOpenAIClient(two abstractions, one resource)List(no vector DB)sample-docs/contoso-trailblazer-3000.md), copied to outputPart 3 - Add RAG/README.md— step-by-step walkthrough with a data-flow diagramTeaching flow
Reinforces the swappable-abstraction theme: Part 2 swapped the chat provider, Part 3 shows the same idea for embeddings and vector stores. The in-memory store is deliberately naive to motivate the real vector store revealed in Part 4.
Models & provider
gpt-4.1-mini· Embeddings:text-embedding-3-smallValidation
net10.0(dotnet build -c Release, 0 warnings, 0 errors)Notes
bin/andobj/are gitignored — only source is committed.