Interested in working with AI in .NET? Here's a collection of samples, tutorials, SDKs, and videos to help you get started and go deeper. Topics covered currently include generative artificial intelligence (GenAI) and large language models (LLMs).
Inspired by frontend-dev-bookmarks, ruby-bookmarks, awesome-machine-learning, awesome-generative-ai and awesome-dotnet.
Contributions are always welcome! Please take a look at the contribution guidelines and quality standard pages first. If you find issues with the content/links here, you can also report them. If you have general feedback, or have a request for a specific sample, feel free to ask in the Discussions section as well.
Note: This list is currently hosted on GitHub by me, Jordan Matthiesen, and inclusion here doesn't imply a direct endorsement from me or my employer. I'm including projects I (and other contributors) find useful and think that the broader .NET developer community will find helpful. Feedback is welcome!
- Generative AI with .NET for Beginners - An introductory course from Microsoft, summarizing the differences betwen Generative AI, Machine Learning (ML) and how you can get started with both.
- Generative AI for the .NET Developer | .NET Conf 2023 - .NET Conf 2023 session: Intro to Generative AI - a 30 minute intro to the core concepts of Gen AI along with sample code.
- Building Intelligent Apps with .NET and Azure - .NET Conf 2023 session with a guided walkthrough to using OpenAI APIs, through the Azure OpenAI SDK, with .NET.
- OpenAI with .NET Samples Notebook | Announcement Post - Lots of sample notebooks (using Polyglot notebooks) showing how to perform various actions against OpenAI with .NET.
- Blog series; Get started with OpenAI in .NET - Blog series overview of using OpenAI with .NET (other posts in the series included below):
- Get started with OpenAI Completions with .NET - An intro to completions from with OpenAI, the responses generated by a model like GPT.
- Level up your GPT game with prompt engineering - An introduction to prompt engineering, how to refine them, and get more relevant results.
- Get started with ChatGPT in .NET - Describes what is ChatGPT and core concepts like roles and chat history.
- .NET + AI news from the .NET Blog - This is the AI category of the official .NET blog from Microsoft, where you can find the latest AI-specific posts from the .NET team.
- .NET + AI on StackOverflow - Search results for the
.net
+artificial-intelligence
tags on StackOverflow, a great place to post questions to the community. - Azure AI Community - Discord community for discussions about Azure AI.
- Build your own Course Assistant with AI "Are you using Azure OpenAI Service to build Copilot applications? Do you understand the concept of Copilot Stack? In this session we will use Semantic Kernel to build your first Copilot application based on Copilot Stack." - Hosted by Luis Quintanilla (Microsoft) and Kinfey Lo (Microsoft)
- Start your AI and .NET Adventure with #30DaysOfAzureAI
- Azure Search with OpenAI - C# Sample - Documentation | Announcement Post ChatGPT + Enterprise data with Azure OpenAI and Cognitive Search (.NET)
- eShop Reference Application
- Using Phi2 with TorchSharp - A sample demonstrating how to access the Phi2 model in your local system, using .NET with the help of the TorchSharp library.
- Using Llama2 with TorchSharp - This sample shows how to use the Llama2 model from your local system, using .NET with the help of the TorchSharp library.
- Generate images with Azure OpenAI Servide - Quick start tutorial showing how to use the Azure OpenAI SDK for C# to generate images using DALL-E.
- Generate images with AI using Stable Diffusion, C#, and ONNX Runtime - Overview of how you could access the Stable Diffusion model to generate images using .NET with the ONNX runtime
- Demystifying Retrieval Augmented Generation with .NET - A detailed walkthrough of how to work with your data in .NET, using the concept known as Retrieval Augmented Generation.
- AugmentR - An example chat bot demonstrating the use of Semantic Kernel in a .NET Aspire project, augmenting chats with data from public internet URLs.
- Vector Search AI Assistant - Demo app showing how to combine data from CosmosDB, with Azure OpenAI Services and queries against cognitive search to create an AI search assistant.
- Vector Search AI Assistant with MongoDB - Demo app showing how to combine data from Azure CosmosDB for MongoDB, with queries against Azure OpenAI Services.
- Azure OpenAI: OpenAI Assistants client library - [Pre-release] Reference documentation for the OpenAI Assistants support in the Azure OpenAI SDK, includes example code.
- Building generative AI powered bots with Teams Toolkit and AI library for .NET | .NET Conf 2023 - How to create bots for use in Microsoft Teams, using generative AI and .NET.
- Enable Hybrid Search (Vector + Semantic) for your external data on Copilot for Microsoft 365 using Azure AI Search and .NET - Microsoft sample showing how to integrate Azure Search in a Teams message extension.
- Semantic Kernel - SDK built by Microsoft that lets you "build agents that can call your existing code." Provides native support for working in .NET.
- LangChain [Unofficial] - .NET implementation of the popular LangChain Python project. Note: Currently it's in an early state, and looking for contributors!
- Milvus C# SDK - A .NET SDK for working with the Milvus vector DB solution.
- Qdrant .NET SDK - SDK for working with the Qdrant vector DB.
- Pinecone - [Unofficial] Community supported SDK for working with the Pinecone vector DB.
- Azure OpenAI - An overview of the Azure OpenAI service and including Quick Start samples for .NET.
- Azure OpenAI Service Samples - Sample notebooks demonstrating how to use the Azure OpenAI SDK, with may samples in C#/.NET as Polyglot Notebooks.
- Azure Functions bindings for OpenAI's GPT engine - [In Development] Very early review of new OpenAI bindings in Azure Functions, including support for C#.