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, both of you — 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
0:00 – 6:00
What Microsoft Foundry actually is
Microsoft Foundry (you may also see it written as Azure AI Foundry) is Microsoft’s single workspace for building AI solutions. Think of it as the workshop: one place to find models, deploy them, test them, and wire them into an application.
You reach it in a browser at ai.azure.com. There is nothing to install — just like Google Colab in Week 1, it all runs in the browser. You sign in with the same account you created in Week 1.
Foundry sits on top of your Azure subscription. Remember the shape from Week 1: a subscription holds resource groups, and a resource group holds the actual things you create. Everything you build in Foundry lands inside your resource group — and nowhere else.
Reminder of the model from Day 2: your work lives in rg-yourname-ai901 in East US, and a role plus a scope decides what may happen there. A role says what you can do; a scope says where. You cannot see each other’s group, and that is exactly how contractors work in real companies.
If ai.azure.com asks which directory to use, choose the one holding your own subscription. If you have only ever had one Microsoft account there will be just one to pick. Signing into the wrong directory is the most common Day-11 stumble for anyone who has a work account as well as a personal one.
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.
16:00 – 25:00
The model catalog: the menu of models
The model catalog is the part of Foundry you met by name on Day 9 — a browsable menu of every model you can deploy. Open it now and just look; you are window-shopping, not buying.
Notice models are grouped by what they do — the capabilities from Day 9. You will see large language models for text (names in the GPT family), embedding models (turning text into numbers, from Day 6), and multimodal models that also handle images. The catalog is Day 9’s theory made visible.
Click into one model — a GPT text model is a good choice — and read its model card. A model card is the “label on the tin”: what the model is good at, its context-window size in tokens, and often its cost. This is where capability-versus-cost judgement becomes real.
Do not deploy anything today. Deploying creates a running resource that spends against your subscription. Browsing the catalog costs nothing; deploying does. Knowing that difference is itself an exam-worthy idea.
Reading a model card and being able to say “this one handles images, this one is text-only and cheaper” is exactly the skill Day 9 was preparing you for. Theory, meet the real menu.
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
Microsoft Foundry
Microsoft’s browser-based workspace (at ai.azure.com) for finding, deploying, testing and building with AI models. The platform this exam is built around.
Project
A container inside Foundry that holds everything for one piece of work — models, settings and keys — created inside your own resource group.
Model Catalog
The browsable menu of models you can deploy in Foundry, grouped by capability: text, embedding, and multimodal.
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, which both of you already have. Learn today’s ideas well and you will out-perform people with far fancier CVs.
30-Minute Module
0:00 – 7:00
Two kinds of prompt: system and user
A prompt is simply the text you send a model. But there are two roles of prompt, and knowing the difference is core exam material.
The system prompt sets the model’s standing instructions — its job, its rules, its tone — before any conversation starts. Think of it as briefing a new employee on their first morning: “You are a polite customer-service assistant for a Lagos electronics shop. Only answer questions about our products. If you do not know, say so.”
The user prompt is the actual question or request from the person using the app: “Do you have this phone in stock?” It comes after the system prompt and can change with every message.
The model reads both together. The system prompt shapes how it behaves across the whole conversation; the user prompt is what is being asked right now. Set the standing rules once, ask many questions against them.
System prompt = the job description you give the model once. User prompt = each individual request that comes in. The exam loves asking you to tell these two apart.
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.
17:00 – 25:00
See it in Colab — write two prompts by hand
Open colab.research.google.com and start a new notebook. You are not calling a real model yet (that is Day 14) — today you practise shaping prompts as plain text. Type this yourself, do not paste:
system_prompt = "You are a polite assistant for a Lagos electronics shop. Only answer about our products. If unsure, say you do not know."
user_prompt = "Do you sell laptop chargers, and what is the price?"
Now print them together to see what the model would receive: print("SYSTEM:", system_prompt) print("USER:", user_prompt)
This is the same idea you will use for real on Day 14 — a system message that sets the rules, and a user message that carries the question. Getting the shape into your fingers now means Thursday’s real code will feel familiar.
Notice these are just strings — text in quotes, the Week-1 building block. Prompt engineering is not magic; it is careful writing stored in ordinary variables.
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
Prompt
The text you send to a model. Everything the model does is a response to the prompt it receives.
System Prompt
Standing instructions that set the model’s role, rules and tone for the whole conversation, before any user question.
User Prompt
The actual question or request from the person using the app, sent after the system prompt and changing each time.
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
0:00 – 6:00
Create your project inside your resource group
Sign in to ai.azure.com with your own account. Choose Create project (the button you found on Day 11).
Name it clearly, for example ai901-project. When it asks where to put it, select your own resource group — rg-yourname-ai901 — in East US. If your group is not offered, stop and ask; do not try to work around it.
Creating the project may take a minute or two while Azure builds the resources behind it. That is normal — let it finish.
What just happened: you created real Azure resources, inside your own resource group, on your own subscription. Everything from here lives in that project, in your group. This is the “where” that your Contributor role gives you power over — and nowhere else.
Double-check the resource group and region before you click create. Getting “where” right is the whole discipline of working safely on someone else’s subscription.
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.
16:00 – 26:00
Talk to it in the playground
Foundry has a built-in test area, usually called the playground or chat — a page where you can type prompts to your deployed model with no code at all. Open it and select your deployment.
Find the system message box and paste the kind of system prompt you wrote on Day 12: for example, “You are a polite assistant for a Lagos electronics shop. If unsure, say you do not know.”
Now type a user prompt in the chat box and send it. Congratulations — a model you deployed, inside your resource group, just answered you. That is the whole of Domain 2 in miniature.
Experiment: find the temperature slider (Day 6) and try the same factual question at temperature near 0 and again near 1. Watch how low stays consistent and high gets more varied. Then find max tokens (Day 9) and see how it caps the length. You are now doing what were just words last week.
The playground is the safest place to learn: it is just you and the model, no code to break. Change one setting at a time and watch what it does — that is how real practitioners build intuition.
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
Deployment
Your own running copy of a chosen model, created inside your resource group, that the portal and your code can send prompts to.
Playground
Foundry’s built-in chat area for testing a deployed model with prompts, no code required — the safest place to experiment.
Endpoint
The web address your code sends prompts to in order to reach your deployed model.
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
0:00 – 6:00
The SDK, and the four-step pattern again
An SDK (Software Development Kit) is a ready-made toolbox of code someone else wrote so you do not have to build everything from scratch. The Foundry SDK is the toolbox for talking to your deployed model from Python.
Every program that talks to an AI service follows the shape you learned on Day 5: Import the toolbox, Connect using your endpoint and key, Send your prompts, and Use the answer. Today you fill that shape in with real code.
You will work in colab.research.google.com again — browser-based, nothing to install. First, install the toolbox by running, in a Colab cell: !pip install openai. (The Foundry chat models speak the widely-used OpenAI-style interface, so this is the library you use.)
Have yesterday’s endpoint and deployment name ready, and your key to hand — but you will paste the key carefully and never save the notebook publicly with it inside.
Import → Connect → Send → Use. Keep those four words in front of you as you type. Every block below is just one of those four steps.
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.
16:00 – 26:00
Send and Use
Send — give the model a system prompt and a user prompt (Day 12) and ask for a reply. Type this, replacing the deployment name with yours from Day 13: response = client.chat.completions.create( model="my-chat-model", messages=[ {"role": "system", "content": "You are a polite assistant for a Lagos shop. If unsure, say you do not know."}, {"role": "user", "content": "Do you sell phone chargers?"} ])
Look at that messages list: the system role carries your standing rules, the user role carries the question — the exact two prompt types from Day 12, now as real code.
Use — pull the answer out and show it: print(response.choices[0].message.content)
Run it. When the model’s reply prints in your notebook, you have built a working chat client — an app that connects to a real AI model and uses its answer. That sentence belongs on your CV.
Remember choices[0] counts from zero (Day 5’s lists!) — it is the first (and here only) reply. Every idea today rests on something you already learned. That is the plan working.
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
SDK
A Software Development Kit — a ready-made toolbox of code that lets your program talk to a service without building everything yourself.
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.
messages list
The list of prompts you send, each tagged with a role — system for standing rules, user for the question.
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
0:00 – 8:00
What an agent is — and how it differs from a chat model
An agent is a model given a defined role, a set of instructions, and often some tools, so it can carry out a task rather than just reply to one message. Think of the difference between an employee who only answers questions and one you can hand a job to.
The heart of an agent is still a system prompt (Day 12) — but framed as a standing mission: “You are a customer-support agent for an electronics shop. Answer product questions, stay polite, and if a question is about a refund, tell the customer to email support.”
Tools are extra abilities you can give an agent — for example the ability to search a set of documents, or call a small function. For AI-901 you need the concept: an agent can be equipped with tools to do more than talk. You are not expected to build complex tools at this level.
A single-agent solution is exactly what it sounds like: one agent doing one job. (Bigger systems chain several agents together — multi-agent — but one is all you need to understand and build today.)
Chat model = answers your message. Agent = given a role, instructions and maybe tools to carry out a task. The exam wants you to know that difference clearly.
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.
18:00 – 26:00
Test your agent — and watch it behave
Use Foundry’s built-in test/chat area for the agent. Send it a question that fits its job (“Do you have wireless earphones?”) and check it stays in role.
Now test its edges: send something its instructions said to handle specially (“I want a refund”) and confirm it does what you told it. Then send something off-topic (“What is the capital of France?”) and see whether it politely stays on task. This is how you check an agent actually follows its mission.
If it misbehaves, that is not failure — it is feedback. Go back and sharpen the instructions, save, and test again. This loop — write instructions, test, refine — is the real daily work of building agents.
Tie it to Responsible AI (Week 2): clear instructions like “if you are unsure, say so” are how you build reliability and reduce hallucinations into an agent. Good behaviour is designed in, on purpose.
Testing the edges — the refund case, the off-topic question — is exactly how a real team checks an agent before customers ever see it. You are practising professional habits, not just clicking around.
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
Agent
A model given a role, instructions and often tools so it can carry out a task, not just answer a single message.
Instructions
The standing brief that defines an agent’s mission and rules — prompt engineering applied to give an agent its behaviour.
Tools
Extra abilities you can give an agent — such as searching documents or calling a function — so it can do more than talk.
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.