ERW CommandPMO

AI CERTIFICATION TRAINING

Microsoft Azure AI Fundamentals — Exam AI-901

← Course home
25-Day Programme · 30 Minutes Per Day
WEEK 3 OF 5 · SESSIONS 11–15 · WORK AT YOUR OWN PACE
Exam AI-901: Microsoft Azure AI Fundamentals · Pass mark 700 · Domain 1 — Identify AI concepts and capabilities (40–45%) · Domain 2 — Implement AI solutions using Microsoft Foundry (55–60%)
Domain 2 · Microsoft FoundryDAY 11
Inside Microsoft Foundry: The Portal, Projects and Model Catalog
Day 11 of 25 · 30-Minute Module

Why This Matters

Welcome to Week 3 — this is where it stops being theory and your hands touch the real tools. For two weeks you learned what AI is and how it works. From today you work inside Microsoft Foundry, the exact platform this exam is built around and the one real companies use to ship AI. Domain 2 is the bigger half of your exam (55–60%), and it lives right here. Take your time getting comfortable in this portal today — when you can move around it with confidence, everything that follows this week will feel like home.

30-Minute Module
6:00 – 16:00
Projects: your workspace inside Foundry
  • Work in Foundry is organised into a project. A project is a container that holds everything for one piece of work — the models you deploy, your settings, and your keys — kept tidily in one place.
  • When you create a project, Foundry also creates the Azure resources behind it. This is the moment to be careful: it must be created inside your own resource group (rg-yourname-ai901), in East US. If you are offered any other resource group or region, stop — you likely do not have permission there, and that is by design.
  • Give it a clear name, for example ai901-project. Good naming is a professional habit: a stranger should be able to guess what a resource is for from its name alone.
  • Do not create the project yet — today is a guided tour. You will create your real project and deploy a model on Day 13. Today, just find where the “Create project” button lives and confirm your own resource group appears as an option.
A project is to Foundry what a folder is to your laptop: one tidy home for one job. Everything you deploy this week goes inside your project, inside your resource group.
25:00 – 30:00
Fix it in your own words
  • Out loud, name the three layers you saw today: the portal (Foundry itself at ai.azure.com), the project (your tidy workspace inside it), and the model catalog (the menu of models you can deploy).
  • Confirm two things for Day 13: that you can sign in to Foundry, and that your own resource group (rg-yourname-ai901) shows up when you look at where a project would be created. If either fails, tell me today — do not wait until Wednesday.
  • Write one line in your AI-901 Notes: “Foundry = the workshop; a project = my workspace inside my resource group; the catalog = the menu of models.”
Do not rush past the sign-in check. Half of getting hands-on work right is simply making sure you can get in the door before the day you need to.
Key Terms

Project

A container inside Foundry that holds everything for one piece of work — models, settings and keys — created inside your own resource group.

Model Card

The “label on the tin” for a model — what it does well, its context-window size, and often its cost. Read it before choosing.

Today’s Assignment

Take a guided tour of Microsoft Foundry and report what you find — without deploying anything.
  • Sign in to ai.azure.com using your own account. Confirm in one line that you got in, and take a screenshot of the Foundry home page.
  • Find where a new project would be created. Confirm your own resource group (rg-yourname-ai901) appears as an option, and confirm the region shown is East US. Do not create the project. Note in one line: does any resource group that is not yours appear? (It should not.)
  • Open the model catalog, pick one text (GPT-family) model, and read its model card. In three or four sentences write down: its name, whether it is text-only or multimodal, and one thing the card tells you about its size or cost.
Submit assignment 11 →
Your work is marked against the published rubric and comes back to you as a written letter, usually within minutes. It is also saved to your progress page, so you can re-read every letter later. Do not submit until you have passed the self-check below.
Self-Check — Exam-Style Questions
1. In Microsoft Foundry, what is the main purpose of a ‘project’?
  • A. It is the billing account for the whole company
  • B. It is a container that holds the models, settings and keys for one piece of work
  • C. It is another name for a token
  • D. It is the role that says what you can do
