
Explore the dotnet ai ecosystem, configure llm providers such as OpenAI and Ohyama with Microsoft Extensions AI, and build vector search, retrieval augmented generation, and image recognition apps.
Learn the prerequisites for GenAI for .NET, including dotnet 9, Visual Studio 2022, Docker, and GitHub OpenAI models; access the GitHub source code and course slides.
Explore course projects across chat, text analysis, vector search, rag, and eshop vector search, using embeddings, a vector store, and interactive demos.
Discover what large language models are and how they work, including tokenization, capabilities, use cases, and limitations, and their role in natural language understanding and applications like chatbots and translation.
learn how large language models work, focusing on transformer architecture with self-attention that processes all words simultaneously, uses tokens and tokenization for text generation, and notes scaling and computational costs.
Explore what a token is and how tokenization enables LLMs to process text by breaking input into manageable tokens, using OpenAI's tokenizer as a reference.
Identify small language models as efficient, lower-parameter versions of large language models that still perform text generation, classification, and language understanding for fast, cost-effective real-time or edge applications.
Discover how prompts guide llms, and how prompt engineering refines wording, structure, and iteration to maximize model performance and meet specific needs.
Leverage .NET to simplify AI development with native tools, frameworks, and semantic kernel. Enable language processing, chatbots, content generation, computer vision, and audio across platforms.
Explore dotnet ai frameworks and SDKs, including Microsoft Extensions AI, Semantic Kernel, and Autogen, and compare Azure AI, OpenAI, and AWS Bedrock while learning local llm options.
Discover how Microsoft's Extensions AI library provides unified abstractions to bring generative AI into .NET apps, enabling chat, embedding, and tool calling across Azure, OpenAI, or local providers.
Harness semantic kernel for dot net, an open source ai orchestration framework that streamlines integrating ai capabilities like text generation and embeddings with consistent APIs, plugins, planner, and memory.
Compare paid and free AI providers—Azure AI Foundry, OpenAI platform, GitHub models, and Ohyama—considering cost, performance, and setup, with GitHub models as the primary free option.
Explore Azure AI Foundry and OpenAI platform paid services to discover, compare, and deploy AI models, integrate via REST APIs and dotnet libraries, and manage pricing and deployments.
Explore GitHub modules to learn, test, and experiment with AI models directly in your development workspace, using a free tier and marketplace access to OpenAI and Azure OpenAI models.
Create a personal access token for GitHub models by generating a fine-grained token with read permissions, then securely store it in an environment variable for use in .NET projects.
Discover how Ollama lets you run LLMs locally on your machine, keeping data private and reducing latency with offline execution and pre-built models for coding, chat, and creative tasks.
Set up Ollama in Docker Desktop to run a local AI environment, download and pull llama 3.2 model, and manage models offline with a persistent volume and port exposure.
Develop a dotnet solution for ai projects, building text completion, chat, and data extraction with gpt five mini and llama 3.2, cloud and local deployments.
Learn to build a dotnet console app that connects to the GitHub GPT-5 mini model using the Microsoft.Extensions AI library, enabling text completion, classification, and sentiment analysis.
Learn to implement streaming LLM text completion in .NET using streaming responses and a typewriter effect, organized with regions in Program.cs for easy feature toggling in interactive apps.
Learn to build a universal task engine in a .NET console app by using prompt engineering for classification, summarization, and sentiment analysis with OpenAI via the iChat client interface.
Develop structured output in llm for data extraction by returning JSON that maps to C# classes, ensuring predictable, machine-readable results, using explicit prompts and GetResponseAsync.
Build a stateful AI chat app in .NET using the gpt-5-mini model, managing context with system, user, and assistant messages and full chat history on every turn.
Develop a .NET text completion app that runs a local llama 3.2 model via Ollama, using Microsoft Extensions AI, Docker, and a local API to perform in-house text completion.
Run LLM use cases locally with the llama 3.2 model using Ollama, porting basic completion and sentiment analysis code, and evaluating performance and CPU usage versus GitHub cloud models.
Use function calling in large language models to trigger external APIs and perform tasks such as retrieving weather, booking meetings, and running calculations.
Invoke .NET functions from a large language model using GPT five mini model with function calling and the Microsoft Extensions API, enabling weather queries for Istanbul and JSON results.
Explore vectors and vector embeddings for AI, including vector databases, cosine similarity, and .NET AI vector search with extensions and vector data abstractions, plus query embeddings.
Build a dotnet console app to generate embeddings with a text embedding tree small model, then compare similarities using cosine similarity to reveal semantic relationships like cat, kitten, and dog.
Explore how vector databases store high dimensional vectors and embeddings to enable semantic search and contextual understanding of unstructured data, with fast similarity search and OpenAI and Huggingface model integration.
Explore dotnet ai search with the extensions vector data abstractions library to connect various vector databases to your .NET app, enabling vector and text search with a universal adapter.
Define a movie data model with vector attributes, create an in-memory vector store, and populate embeddings from descriptions using cosine similarity for semantic matching.
Generate embeddings for movie descriptions using the OpenAI text embedding three small model and store them in an in-memory vector store for future semantic searches.
Create a query embedding from the user prompt and perform a vector search in an in-memory vector store to retrieve the most relevant results via cosine similarity.
Develop a dotnet ai vector search app with ollama and all-minilm embedding model, switching from cloud to local private ai in a docker-based setup with minimal code changes.
Discover how retrieval augmented generation uses external knowledge and structured prompts to improve model responses. Build and extend Rec apps with the .NET API, custom pdf ingestion, and React function calling.
Retrieval augmented generation overcomes static knowledge and hallucinations by retrieving real-time data from external sources, enabling context-specific, up-to-date, and accurate answers.
Learn how retrieval augmented generation (RAG) works by ingesting data into a knowledge base, indexing with embeddings, retrieving relevant information from sources and APIs, and generating context-aware responses.
Build a dotnet ai chat app with the dotnet ai application template, enabling retrieval augmented generation, a local on-disk vector store, and GitHub models.
Explore a dotnet chat app with a retrieval augmented generation solution, detailing architecture, document ingestion, vector search, and ai powered chat grounded in your own pdf files.
Run and test a dotnet chat app with retrieval augmented generation, ingesting pdf data, creating embeddings, and storing vectors in a local sqlite vector store with citations and vector search.
Extend the rag chat app by ingesting pdf documents, chunking and embedding them into a vector store for retrieval augmented generation and cited, data-grounded answers.
Extend a react chat app with a function calling tool to fetch real time weather data, enabling the LLM to choose between document search and a weather tool.
Develop a dotnet chat app with a react template, using Ulema as the local chat lm and embedding generator to enable a retrieval augmented generation chat powered by local models.
Learn to build a production-grade rag chat app by integrating the quadrant vector database with a Dotnet Aspire orchestrated multi-service architecture, using OpenAI and GitHub modules.
Build a .NET image analysis app using multi-modal models and Microsoft Extensions AI NuGet packages to perform image recognition, analyze traffic cams, and answer complex questions via API prompts.
Build a .NET console app that loads a local image and uses GPT five mini via GitHub modules to produce intelligent image analysis.
Build a traffic cam analysis app that uses AI to generate structured output JSON with traffic status, car count, and truck count from camera images.
Download the lava vision model for Ollama, run the Ollama container locally with Docker, download the vision module, and prepare for local image analysis on your machine.
Develop a .NET image analysis app that uses the level vision model via Microsoft Extensions AI and Ollama to analyze images locally, describe scenes, and answer color-based questions.
Build semantic product search in a .NET Aspire e-commerce app by integrating quadrant vector storage, text embeddings, and the GPT five mini via a Blazor front end.
Discover the eShop distributed microservices architecture built with dotnet aspire, navigating catalog, basket, and ordering services with a Blazor client and end-to-end scenarios, preparing for semantic search and intelligent features.
Add AI chat to the eShop catalog microservice by integrating the OpenAI GPT five mini model, configuring secrets, installing AI packages, and registering the chat client in dependency injection.
Develop a product ai service in the business layer that powers ai-driven customer support, using a catalog dbcontext and chat client to feed a system prompt to the llm.
Create a /support/query endpoint by wiring the catalog microservice to the product endpoint class, injecting the product AI service to return AI-generated chat responses from the LM.
Develop chat UI pages to consume the catalog microservices support endpoint by building a floating Blazor chatbox component, wiring it to the catalog API client and GPT five mini.
Add the Qdrant vector database into the dotnet aspire distributed environment, enabling semantic search with embeddings, containerized hosting, persistent data, and seamless connection to catalog microservices.
Develop Qdrant client integration using the Microsoft Extensions vector data abstractions, semantic kernel connectors, and the Aspire Quadrant client to enable vector stores, embeddings, and queries.
Register the quadrant client extension in catalog microservice's Program.cs and add the quadrant collection to enable embedding storage for semantic search in the quadrant vector database.
Register an embedding generator in the catalog program.cs to produce on-demand text embeddings with a single OpenAI client, enabling semantic search with the quadrant vector database.
Develop a product vector domain entity to store embeddings for semantic search in the catalog microservices, using vector store attributes and cosine similarity to enable AI-enabled, loosely coupled search.
Develop a traditional keyword search in the product service and lay the foundation for AI-powered semantic search using embedding vectors and a vector database in the product AI service.
Develop the product ai service to enable semantic search by embedding products into the quadrant vector store, generating query embeddings, retrieving top matches, and loading full product details from PostgreSQL.
Develop two endpoints in the product endpoints for traditional keyword search and AI-driven semantic search using embeddings.
Test catalog microservices search endpoints by running traditional keyword search against hiking queries and AI semantic search using embeddings, followed by vector search in the Quadrant vector database.
Build a Blazor front-end search page by adding a search bar and an AI search toggle, and unify catalog API calls to support semantic or traditional keyword search.
Test a Blazor web app's semantic search against traditional keyword search, showcasing embeddings and end-to-end microservice to front end integration for intelligent .NET apps.
Invite learners to share reviews and feedback to improve this GenAI for .NET course, while following the instructor on GitHub, Twitter, and Medium.
In this hands-on course, you'll learn to integrate OpenAI, Ollama and .NET's new Microsoft-Extensions-AI (MEAI) abstraction libraries to build a wide range of GenAI applications—from chatbots and semantic search to Retrieval-Augmented Generation (RAG) and image analysis.
Throughout the course, you’ll learn:
.NET + AI Ecosystem
You'll learn about Microsoft's new abstraction libraries like Microsoft-Extensions-AI, which makes it super easy to integrate & switch different LLM providers like OpenAI, Azure AI, Ollama and even self-hosted models.
Setting Up LLM Providers
Configure the LLM providers—such as GitHub Models, Ollama, and Azure AI Foundry—so you can choose the best fit for your use case.
Text Completion LLM w/ GitHub Models OpenAI gpt-5-mini and Ollama llama3.2 Model model
You’ll learn how to use .NET to integrate LLM models and performs Classification, Summarization, Data extraction, Anomaly detection, Translation and Sentiment Analysis use cases.
Build AI Chat App with .NET and gpt-5-mini model
You'll develop back-and-forth conversation based messaging with LLM and user where the AI maintains context across multiple user turns. We will use Chat Streaming features when developing AI Chat Application.
Function Calling with .NET and gpt-5-mini model
Develop a function that will trigger from OpenAI GPT-5-mini. The model returns structured JSON specifying which .NET function to invoke, along with arguments for retrieving real-time data.
.NET AI Vector Search using Vector Embeddings and Vector Store
We’ll also cover Vector Search, a powerful feature that allows semantic search based on meaning—not keywords.
You’ll learn how to:
Generate embeddings using OpenAI’s text-embedding-3-small or Ollama’s all-MiniLM embeddings model,
Store these in a vector database like Qdrant
Query the vector store with user embedding to find top matches by similarity
Retrieve relevant data based on similarity searches—all in our .NET applications.
RAG – Retrieval-Augmented Generation with .NET
You’ll learn how to combine vector search results with LLM responses to:
Retrieve relevant data from your own sources
Break documents into chunks → embed them → store in vector DB
At query time, embed the question → retrieve relevant chunks → pass them along with the user’s query to the LLM
Get accurate, context-specific answers using your internal data from LLM
We’ll implement the full RAG flow with real examples using .NET and Qdrant.
Image Analysis with .NET AI
Cover image recognition and analysis, showing how to send images to AI models, receive tags, captions or visual summaries and integrate those capabilities directly into your .NET apps
Vision models for object recognition, classification, or captioning
Combining text and image processing to build more powerful, multi-modal applications for traffic cam analysis operations
Final Project: E-Shop Semantic Search with .NET Aspire
You’ll build a complete full-stack AI-powered EShop Vector Search app step by step.
We’ll use:
.NET Aspire for service orchestration
Qdrant as our Vector Database
and GPT-5 Mini or Ollama’s local models to generate embeddings and respond intelligently to user queries
In this project, you’ll:
Generate product embeddings with OpenAI text-embeddings or Ollama all-minilm
Store them in Qdrant Vector DB for fast similarity search
Implement a RAG flow that provides semantic search over our EShop product catalog
Enable users to search products by meaning—not just keywords
This project brings everything you learn in this course into a single, full-stack, real-world app.
By the end of this course, you'll have the tools and confidence to build intelligent, GenAI-powered apps in .NET.