Skip to content

About

Five lessons, learn how to really apply AI to your .NET Applications

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

3.2k stars

Watchers

46 watching

Forks

Latest commit

Β 

History

991 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Generative AI for Beginners .NET - A Course

Practical lessons teaching you how to build Generative AI applications in .NET

GitHub license GitHub contributors GitHub issues GitHub pull-requests PRs Welcome

GitHub watchers GitHub forks GitHub stars

Azure AI Community Discord

Microsoft Foundry GitHub Discussions

Generative AI for Beginners .NET logo

Welcome to Generative AI for Beginners .NET, the hands-on course for .NET developers diving into the world of Generative AI!

This isn’t your typical β€œhere’s some theory, good luck” course. This repository is all about real-world applications and live coding to empower .NET developers to take full advantage of Generative AI.

This is hands-on, practical, and designed to be fun!

Don't forget to star (🌟) this repo to find it easier later.

➑️Get your own copy by Forking this repo and find it next in your own repositories.

✨ What's New

We're constantly improving this course with the latest AI tools, models, and practical samples:

  • 🎯 Decision-powered Hosted Agent: new sample (November 2026)

    Route synthetic support tickets with a custom Microsoft Agent Framework AIAgent and the native Microsoft-Decision-1 endpoint. The sample returns a typed decision through Foundry's Responses protocol, without adding a chat model, and includes offline tests plus a C# caller for a deployed Hosted Agent.

    πŸ‘‰ Explore the decision-powered Hosted Agent sample

  • πŸ€– GitHub Copilot SDK with BYOK β€” new sample (October 2026)

    Use the GitHub Copilot SDK from .NET with your own model deployment hosted in Microsoft Foundry or Azure OpenAI. The sample shows the minimal BYOK (Bring Your Own Key) setup: routing inference through a ProviderConfig, authenticating with AzureCliCredential or an API key, and sending a single model request with tools and skills disabled.

    πŸ‘‰ Explore the Copilot SDK BYOK sample

  • πŸ–₯️ Local AI with Foundry Local β€” 10 samples (August 2026)

    Run Generative AI models locally from .NET using Microsoft Foundry Local. Ten production-ready samples demonstrate chat, streaming, practical scenarios, audio transcription, agent tools, and live speech-to-textβ€”including multilingual transcription with automatic language detection and explicit locale selectionβ€”all with zero cloud costs and full offline capability.

    πŸ‘‰ Explore the Foundry Local Samples

  • πŸš€ Microsoft Agent Framework v1.0 GA (April 2026)

    All 28 MAF samples upgraded from preview to stable v1.0 packages. This includes a breaking change: Microsoft.Agents.AI.AzureAI renamed to Microsoft.Agents.AI.Foundry.

    2 new Hosted Agent scenarios β€” deploy containerized agents to Azure Foundry Agent Service:

    Multi-agent workflows, streaming, persistence, and MCP all production-ready.

    πŸ‘‰ Official GA Release | Foundry Agent Service GA

  • πŸš€ Microsoft Agent Framework Reaches Release Candidate!

    Microsoft Agent Framework has reached Release Candidate (1.0.0-rc1) β€” a framework for building agents and multi-agent systems in .NET. Our samples are being migrated to the RC APIs. In the meantime, explore 25+ Agent Framework samples covering console apps, web chat, multi-agent workflows, and Foundry integration.

    πŸ‘‰ Explore the Agent Framework Samples

  • πŸ§ͺ Optional provider-specific samples

    Additional provider-specific samples remain available in the repo, including Claude-via-Foundry integrations and legacy video-generation experiments. They are useful reference material, but they are not part of the current recommended beginner-to-advanced learning path.

    πŸ‘‰ Browse the MAF samples and CoreSamples

View all previous updates in our What's New archive

πŸš€ Introduction

Generative AI is transforming software development, and .NET is no exception. This course aims to simplify the journey by offering:

  • Short videos for core concepts, alongside current written walkthroughs.
  • Fully functional .NET code samples you can run and explore.
  • Integration with tools, including GitHub Codespaces for seamless setup and fast time-to-code. You can use Azure OpenAI Services / Microsoft Foundry or Ollama for local model hosting.

You'll learn how to implement Generative AI into .NET projects, from basic text generation to building full-fledged solutions using Azure OpenAI Services and local models with Ollama.

πŸ“¦ Each Lesson Includes

  • Videos where available: Recorded overviews complement the written lessons. Unavailable video shortcuts are marked rather than presented as working recordings.
  • Complete Code Samples: Fully functional and ready to run.
  • Step-by-Step Guidance: Simple instructions to help you learn and implement the concepts.
  • Deep Dive References: This course focuses on the practical implementation of GenAI, to get deeper into the theoretical we also provide links to explanations in Generative AI for Beginners - A Course when needed.

πŸ—ƒοΈ Lessons

# Lesson Link Description
01 Introduction to Generative AI
  • What generative AI is and how it differs from traditional programming
  • Why .NET is a first-class citizen for AI development
  • The Microsoft AI stack and where each piece fits
  • How to run samples in GitHub Codespaces or configure local development
02 Generative AI Techniques
  • How to create chat conversations with context and memory
  • How text embeddings work and why they matter
  • How to process different content types including images and documents
  • How to call AI models using Microsoft.Extensions.AI abstractions
03 AI Patterns and Applications
  • How to build semantic search that understands meaning
  • How to implement retrieval augmented generation (RAG)
  • How to create applications that process and understand documents
  • When to use each pattern and how to combine them
04 AI Agents with Microsoft Agent Framework
  • What makes an agent different from a chatbot
  • How to build agents that use tools and take actions
  • How to orchestrate multiple agents working together
  • How to integrate with Model Context Protocol (MCP)