B. It is a container that holds the models, settings and keys for one piece of work — A project is your tidy workspace inside Foundry, created within your resource group. A role and scope control permissions; a token is a piece of text — different ideas.
2. Where does the model catalog let you browse models, and does browsing it cost money?
  • A. It browses models and browsing alone deploys and bills them immediately
  • B. It lets you browse available models by capability, and browsing costs nothing until you deploy
  • C. It only shows models you have already built yourself
  • D. It is where you set the temperature parameter
B. It lets you browse available models by capability, and browsing costs nothing until you deploy — The catalog is a menu. Looking is free; deploying creates a running resource that spends against the subscription. Knowing that line is an exam-worthy distinction.
3. When you create resources in Foundry, which resource group must they go in?
  • A. Any resource group in the whole company
  • B. A brand-new subscription you create yourself
  • C. Only your own scoped resource group (e.g. rg-yourname-ai901)
  • D. Any resource group in the subscription, since you are signed in
C. Only your own scoped resource group — Your Contributor role is scoped to your own group only. A scoped Contributor cannot create anything outside that scope, and cannot see resource groups beyond it. Role = what you can do; scope = where. That is least privilege in action.
Exam Objectives Covered
Microsoft Foundry portalProjectsModel catalogModel cardsRBAC & scope
Domain 2 · Prompt EngineeringDAY 12
Prompt Engineering: System Prompts vs User Prompts
Day 12 of 25 · 30-Minute Module

Why This Matters

Here is a skill that pays a salary on its own: knowing how to talk to a model so it does what you actually want. It is called prompt engineering, and it is the difference between someone who types a vague question and shrugs at a bad answer, and someone who reliably gets AI to produce useful work. You do not need to be a maths genius for this — you need clarity and care with words, and you can build both. Learn today’s ideas well and you will out-perform people with far fancier CVs.

30-Minute Module
7:00 – 17:00
What makes a good prompt: be clear, be specific
  • Models are literal. Vague in, vague out. “Tell me about phones” gets a shapeless essay; “List three budget smartphones under 150,000 naira, with one strength each, as a bulleted list” gets something you can use.
  • Four habits of a strong prompt: (1) give a role (“you are a helpful sales assistant”); (2) state the task clearly; (3) say the format you want (a list, a table, one paragraph); (4) add any limits (“keep it under 100 words”, “only use the information I give you”).
  • Giving an example inside the prompt is powerful. Showing the model one sample of the output you want — called a one-shot prompt — often works better than describing it. Showing several examples is few-shot. Giving none is zero-shot. These three words are worth knowing by name for the exam.
  • This connects to Day 7’s Responsible AI: a careful system prompt (“if you are unsure, say you do not know”) is one real way you reduce hallucinations and build reliability into an app.
Zero-shot = no examples; one-shot = one example; few-shot = several. Adding an example is often the fastest way to fix a disappointing answer.
25:00 – 30:00
Fix it in your own words
  • Say the difference aloud: a system prompt sets standing rules and tone once; a user prompt is each individual request.
  • In your AI-901 Notes, write the four habits of a good prompt (role, clear task, format, limits) and the three shot words (zero-, one-, few-shot).
  • Do the assignment — it asks you to write prompts, which is the only way this skill sticks. Tomorrow you deploy a real model, and on Thursday you will send these very kinds of prompts to it.
A strong system prompt is worth more than a bigger model. Employers notice the person who can make a small model behave well through good instructions.
Key Terms

System Prompt

Standing instructions that set the model’s role, rules and tone for the whole conversation, before any user question.

Zero / One / Few-shot

How many examples you include in a prompt: none, one, or several. Adding examples often improves the answer.

Today’s Assignment

