AI-103: Developing AI Apps and Agents on Azure for Python Developers
Build production-ready generative AI solutions and agents on Microsoft Foundry using the OpenAI Responses API, Foundry Agent Service SDK, Microsoft Agent Framework, Azure AI Search, Content Understanding (documents + video), Vision, and Voice Live — aligned to the AI-103 certification.
View badge details
Exam Preparation Included
Practice with real exam-style questions for the AI-103 certification. AI-powered feedback helps you understand every answer.
About This Course
Prepare for the AI-103 certification by designing, building, securing, and evaluating generative AI solutions on Microsoft Foundry. Across 14+ hands-on lessons, you will provision Foundry accounts and projects, implement keyless managed-identity auth, design responsible AI safeguards, wire up tool-calling chats via the OpenAI Responses API, build RAG pipelines with evaluation, orchestrate single and multi-agent systems using the Foundry Agent Service SDK and the Microsoft Agent Framework (including Agent-to-Agent federation), fine-tune your own models, process images and speech, build voice-live agents, and extract structured data with Azure AI Content Understanding for both documents and video. The course culminates in the Northwind Horizon capstone a unified FastAPI service that combines chat, RAG, agents, vision, speech, and extraction behind a single API surface.
Course Curriculum
32 Lessons
Model Selection & Foundry Tools
Learn how to choose the right model for a workload across the full Foundry catalog — Azure Direct models (OpenAI, Phi) and partner/community models (Anthropic Claude, Meta Llama, Mistral, Cohere, DeepSeek) — using task type, modality, context window, cost, latency, and deployment type as decision inputs. You'll learn deployment type trade-offs (Global Standard, Provisioned, Batch, DataZone, Managed Compute), how Foundry Tools (Bing Grounding, Code Interpreter, File Search) augment base models, and which models support function/tool calling. In the hands-on lab that follows, you'll deploy three models and benchmark them on the same prompt set.
Model Selection & Foundry Tools - Lab Exercises
Deploy three Foundry models, then benchmark them on latency, token usage, and tool-calling support using the model-explorer starter project. You'll finish compare_models.py and toolcall_probe.py using the Responses API via AIProjectClient.get_openai_client().
Foundry Infrastructure & Deployments
Author Bicep to provision a Foundry hub and project, wire up connections to AI Search, Storage, and Application Insights, then deploy it with azd/az and set up a GitHub Actions pipeline using OIDC federated authentication. You'll also deploy a model into the project via ARM.
Foundry Infrastructure & Deployments - Lab Exercises
Finish the Bicep template for a full Foundry stack (hub, project, AI Search, Storage, App Insights), deploy it with a shell script, then add a GitHub Actions workflow that redeploys on push using OIDC federated credentials.
Manage, Monitor, Secure AI
Replace keys with managed identity, apply quotas, add monitoring, and use private endpoints. You'll learn how to configure a user-assigned managed identity, use DefaultAzureCredential from code, assign the right RBAC roles, set TPM quotas, wire Azure Monitor + Log Analytics, and add private endpoints to the Foundry project and AI Search.
Manage, Monitor, Secure AI - Lab Exercises
Migrate a FastAPI chat endpoint from AZURE_OPENAI_API_KEY to keyless authentication using DefaultAzureCredential and AIProjectClient.get_openai_client(), then deploy bicep/identity.bicep to provision a user-assigned managed identity with the Azure AI User role assignment on the Foundry scope.
Responsible AI in Foundry
Learn how to apply responsible AI controls end-to-end on Microsoft Foundry: content filter policies on model deployments, Azure AI Content Safety for runtime moderation, Foundry Evaluations for quality and safety scoring, OpenTelemetry tracing, and human-in-the-loop approval gates. This lesson maps to AI-103 objective 1d and prepares you to build responsible generative apps that meet enterprise governance requirements.
Responsible AI in Foundry - Lab Exercises
Hands-on lab for AI-103 Lesson 5. You will build a responsible-AI orchestrator using Azure AI Content Safety as a pre/post filter, run Foundry Evaluations (groundedness, relevance, violence, hate) against an eval dataset, and add a human approval gate. Starter repo: ai-103-responsible-ai.
Build Generative Apps Part 1 — Chat & Tool Calling
Learn how to build chat endpoints that leverage the OpenAI Responses API through Microsoft Foundry. Understand how to author function tool schemas, handle tool_call items, chain tool results with previous_response_id, and stream tokens. This lesson maps to AI-103 objective 2a (part 1) and prepares you to build production chat apps with tool calling on Azure.
Chat & Tool Calling - Lab Exercises
Hands-on lab for AI-103 Lesson 6. You will implement a FastAPI /chat endpoint that calls the OpenAI Responses API via AIProjectClient.get_openai_client(), wire three function tools (get_weather, calculate, lookup_inventory), chain tool outputs with previous_response_id, and add streaming. Starter repo: ai-103-chat-tools.
Fine-tuning Foundation Models in Foundry
Learn when and how to fine-tune foundation models in Azure AI Foundry. Covers the decision framework (prompt vs RAG vs fine-tune), JSONL training data, SFT/DPO/RFT methods, the full lifecycle, cost + two-phase retirement, and the common failure modes to design around.
Fine-tuning Foundation Models in Foundry - Lab Exercises
Note: This lab pre-provisions Azure resources at start — allow up to 10 minutes for the environment to become ready before beginning the exercises.
In this hands-on lab you fine-tune a gpt-4.1-mini foundation model on Summitline Outfitters' curated gear-recommendation dataset, deploy the fine-tuned model on a Developer-SKU deployment, and compare it against the base model on held-out Summitline test prompts. You will inspect the JSONL training format, submit a Supervised Fine-Tuning (SFT) job against the Foundry Azure OpenAI endpoint, poll job status + inspect loss / validation metrics, deploy the trained artifact keylessly, and eyeball a side-by-side quality comparison that shows the fine-tune consistently names in-catalog SKUs (pattern NW-SL-###) and cites the tool it used — where the base model does not.
Build Generative Apps Part 2 — RAG & Evaluation
Learn to build Retrieval-Augmented Generation (RAG) applications on Microsoft Foundry: author an AI Search index with vector + keyword + semantic configuration, ingest and embed documents, query with VectorizedQuery + semantic ranking, ground responses with citations, and evaluate quality with azure-ai-evaluation. This lesson maps to AI-103 objective 2a (part 2) and is core for the exam.
RAG & Evaluation - Lab Exercises
Hands-on lab for AI-103 Lesson 7. You will create an Azure AI Search index, ingest and embed documents from sample_docs/, implement a /chat endpoint grounded on hybrid + semantic search, and run azure-ai-evaluation groundedness + relevance evaluators against eval_data.jsonl. Starter repo: ai-103-rag-eval.
Agent Service Fundamentals
Teaching lesson that introduces the Microsoft Agent Framework runtime pattern for building agents on Microsoft Foundry: FoundryChatClient constructed with a project endpoint + model deployment + system prompt + Python function tools, plus AgentThread for multi-turn conversation state. Concepts land here so students can execute them in Lab 2255 (Concierge Agent hands-on).
Agent Service Fundamentals - Lab Exercises
Build a "Summitline concierge" agent with three function tools (get_weather, calculate, lookup_inventory) using the Azure AI Agents Service. You will author the AgentsClient + ToolSet wiring, drive a multi-turn thread, handle automatic tool execution, and pull a transcript back out.
Knowledge Tools & File Search
Teaching lesson on grounding an Agent Framework agent with structured knowledge sources: uploading documents to a Foundry vector store and calling it via a function tool, wiring an Azure AI Search index as a function tool with SearchClient + VectorizableTextQuery, and building a Content Understanding function tool for domain-specific extraction. Concepts land here so students can execute them in Lab 2259.
Knowledge Tools & File Search - Lab Exercises
Attach three knowledge tools to a Summitline Outfitters agent: FileSearchTool backed by a vector store of product PDFs, AzureAISearchTool bound to an AI Search connection, and a custom Content Understanding invoice extractor. Test routing by sending catalog, KB, and invoice questions at the same agent and inspecting citations.
Multi-Agent & Approval Flows
Teaching lesson on multi-agent orchestration under Microsoft Agent Framework: each sub-agent is its own FoundryChatClient, and an orchestrator agent delegates to them via Python function tools that internally call sub_agent.run(...). Also covers human-in-the-loop approval gates and OpenTelemetry instrumentation. Concepts land here so students can execute them in Lab 2262.
Multi-Agent & Approval Flows - Lab Exercises
Stand up an orchestrator agent that delegates to refund + lookup worker agents via ConnectedAgentTool, add a FastAPI approval queue that pauses refunds over $100 until a human approves, and wire OpenTelemetry through azure-monitor-opentelemetry so every span lands in Application Insights.
Computer Vision — Generation, Understanding, Responsible AI
Certification prep lesson covering Azure OpenAI vision (Responses API with input_image) and gpt-image-1 generation / inpainting, with a caption-and-detect pipeline and responsible AI guardrails. Uses keyless DefaultAzureCredential and the Microsoft Learn MCP as the API source of truth.
Computer Vision - Lab Exercises
Hands-on companion for Lesson 11. Students complete four Vision exercises in the ai-103-vision FastAPI starter: generate, edit/inpaint, caption, and caption+detect with drawn bounding boxes. Keyless auth, Azure Validator checks each endpoint, and a capstone AI assessment closes the lab.
Video Understanding with Content Understanding
Learn how to process, analyze, and reason over video content using Azure Content Understanding in Foundry Tools. Covers single-task vs pro-mode analyzers, field schema design for video, multimodal reasoning over video output, agent integration with timestamped citations, and an honest briefing on the state of video generation in Foundry (Sora discontinuation) and how it affects the AI-103 exam.
Video Understanding with Content Understanding - Lab Exercises
Note: This lab pre-provisions Azure resources at start — allow up to 10 minutes for the environment to become ready before beginning the exercises.
You are on the Summitline Outfitters engineering team building the video-analytics side of the product-support toolset. In this hands-on lab you will (1) upload sample product-demo videos to Azure Blob Storage, (2) author a Content Understanding pro-mode video analyzer with a Summitline-specific JSON schema (products demonstrated, key features shown, scene summary, presenter quality, duration), (3) invoke the analyzer and inspect the segmented output, (4) index each analyzer segment into Azure AI Search with vector embeddings from text-embedding-3-large, (5) wrap the whole flow as a Foundry agent FunctionTool that returns results with timestamped citations, and (6) run an end-to-end query — "show me videos where the tent is set up in windy conditions" — that reasons across the indexed segments. All auth is keyless via DefaultAzureCredential; no API keys are used.
Text Analysis & Speech
Certification prep lesson on Azure AI Language (entities, sentiment, opinion mining), Azure Speech SDK 1.46 (STT, TTS, continuous recognition, translation), and Translator v3.0 REST. Keyless auth where supported; Microsoft Learn MCP is the canonical API reference.
Text Analysis & Speech - Lab Exercises
Hands-on companion for Lesson 12. Students complete three exercises in ai-103-text-speech: Azure AI Language analyze (entities+sentiment+opinions), Speech STT/TTS round-trip, and Translator v3.0 text translation. Azure Validator confirms each FastAPI endpoint.
Voice Live Agents with Azure Speech and Foundry
Build hands-free, real-time voice agents for Summitline Outfitters store associates using Azure Speech Voice Live and a Foundry agent. Learn the WebSocket speech-to-speech architecture, session configuration, voice + VAD tuning, function-tool invocation over voice, latency budgets, and failure-mode handling.
Voice Live Agents with Azure Speech and Foundry - Lab Exercises
Note: This lab pre-provisions Azure resources at start — allow up to 10 minutes for the environment to become ready before beginning the exercises.
Build the hands-free product-question voice agent for Summitline Outfitters using the Azure Voice Live API and a Microsoft Foundry hosted agent. You will deploy a Foundry agent backed by an Azure AI Search RAG index over Summitline product docs (tent, backpack, sleeping bag, jacket, boots), wire the agent behind a Voice Live real-time WebSocket session, drive it with pre-recorded WAV files (the container is headless — no microphone), demonstrate barge-in interruption, and register a check_inventory(sku) function tool the agent can invoke mid-conversation. All auth is keyless via DefaultAzureCredential.
Retrieval & Information Extraction
Certification prep lesson on Azure AI Search 11.6 hybrid + semantic retrieval (HNSW vector, VectorizedQuery, QueryCaptionType), and Azure Content Understanding 2024-12-01-preview analyzer lifecycle (PUT, analyze, poll, read fields). End-to-end: CU extract then index.
Retrieval & Information Extraction - Lab Exercises
Hands-on companion for Lesson 13. Four exercises in ai-103-ingest-extract pipeline: Content Understanding extract with analyzer lifecycle and polling, chunk+embed+ingest, create HNSW+semantic index, hybrid semantic query with captions and answers.
Capstone — Summitline Outfitters AI Platform
Capstone lesson unifying chat, RAG, tool-using agents (Azure AI Agents 1.1.0 with AgentsClient + ToolSet + FunctionTool), vision, Content Understanding, and speech behind a single FastAPI app. Azure Monitor OpenTelemetry tracing with DefaultAzureCredential throughout. Business framing: Summitline Outfitters — a specialty outdoor-gear retailer rolling out an AI concierge + internal knowledge platform.
Capstone — Summitline Outfitters - Lab Exercises
Hands-on Summitline Outfitters capstone. Four exercises in ai-103-capstone: chat+tracing with AIProjectClient and Azure Monitor OTel, grounded RAG with citations, tool-using agent via AgentsClient 1.1.0 with FunctionTool for get_order_status, Content Understanding invoice extract, and the full test_client.py smoke test. All six endpoints (/chat, /rag, /agent, /vision-ask, /extract-doc, /voice) observable in App Insights.