Building the first AI App in .Net – step 1: Calling an OpenAI API

With all the hype around AI, I was thinking it is a good time to actually build something simple, that will explain the basic principles of AI systems and LLMs. There are so many notions out there, so many new things, and technology is advancing so rapidly that even senior engineers have a rough time staying up to date. In order to make this as simple as possible, I will begin with the simplest example of how to integrate an AI API into a .Net app, and then build on that adding more features that will make clear a lot of concepts like : RAG, embeddings, grounding, chunking, guardrails, .Net agents and so on. I will build this in a public github repository, each step on a particular branch. Step 1 – From an LLM Call to a Grounded Application Note, before you try to run the code below, make sure you go over to https://platform.openai.com/ and generate an API key. Before running the application, create an OpenAI API key and configure it using .NET User Secrets or another secure configuration mechanism. You can test with your key in the appSettings.json also but never commit API keys to source control….

You’re a good developer. Do you actually understand what AI people are talking about?

If you’ve ever been in a meeting where someone casually said “we just need to add RAG,” and you nodded while secretly searching what that meant under the table, this post is for you. The AI space moves so fast that even experienced developers can suddenly feel surrounded by unfamiliar buzzwords overnight. Terms like temperature, tokens, context window, embeddings, fine-tuning, and RAG get thrown around constantly, often without much explanation. This post is meant to build that foundation. I’ll walk through the core concepts and definitions you need to understand modern AI development. Don’t just skim the terms — try to understand the idea behind each one. Treat this post as a reference you can revisit from time to time, so the next time your company or team discusses a new AI strategy, you’ll understand what’s actually being talked about. You Are Not Behind. But You Do Need to Learn Some New Words. I have been writing code for a long time. Long enough to remember when JSON format was the future, when microservices were going to solve everything, when containers were the thing everyone had to learn or get left behind. Every few years something arrives that feels like…