Become a prompt engineer: write, improve, and label prompts for a real scenario.
  • Part 1. Invent a small business (a shop, a clinic, a school — something real from your area). Write a system prompt for an assistant that would work there. Include a role, its rules, and one instruction that reduces hallucinations (for example, “if unsure, say you do not know”).
  • Part 2. Write two user prompts a customer of that business might send. For each, label it clearly as the user prompt.
  • Part 3. Take this weak prompt — “tell me about our products” — and rewrite it into a strong one using all four habits (role, clear task, format, limits). Then say in one line whether your improved version is zero-, one-, or few-shot, and why.
  • Optionally, do it in Colab as two string variables and paste a screenshot of the printed output.
Submit assignment 12 →
Your work is marked against the published rubric and comes back to you as a written letter, usually within minutes. It is also saved to your progress page, so you can re-read every letter later. Do not submit until you have passed the self-check below.
Self-Check — Exam-Style Questions
1. “You are a helpful assistant for a pharmacy. Only answer questions about medicines we stock.” What kind of prompt is this?
  • A. A user prompt
  • B. A system prompt
  • C. An embedding
  • D. A deployment
B. A system prompt — It sets the model’s standing role and rules for the whole conversation, before any customer question arrives. A user prompt would be the customer’s actual question, like “do you have paracetamol?”
2. You give the model two worked examples of the output you want inside your prompt. What is this called?
  • A. Zero-shot prompting
  • B. Few-shot prompting
  • C. Fine-tuning
  • D. A hallucination
B. Few-shot prompting — Providing several examples in the prompt is few-shot; one example is one-shot; none is zero-shot. Examples steer the model toward the exact format and style you want.
3. Which of these is the best-engineered prompt?
  • A. “Phones.”
  • B. “Tell me stuff about phones.”
  • C. “You are a sales assistant. List three phones under 150,000 naira as bullet points, one strength each, under 80 words.”
  • D. “Write everything you know.”
C — It gives a role, a clear task, a format (bullet points), and limits (three phones, a price cap, a word count). Clear and specific beats vague every time — vague in, vague out.
Exam Objectives Covered
Prompt engineeringSystem vs user promptsZero / one / few-shotReducing hallucinationsPrompt formatting
Domain 2 · Deploy & TestDAY 13
Deploy Your First Model and Interact With It in the Foundry Portal
Day 13 of 25 · 30-Minute Module

Why This Matters

Today you cross a line that most people talking about AI never cross: you deploy a real model and make it answer you. This is a genuine milestone — write today’s date in your notes. You will be spending real credit on your subscription now, so I am trusting you to be careful, and that trust is part of the training. Handling someone else’s cloud budget responsibly is exactly what an employer will one day pay you to do. Go slowly, read each screen, and enjoy this — you have earned it.

30-Minute Module
6:00 – 16:00
Deploy a model from the catalog
  • Open the model catalog inside your project and choose a small, current GPT-family chat model — a smaller one is the right call, both to save credit and because it is plenty for learning (your Day 9 cost-awareness in action).
  • Click Deploy. A deployment (Day 9’s term) is your own running copy of that model that your code and the portal can send prompts to. Give the deployment a simple name you will recognise, such as my-chat-model.
  • Accept the default options unless you have a reason not to. When it finishes, you will see your deployment listed with a status — wait until it shows ready/succeeded before using it.
  • You have now spent a small amount of real credit. That is expected and fine — a smaller model costs very little. But it is why I stress: never share the keys to this, because those keys authorise spending on your subscription.
One deployment is all you need this week. Resist deploying several “to see” — each one is a running resource. One is your workbench for the rest of Week 3.
26:00 – 30:00
Lock it in — and note your keys
  • Find your project’s endpoint and key (often under a “Keys and Endpoint” or project settings area) and note where they live — you will need them on Day 14 to connect from Python. An endpoint is the web address your code sends prompts to; a key is the secret password that proves you are allowed to.
  • Write the key somewhere private in your AI-901 Notes, and never paste it into a chat, an email, a screenshot, or a public place. A leaked key lets a stranger spend my credit. Treat it like the PIN to a bank card.
  • Say aloud the shape of today: create project → deploy a model → test it in the playground. That is the core loop of Domain 2.