05 Responsible AI
  • How to identify and mitigate bias in AI applications
  • How to implement content safety and guardrails
  • How to build transparency and explainability into your systems
  • Ethical considerations specific to agentic systems

🌐 Multi-Language Support

Language Code Link to Translated README Last Updated
Chinese (Simplified) zh Chinese Translation 2025-06-24
Chinese (Traditional) tw Chinese Translation 2025-06-24
French fr French Translation 2025-06-24
Japanese ja Japanese Translation 2025-06-24
Korean ko Korean Translation 2025-06-24
Portuguese pt Portuguese Translation 2025-06-24
Spanish es Spanish Translation 2025-06-24
German de German Translation 2025-06-24

Note: All translations were updated to match the original content on 2025-06-24. See PR #161 for details.

πŸ› οΈ What You Need

To get started, you'll need:

  1. The .NET 10 SDK or later and a basic understanding of .NET.
  2. A local clone of this repository. A GitHub account is needed only for forking, contributing, or using Codespaces.
  3. One AI provider: Ollama on your machine, or Azure OpenAI / Microsoft Foundry.

Ollama learners do not need an Azure account, Azure CLI, API keys, or Codespaces. The core local route covers chat, history, streaming, structured output, tools, caching, semantic search, RAG, and agents.

For the Azure route, you also need an Azure account and the tools described in the Azure setup guide. Azure Developer CLI (azd) is needed for automated resource provisioning. Cloud-specific services are optional branches, not local prerequisites.

Quick Start with Ollama

Install and start Ollama, then run these commands from the repository root:

ollama pull phi4-mini
dotnet run .\samples\CoreSamples\BasicChat-03Ollama\app.cs

Expect a sentiment analysis of four product reviews. First run restores NuGet packages; models and packages must be downloaded before offline use.

Continue with the local setup and troubleshooting guide, then follow the Ollama-only learning path through all five lessons. That path lists exact commands, models, expected results, and optional network dependencies.


πŸš€ Quick Start with Azure

Automated Setup (Recommended)

For first-time Azure users, we provide an automated setup script that deploys all necessary resources:

# Navigate to the repository root
cd Generative-AI-for-beginners-dotnet

# Run the setup script
./setup.ps1

This will:

  • βœ… Deploy Azure OpenAI resources (gpt-5-mini, text-embedding-3-small)
  • βœ… Create necessary storage and support services
  • βœ… Configure .NET User Secrets automatically
  • βœ… Display your Azure OpenAI endpoint and credentials

For detailed instructions, see Azure Resource Setup Guide.


Manual Setup for Existing Azure Accounts

If you already have an Azure OpenAI account and the models deployed, configure secrets directly:

# Set shared secrets (used by all samples)
dotnet user-secrets set --id genai-beginners-dotnet "AzureOpenAI:Endpoint" "https://<your-region>.openai.azure.com/"
dotnet user-secrets set --id genai-beginners-dotnet "AzureOpenAI:Deployment" "gpt-5-mini"
dotnet user-secrets set --id genai-beginners-dotnet "AzureOpenAI:EmbeddingDeployment" "text-embedding-3-small"

Then navigate to any sample and run:

cd samples/CoreSamples/BasicChat-01MEAI
dotnet run app.cs

Note: Azure OpenAI samples use az login for authentication. Run az login before running any Azure sample.

For detailed manual setup options, see Azure Resource Setup Guide.


🧹 Resource Cleanup

When you're done with the course, clean up Azure resources to avoid ongoing charges:

./cleanup.ps1

This will:

  • Delete all Azure resources
  • Clear local configuration
  • Remove User Secrets

Learn more in Azure Resource Setup Guide - Cleanup.

Dependency maintenance and validation

Samples pin NuGet versions for reproducible builds. The dependency refresh targets current stable releases; preview-only integrations and samples that already require newer preview APIs retain explicit preview versions. Keeping packages current reduces exposure to known dependency issues, but is not a security guarantee.

To check direct and transitive dependencies for a solution without calling an AI service:

dotnet restore .\samples\CoreSamples\CoreGenerativeAITechniques.sln -p:EnableWindowsTargeting=true -p:NuGetAuditMode=all -warnaserror:NU1901,NU1902,NU1903,NU1904
dotnet list .\samples\CoreSamples\CoreGenerativeAITechniques.sln package --vulnerable --include-transitive

Repeat for each affected solution. Build CI treats known NuGet vulnerability advisories as errors, and Dependabot monitors the current samples directories. For local inference and documentation checks, follow the Ollama validation instructions. Cloud services, microphones, cameras, and other model runtimes require their own configured environments; a successful build does not verify those runtime integrations.

🀝 Want to Help?

Contributions are welcome! Here's how you can help:

  • Report issues or bugs in the repo.

  • Improve existing code samples or add new ones, fork this repo and propose some changes!

  • Suggest additional lessons or enhancements.

  • Do you have suggestions or found spelling or code errors?, create a pull request

Check the CONTRIBUTING.MD file for details on how to get involved.

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

🌐 Other Courses

We have a lot of other content to help your learning journey. Check out:

Generative AI Series

Generative AI for Beginners Generative AI (.NET) Generative AI (Java) Generative AI (JavaScript)


Core Learning

ML for Beginners Data Science for Beginners AI for Beginners Cybersecurity for Beginners Web Dev for Beginners IoT for Beginners XR Development for Beginners

Getting Help

If you get stuck or have any questions about building AI apps, join:

Microsoft Foundry Discord

If you have product feedback or errors while building visit:

Microsoft Foundry Developer Forum

About

Five lessons, learn how to really apply AI to your .NET Applications

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

3.2k stars

Watchers

46 watching

Forks

Releases

Used by

Contributors

Languages