AI-103 courseLesson 18 of 18 · 10 min
AI-103 Cheat Sheet: Last-Minute Revision for Azure AI Apps and Agents
XUtilHub Team ·
Exam skills covered
- Final review
Everything on the AI-103 exam on one page. Read it the day before, then take the AI-103 practice test.
Weighting
| Area | Weight |
|---|---|
| Plan and manage an Azure AI solution | 25–30% |
| Implement generative AI and agentic solutions | 30–35% |
| Computer vision | 10–15% |
| Text analysis | 10–15% |
| Information extraction | 10–15% |
Plan and manage
Model choice: SLM for cheap, narrow, high volume · LLM for general chat · reasoning model for hard multi-step problems · multimodal for images and audio · embeddings for vectors · Foundry Tools for predictable prebuilt tasks.
Deployment types:
| Need | Choose |
|---|---|
| Default, highest quota | Global Standard |
| Data stays in EU / US | Data Zone |
| Guaranteed throughput, predictable latency | Provisioned (PTU) |
| Huge offline jobs, cheapest | Batch (≤ 24 h) |
| Test fine-tuned models | Developer |
Setup: resource (deployments, networking) → project (agents, evals, traces, connections) · stable deployment names · versioned agents · Bicep/Terraform + azd + CI/CD with evaluation gates · OIDC for pipelines.
Operate: 429 = rate limit → backoff, fewer tokens, more quota or deployments, an API Management gateway, Provisioned/Batch · monitor latency, tokens, errors, safety events, quality drift, indexer and index health.
Secure: managed identity + Azure AI User role + DefaultAzureCredential · disable key auth · private endpoints + private DNS + public access off · Key Vault for remaining secrets · least privilege, one identity per agent.
Responsible AI: guardrails = harm categories with thresholds, Prompt Shields (jailbreak + indirect attacks), protected material, groundedness detection, blocklists · safety evaluators and red teaming · traces + provenance + logged approvals · agent oversight modes, constraints, tool approvals.
Generative AI and agents
project = AIProjectClient(endpoint=endpoint, credential=DefaultAzureCredential())
openai = project.get_openai_client()
r = openai.responses.create(model="<deployment>", instructions="...", input="...")
# multi-turn: previous_response_id=... or conversation=conv.id
# stream=True · text={"format": {"type": "json_schema", ...}} · {"type": "input_image", ...}
RAG: chunk → embed → index · retrieve (hybrid + semantic ranker) → ground (only sources, cite, say "I don't know") → generate · security trimming with filters · agents use AI Search tool, file search or Foundry IQ (agentic retrieval).
Evaluators:
| Problem | Evaluator |
|---|---|
| Made-up facts | Groundedness |
| Off-topic answer | Relevance |
| Messy or unnatural writing | Coherence / Fluency |
| Match to a known answer | Similarity, F1, BLEU, ROUGE (needs ground truth) |
| Harm | Safety evaluators |
| Wrong tool or arguments | Tool call accuracy |
| Didn't understand / drifted from task | Intent resolution / Task adherence |
AI-assisted evaluators need a judge model deployment.
Agents: model + instructions + tools + conversation (+ memory) · tools: file search, AI Search, code interpreter, web, function (your code runs it: function_call → function_call_output with call_id), OpenAPI, MCP · agents.create_version(...) creates versions.
Multi-agent patterns:
| Pattern | Clue in the question |
|---|---|
| Sequential | "each step refines the last" |
| Concurrent | "at the same time, then combine" |
| Handoff | "transfer to the right specialist" |
| Group chat | "agents discuss" |
| Manager (magentic) | "plan, assign and re-plan an open task" |
Safeguards: approvals, max turns, budgets, scoped identities, validation, escalation, checkpoints.
Optimise: lower temperature for consistency (reasoning models use reasoning effort) · reflection = generate → critique → revise with a round limit · tracing = OpenTelemetry → Application Insights (spans, token analytics, latency, safety signals) · routing, cascades, LLM + rules engines.
Vision
- Generate:
images.generate(size, quality, n)· edit with reference images · inpainting with a mask (transparent = change) · video = job → poll → download, remix, image-to-video - Understand:
input_imageparts · concise vs detailed captions · grounded visual Q&A ("can't tell from the image") · alt text short and purposeful; extended descriptions for charts - Content Understanding: visual fields, video segments and key frames, pro mode for multi-file reasoning
- Safety: Content Safety image categories · injected text in images = indirect prompt injection · watermarks, C2PA, brand and symbol policies
Text and speech
- LLM + structured outputs for entities, topics, summaries, tone · Azure Language for sentiment, entities, PII redaction, custom models
- Translator for volume, glossaries, documents · LLM translation for tone and adaptation
- Speech: STT (real-time, fast, batch, diarization) · TTS with SSML · phrase lists / custom speech (measured by WER) · Voice Live / realtime audio for low-latency barge-in · speech translation
Information extraction
- AI Search: data source → indexer → skillset → index, vectorizer for queries · OCR / Document Layout for scans · Text Split + embedding skill = integrated vectorization · Custom Web API skill for your logic
- Content Understanding: analyzer + field schema (extract / classify / generate) · Markdown output for RAG and agents · confidence + grounding → human review ·
begin_analyze→ poll (REST: 202 + Operation-Location)
Commonly confused
| This | Not this |
|---|---|
| Groundedness: supported by context | Relevance: answers the question |
| Function tool: your code runs it | Code interpreter: the service runs Python |
| Conversation: one thread | Long-term memory: across sessions |
| Data Zone: geography | Provisioned: reserved capacity |
| Handoff: specialist takes over | Agent as tool: caller keeps control |
| Jailbreak: from the user | Indirect attack: hidden in content |
| Indexer: pulls data | Skillset: enriches data |
Exam-day tips
- Read the requirement and constraint first: cheapest, least effort, no keys, data residency, real time.
- Eliminate answers that are less secure (keys in code, public access) or more manual (portal clicks for every environment) when automation is asked for.
- For code questions, look for the missing step: credential, deployment name,
call_id, polling, schema. - Flag long case studies and come back to them.
Good luck! When you pass, share the news, and check our AI courses roadmap for what's next.
Check your understanding
Exam-style questions on this lesson. Get them all right to mark the lesson complete.
Finished reading?