When you screenshot anything today, blur or crop out the key first. Protecting a secret in a screenshot is a real habit professionals are judged on — start it now.
Key Terms

Playground

Foundry’s built-in chat area for testing a deployed model with prompts, no code required — the safest place to experiment.

Key

The secret password that authorises requests to your endpoint. It permits real spending, so it must never be shared.

Today’s Assignment

Deploy your first model and prove it answered you — carefully, inside your own resource group.
  • Create your project in your own resource group (rg-yourname-ai901) in East US. Confirm in one line the project name and the resource group it lives in.
  • Deploy one small GPT-family chat model. Note the deployment name and confirm its status shows ready/succeeded.
  • In the playground, set a system prompt of your own and send at least two user prompts. Take a screenshot of the conversation — with your key not visible anywhere.
  • Change the temperature and send the same factual question at a low and a high setting. In two or three sentences, describe the difference you saw. Confirm in one line that you have located your endpoint and key and stored the key privately.
Submit assignment 13 →
Your work is marked against the published rubric and comes back to you as a written letter, usually within minutes. It is also saved to your progress page, so you can re-read every letter later. Do not submit until you have passed the self-check below.
Self-Check — Exam-Style Questions
1. What is a ‘deployment’ in Microsoft Foundry?
  • A. The menu of all available models
  • B. Your own running copy of a model that can receive prompts
  • C. The secret key that authorises spending
  • D. A list of numbers representing meaning
B. Your own running copy of a model that can receive prompts — The catalog is the menu; a deployment is what you get after choosing and deploying one. It runs inside your resource group and is what your code and the playground talk to.
2. In the Foundry playground, you set a factual question and get slightly different answers each time. Which setting should you lower for consistency?
  • A. Max tokens
  • B. The endpoint
  • C. The temperature
  • D. The key
C. The temperature — Low temperature makes the model pick the most predictable next token, giving consistent answers. Max tokens controls length; the endpoint is an address; the key is a password — none of those control randomness.
3. Why must you never share your project’s key?
  • A. It is just a display name and sharing it is harmless
  • B. It authorises requests that spend real credit on the subscription
  • C. Sharing it makes the model slower
  • D. It changes the model’s temperature
B. It authorises requests that spend real credit on the subscription — A key is a secret password. Anyone who has it can send requests billed to the subscription that issued it, so it is treated like a bank PIN — never shared, never shown in a screenshot.
Exam Objectives Covered
Deploy a modelFoundry playgroundEndpoints & keysConfiguration parametersCost awareness
Domain 2 · Foundry SDKDAY 14
Build a Lightweight Chat Client Using the Foundry SDK (Python)
Day 14 of 25 · 30-Minute Module

Why This Matters

Yesterday you talked to your model through a web page. Today you talk to it through code you write yourself — and that is the skill that turns a certificate into a job. Anyone can click buttons; being able to connect an app to an AI model in Python is what makes you employable as a builder, not just a user. Remember, this is exactly the four-step pattern I promised you back on Day 5: Import → Connect → Send → Use. You have been preparing for today for two weeks. Take it slowly and type every line yourself.

30-Minute Module
6:00 – 16:00
Import and Connect
  • Import — type this yourself into a new cell:
    from openai import AzureOpenAI
  • Connect — create a client that points at your endpoint, using your key:
    client = AzureOpenAI(
      azure_endpoint="YOUR_ENDPOINT_HERE",
      api_key="YOUR_KEY_HERE",
      api_version="2024-10-21")
  • Replace YOUR_ENDPOINT_HERE and YOUR_KEY_HERE with the real values from Day 13. The api_version is just the version of the interface you are speaking — use the one shown in your Foundry portal if it differs.
  • Run the cell. If it runs with no red error, your toolbox is imported and your connection is set up. Nothing has been sent yet — you have only introduced your code to the model’s address and shown your password.
