AI-103 · Mock exam · 25 questions
AI-103 mock exam: 25 free practice questions
A free AI-103 practice test with 25 exam-style questions drawn from the whole course and weighted by domain like the exam guide. Answer at your pace and read why each option is right or wrong.
- 120 minTime
- 700 or greaterPassing score
- Plan and manage an Azure AI solution 25–30%
- Implement generative AI and agentic solutions 30–35%
- Implement computer vision solutions 10–15%
- Implement text analysis solutions 10–15%
- Implement information extraction solutions 10–15%
Exam details from the vendor’s exam guide, captured 2026-10-02.
-
Q1 / 25
A team must compare three deployed models side by side on the same prompt and measure differences in latency, token throughput, and response quality. What playground setup fits?
- AThree separate runs with the Tools panel used for the comparison
- BThree separate playground runs with different parameter settings
- CCompare mode with five models to widen the benchmark sample
- DCompare mode with shared context and settings for three models
Show the answer
A controlled comparison holds the prompt context, system message, and parameters constant while the models vary. Compare mode runs up to three models in parallel and lets you inspect latency, token throughput, and response quality side by side.
Next → 1 / 25 -
Q2 / 25
A RAG chatbot team must measure answer quality against retrieved context and screen for harmful content before launch, with one evaluation run per release. Which evaluator set matches the recommended combination?
- ABLEU, METEOR, Fluency, and Coherence
- BProhibited Actions and Sensitive Data Leakage
- CRetrieval, Groundedness, Relevance, and content safety
- DOutput Quality, Tool Use Quality, and Rubric
Show the answer
Match the evaluators to the architecture. A RAG app retrieves context and answers from it, so the recommended set is Retrieval, Groundedness, and Relevance, plus content safety for harm.
Next → 2 / 25 -
Q3 / 25
A workflow's Power Fx formula fails with the error 'Name isn't valid'. What is the fix?
- AAdd the `System.` or `Local.` scope prefix to the variable
- BSelect Save, because the variable wasn't stored yet
- CWrap the value in `Text()` or `Value()` to convert its type
- DAssign the Contributor role on the project to the user
Show the answer
Power Fx needs to know where a variable lives: `System.` for system variables, `Local.` for local ones. A missing prefix produces 'Name isn't valid'. Conversion functions fix a different error.
Next → 3 / 25 -
Q4 / 25
Three teams share one Foundry resource with a project each. Every team now needs its own independent fine-tuning. What does the planning guidance recommend?
- AKeep one project and share the fine-tuned models
- BRun fine-tuning in each team's own project
- CMove each team onto a separate Foundry resource
- DGrant each team project-level RBAC on training
Show the answer
Fine-tune training runs in the default project only and has no project-level RBAC isolation. Projects therefore can't separate teams for training, so independent fine-tuning per team means separate Foundry resources. Agent capabilities are the contrast: they do segment well by project.
Next → 4 / 25 -
Q5 / 25
You want to judge whether the retrieved chunks are relevant to each query, and you have no ground truth labels. Which evaluator fits?
- ARetrieval
- BRelevance
- CGroundedness Pro
- DDocument Retrieval
Show the answer
Two clues: the target is the retrieved chunks, not the final answer, and there are no labels. Retrieval uses an LLM judge on `query` and `context`. Document Retrieval needs labels, and Relevance looks at the response.
Next → 5 / 25 -
Q6 / 25
A network-isolated Foundry project uses a private Azure AI Search service. An indexer created by the Import data wizard pulls content through private endpoints. Runs report no errors, but the index stays empty. What fixes it?
- AAdd Azure AI Search to the trusted services exception
- BCreate a private endpoint from the agent subnet to Search
- CEnable public network access on the Search service
- DSet the indexer's `executionEnvironment` to `Private`
Show the answer
By default an indexer runs in the multitenant environment, which can't traverse private endpoints, and the result is silent indexing failures and an empty index. Setting `executionEnvironment` to `Private` lets it reach content behind private endpoints.
Next → 6 / 25 -
Q7 / 25
What does Foundry create when you add a connector from the Foundry Tools Catalog to an agent?
- AA Key Vault connection that stores the connector code
- BA Logic Apps workflow that listens for connector triggers
- CA managed MCP server in the account's Connector Namespace
- DA new Foundry project dedicated to that connector
Show the answer
Adding a connector produces a managed MCP server that Foundry provisions and runs in your Connector Namespace. The namespace handles hosting, tool definitions, authentication, and lifecycle, so your agent just calls the server's tools.
Next → 7 / 25 -
Q8 / 25
Which features of Azure AI Search can a RAG pipeline usually skip because they serve people typing in a search box?
- AAutocomplete and suggestions
- BHybrid queries and scoring profiles
- CChunking and integrated vectorization
- DSemantic ranking and synonym maps
Show the answer
Some search features exist for human interaction and add nothing to grounding. Autocomplete and suggestions fire on partial input in a search-as-you-type experience, so a RAG pipeline can skip them. Relevance and preparation features, on the other hand, are central to RAG quality.
Next → 8 / 25 -
Q9 / 25
A knowledge source has document-level permissions, but the agent never forwards a user token in `x-ms-query-source-authorization`. What do users get?
- AResults that are not filtered by their permissions
- BAn error until a user token is supplied in the call
- CNo results from that knowledge source at all
- DOnly those documents that are marked as public
Show the answer
The header carries the user's identity so retrieval can filter by permissions. Without it, permission-enabled sources return results unfiltered, which is why per-user tokens matter for protected content.
Next → 9 / 25 -
Q10 / 25
A product team wants to read every review that might contain negative sentiment, even if that means reading some that are not negative. How should it use the scores?
- ARead the confidence score as intensity
- BRaise the threshold on the negative score
- CLower the threshold on the negative score
- DUse only the overall sentiment label
Show the answer
Thresholds trade misses for false alarms. A lower threshold on the negative score flags more possible negatives, giving more false positives but fewer missed negatives, which suits a team that wants to see everything.
Next → 10 / 25 -
Halfway, at your pace
In the app the mock exam is timed and scored like the real thing.
-
Q11 / 25
When a model decides to call one of your functions, what happens next?
- AThe model asks the user to run the function and paste the result
- BThe model runs the function inside the service and replies
- CFoundry runs the function automatically through a connector
- DThe model returns arguments, and your app runs the function
Show the answer
The model only proposes: it returns a JSON object with the function name and arguments. Your application executes the function and sends the result back, which keeps you in control of every action.
Next → 11 / 25 -
Q12 / 25
You're creating a custom analyzer for scanned contracts. Which value is valid for its `baseAnalyzerId`?
- A`prebuilt-contract`
- B`prebuilt-layout`
- C`prebuilt-documentSearch`
- D`prebuilt-document`
Show the answer
Custom analyzers can only derive from the four base analyzers: `prebuilt-document`, `prebuilt-audio`, `prebuilt-video`, and `prebuilt-image`. For documents of any kind, the base is `prebuilt-document`.
Next → 12 / 25 -
Q13 / 25
After editing an agent's instructions, a team wants to confirm it now calls the expected tools and to compare quality with the earlier version. What should they do?
- ARename the agent so its history and evaluations start from zero
- BEdit the saved version in place and then compare its chat output
- CKeep testing the unsaved draft and run the full evaluations on it
- DSave the change as a new version, then trace it and run evaluations
Show the answer
The rule: a saved version is what you can measure. Saving creates a new immutable version; tracing then shows which tools were called with what inputs, and evaluations compare quality across versions to catch regressions.
Next → 13 / 25 -
Q14 / 25
What is the current status of Content Understanding pro mode?
- AIt was renamed standard mode and kept the same configuration
- BIt was retired with its preview API; migrate to agentic mode
- CIt still runs in 2026-06-01-preview alongside agentic mode
- DIt became GA in API version 2025-11-01 as the default mode
Show the answer
Pro mode lived only in the 2025-05-01-preview API, which is retired. The way forward is agentic mode in 2026-06-01-preview, and it is not a drop-in replacement, so the schema needs a review.
Next → 14 / 25 -
Q15 / 25
You inject the Agent client into your own virtual network. What must the subnet look like?
- ADelegated to `Microsoft.App/environments`, with a /29 subnet
- BDelegated to `Microsoft.CognitiveServices`, /27 or larger
- CDelegated to `Microsoft.App/environments`, /27 or larger
- DAny subnet of /24 or larger, with no delegation needed
Show the answer
Two conditions, both required: the subnet is delegated to `Microsoft.App/environments`, and it's /27 or larger. A smaller subnet or a different delegation means the injection can't be set up.
Next → 15 / 25 -
Q16 / 25
A contact center records calls in stereo, with the customer on one channel and the representative on the other. A live assistant must transcribe both sides during the call and know which side said each line. Which capability fits?
- ALanguage detection running separately on each channel
- BDiarization with fast transcription once the call has ended
- CBatch transcription of the stereo recordings each evening
- DReal-time multichannel transcription, currently in preview
Show the answer
The participants already have separate stereo channels, and their lines are needed live. Transcribe the channels independently and tag each result rather than waiting for a stored recording.
Next → 16 / 25 -
Q17 / 25
Forty subsidiaries send expense claim forms with the same fields but different page layouts. Which custom model type handles them all in one model?
- ALayout with paragraph roles
- BA single custom neural model
- CA classifier with one class per subsidiary
- DA custom template model
Show the answer
The clue is same information, different page structures. Custom neural models support exactly that, with one model for all variations. Template models need one consistent visual template, so each layout would need its own model.
Next → 17 / 25 -
Q18 / 25
You must size total tokens per minute for a Standard deployment. You have per-request usage logs, a steady 500 requests per minute, and uniform requests. How do you estimate it?
- ARead the deployment's quota, since quota directly enforces throughput
- BAdd up Time to Last Byte per request and divide the total by 500
- CMultiply prompt and completion tokens by 500 and add the two
- DMultiply only completion tokens by 500, since prompt tokens add little time
Show the answer
Prompt tokens times requests per minute gives input TPM, completion tokens times requests per minute gives output TPM, and for a Standard deployment you combine them into the total.
Next → 18 / 25 -
Q19 / 25
An adjuster uploads a crash photo in the Foundry playground, gets a description, and then asks what to highlight for the insurer. The replies stay generic and sometimes unhelpful. Which change addresses this most directly?
- AMake the system message specific to the insurance task
- BStart a new chat session before each follow-up question
- CRaise max_tokens so replies can include more detail
- DUpload the photo again with every follow-up question
Show the answer
Generic answers point to generic instructions. Making the system message specific to the task avoids unhelpful responses, and a task-oriented focus such as an insurance assessment sharpens the answers.
Next → 19 / 25 -
Q20 / 25
Where can you read the actual query strings that users send to a search index?
- AIn the indexer's execution history for recent runs
- BIn the activity log, under Get Admin Key entries
- COn the service's Monitoring tab, kept for 30 days
- DIn AzureDiagnostics, once resource logging is on
Show the answer
Query strings are only kept when you enable resource logging with a destination such as Log Analytics. The requests then land in the AzureDiagnostics table, where the `Query.Search` operation shows each query string.
Next → 20 / 25 -
Q21 / 25
A team starts a new project today. It must list the main topics of incoming reviews for years, and the architect forbids features that are scheduled to retire. Which approach meets both constraints?
- AHost key phrase extraction in a Docker container
- BBuild the topic step on Microsoft Foundry models
- CUse key phrase extraction, since it is preconfigured
- DUse prebuilt NER to return each review's topics
Show the answer
Two constraints decide it: a long life and no retiring features. Key phrase extraction does the job today, but it retires from Azure Language on March 31, 2029, and new projects are directed to Microsoft Foundry models. That makes Foundry models the only option that satisfies both.
Next → 21 / 25 -
Q22 / 25
Content Understanding analyzers have extracted transcripts and fields from call recordings. In the RAG flow, what happens to that output before it's embedded and indexed?
- AThe recordings themselves are pushed so the index can vectorize them
- BA skillset on an indexer transcribes the recordings once more
- CIt becomes strings that keep content and metadata
- DSemantic ranker condenses each transcript into a caption first
Show the answer
The analyzers return JSON. Preprocessing turns that JSON into structured strings that preserve both the content and its metadata, and those strings are what the embedding model vectorizes and Azure AI Search stores.
Next → 22 / 25 -
Q23 / 25
A support assistant gets a function that queries the orders database. Security insists the assistant can never change data, and it must stay safe when a tool's output contains odd instructions. Which design meets both?
- ARead-only database access, plus validation of every generated call
- BAdd 'Only use the functions you have been provided with' and run calls
- CLeave write operations out of the function description
- DSet `tool_choice` to `none` on every database request
Show the answer
Security can't rest on what the model is told. Read-only access makes data changes impossible even if a call goes wrong, and validating each generated call catches calls shaped by untrusted tool output. Least privilege plus validation covers both constraints.
Next → 23 / 25 -
Q24 / 25
A team edits customer photos with `FLUX.1-Kontext-pro` and must block harmful outputs before users see them. What should they plan for?
- ASet `safety_tolerance` in the Image API edits request
- BRely on the content filter that Foundry adds at deployment
- CMove to the BFL endpoint, which adds a filter on its own
- DConfigure content safety during inference themselves
Show the answer
With FLUX models, Foundry does not provide built-in content filtering at deployment time. The responsible AI guidance is to configure content safety during model inference, so safety is part of your design.
Next → 24 / 25 -
Q25 / 25
A team wants Foundry spend on a service to be predictable each month, in exchange for committing to a fixed fee. Which billing approach matches?
- ACommitment tiers, with overage billed above the plan
- BFlex processing, which turns token rates into a fixed fee
- CAzure Prepayment, which caps the bill at the credit amount
- DPay-as-you-go, billed per use of each service
Show the answer
The two common approaches trade flexibility for predictability. Pay-as-you-go bills what you use. Commitment tiers charge a fixed fee for committed usage, and anything above the plan's quota is billed as overage.
Next → 25 / 25 -
That’s the whole mock exam
Every question you miss comes back exactly when you’re about to forget it.
How to use this mock exam
Sit all 25 questions in one go: the mix covers every domain in the same proportion as the exam, so a low score points at the domain you skipped rather than at bad luck.
Read the explanation under every question, including the ones you got right: the reason an option is wrong is usually the thing being tested.
Then retake it in the app, where the mock exam is timed and scored and the questions you miss come back on a schedule.