Keep your key out of screenshots and never share the notebook with the key still in it. When you send me your work, replace the key with the word HIDDEN first.
26:00 – 30:00
Make it yours — and debug like a pro
  • Change the user content to a different question and run again. Change the system content to a different business and watch the tone change. You are now steering a real model from code.
  • If you get a red error, read the last line first (Day 5’s rule). Common ones: a wrong endpoint or key (check for typos), or a deployment name that does not match Day 13 exactly. These are normal — every developer hits them.
  • If you are stuck for more than ten minutes, email me the exact error text. Being stuck is part of coding; sitting silently on a blocker is the only real mistake.
You have now done the thing most people only talk about: connected an application to an AI model in code. Tomorrow you take one more step — giving that model a task to carry out as an agent.
Key Terms

Client

The object in your code that holds the connection to your model — it knows the endpoint and key and is what you send prompts through.

Chat completion

The request that sends your messages to the model and returns its reply, which you read from response.choices[0].

Today’s Assignment

Build and run your own chat client in Python that talks to your deployed model.
  • In Google Colab, follow Import → Connect → Send → Use to send a system prompt and a user prompt to your Day-13 deployment and print the reply. Take a screenshot of the printed answer — with your key replaced by the word HIDDEN in the code.
  • Change the user prompt to a different question and run again. Paste both answers into your email.
  • In two or three sentences, label which line does each of the four steps (Import, Connect, Send, Use).
  • If you hit an error you could not fix, paste the exact last line of the error and tell me what you tried. A genuine, well-described blocker is a perfectly good submission today.
Submit assignment 14 →
Your work is marked against the published rubric and comes back to you as a written letter, usually within minutes. It is also saved to your progress page, so you can re-read every letter later. Do not submit until you have passed the self-check below.
Self-Check — Exam-Style Questions
1. In the four-step pattern, which step is from openai import AzureOpenAI?
  • A. Connect
  • B. Import
  • C. Send
  • D. Use
B. Import — That line brings the SDK toolbox into your program. Connect is creating the client with your endpoint and key; Send is the chat-completions call; Use is printing the reply.
2. In the messages list, what does the system role carry?
  • A. The individual question from the customer
  • B. The model’s standing rules, role and tone for the whole conversation
  • C. The secret key
  • D. The price per token
B. The model’s standing rules, role and tone — The system message is the system prompt from Day 12, now in code. The user message carries the actual question. Same idea you practised, now sent programmatically.
3. Your code returns a red error. What is the most sensible first move?
  • A. Delete the whole notebook and give up
  • B. Read the last line of the error, then check the endpoint, key and deployment name for typos
  • C. Raise the temperature to maximum
  • D. Share your key publicly so others can test it
B. Read the last line of the error, then check the endpoint, key and deployment name for typos — The last line usually names the problem, and connection details are the most common culprit. Never share a key — that would be a serious Privacy & Security failure.
Exam Objectives Covered
Foundry SDKImport → Connect → Send → UseSystem & user messagesChat completionsEndpoints & keys in code
Domain 2 · AgentsDAY 15
Agents: Create and Test a Single-Agent Solution in Foundry
Day 15 of 25 · 30-Minute Module

Why This Matters

You finish Week 3 on the most exciting idea yet: agents. So far your model has answered questions. An agent is a model given a job and the freedom to carry it out — the leap from a clever chatbot to something that actually gets work done. This is where the industry is heading, and understanding it puts you ahead of most people who only know AI as “a thing that chats”. Three weeks ago you had never opened a cloud portal. Today you build an agent. Sit with how far you have come, then let us finish strong.

30-Minute Module
8:00 – 18:00
Create a single agent in Foundry
  • In your Foundry project (inside your resource group — always), find the Agents area and choose to create a new agent. It will use the model you deployed on Day 13, so you are building on your own work.
  • Give the agent a clear name (for example shop-support-agent) and write its instructions — this is your Day-12 prompt-engineering skill doing real work. Be specific about its role, what it should and should not do, and how to behave when unsure.
  • Keep it to one agent with no extra tools for now — a clean single-agent solution. Save it. You have just created an agent inside your own scope, on your subscription, exactly as a junior engineer would in a real team.
  • Everything stays inside rg-yourname-ai901 — nothing you build here escapes that scope. Least privilege, holding firm even now that you are building real things.
The instructions are the agent. A well-written set of instructions is the whole reason Day 12 mattered — today it stops being practice and becomes the product.
26:00 – 30:00
Close out Week 3
  • Say the week’s arc aloud: you toured Foundry, learned prompt engineering, deployed a model, called it from Python, and built an agent. That is the spine of Domain 2 — the bigger half of your exam — and you have now done all of it, not just read about it.
  • In your AI-901 Notes, write one line for each of the five days this week: the one thing you can now do that you could not on Monday.
  • Tidy up if the portal offers it, but do not stress about deleting things — the budgets and alerts I set protect the subscription. Do the assignment, then rest. Next week you meet the AI services for text, speech and vision.
Fifteen days done, ten to go. You are now past the hardest conceptual climb. From here it is applying what you know to new services — and you already have the shape of all of it.
Key Terms

Instructions

The standing brief that defines an agent’s mission and rules — prompt engineering applied to give an agent its behaviour.

Single-agent solution

One agent doing one job. Larger systems chain several agents (multi-agent), but one is enough to understand and build here.

Today’s Assignment

Build, test and refine a single agent in Foundry — your Week 3 capstone.
  • Create one agent in your Foundry project (inside your own resource group), using your Day-13 deployment. Confirm in one line the agent’s name and the resource group it lives in.
  • Write clear instructions giving it a role, what it should and should not do, and how to behave when unsure. Paste your instructions into the email.
  • Test it three ways: an on-task question, an edge case your instructions handle specially, and an off-topic question. Take a screenshot of each reply (no key visible) and say in one line whether it behaved as you intended.
  • If any answer was wrong, describe how you sharpened the instructions and what changed. Finish with one sentence: what can you now do that you could not on Monday?
Submit assignment 15 →
Your work is marked against the published rubric and comes back to you as a written letter, usually within minutes. It is also saved to your progress page, so you can re-read every letter later. Do not submit until you have passed the self-check below.
Self-Check — Exam-Style Questions
1. What best distinguishes an agent from a plain chat model?
  • A. An agent is cheaper because it uses no tokens
  • B. An agent is given a role, instructions and often tools to carry out a task, not just reply to one message
  • C. An agent cannot use a system prompt
  • D. An agent runs outside any resource group
B. An agent is given a role, instructions and often tools to carry out a task — A chat model answers a message; an agent is set up with a standing mission and can be equipped with tools to actually get a job done. It still uses tokens and lives inside your resource group.
2. In Foundry, what do an agent’s ‘instructions’ do?
  • A. They set the billing limit for the subscription
  • B. They define the agent’s role, rules and behaviour — prompt engineering applied to the agent
  • C. They are the secret key
  • D. They choose which region the resource group is in
B. They define the agent’s role, rules and behaviour — Instructions are the standing brief that shapes how the agent acts — the same prompt-engineering skill from Day 12, now giving an agent its whole personality and mission.
3. A ‘single-agent solution’ means:
  • A. A system where many agents pass work between each other
  • B. One agent carrying out one job
  • C. A model with no instructions at all
  • D. An agent that can only run once and then deletes itself
B. One agent carrying out one job — Single-agent is one agent, one task — what you built today. Chaining several agents together is a multi-agent solution, a more advanced pattern beyond what AI-901 asks you to build.
Exam Objectives Covered
AgentsSingle-agent solutionsAgent instructionsTools (concept)Testing & refiningDomain 2 build workflow
← Back to course home