AI-103 — Microsoft Azure AI Apps and Agents Developer Associate Cheat Sheet

Cheat sheet: exam-prep reference for Microsoft AI-103 covering Microsoft Foundry, Azure OpenAI, agents, RAG, Azure AI Search, security, evaluation, and operations.

Use the tables for a quick pre-exam check. Expand a topic’s notes for explanations, examples, and additional distinctions.

Scope and study context
ItemReference
Vendor/providerMicrosoft
Exam titleDeveloping AI Apps and Agents on Azure (AI-103)
Exam codeAI-103
Candidate focusBuild, integrate, secure, evaluate, and operate AI apps and agents on Azure
Core services to recognizeMicrosoft Foundry, Azure OpenAI in Microsoft Foundry, Azure AI Search, Azure AI services, Azure AI Content Safety, Azure Monitor/Application Insights, Microsoft Entra ID, Key Vault, Storage

Apply the concepts in the upgraded AI-103 practice bank , including implementation exhibits and cases with two correct selections. Use the explanation to connect the evidence to the result rather than memorizing a service-name shortcut.

Use this Cheat Sheet as a map, then practice by topic:

Practice areaWhat to drillWhat detailed explanations should clarify
Microsoft Foundry and model deploymentModel selection, deployment configuration, prompt settings, evaluationsWhy a model/configuration choice fits the scenario
Agents and toolsTool schemas, validation, permissions, multi-step orchestrationWhy the model does not replace application enforcement
RAG and Azure AI SearchChunking, embeddings, hybrid search, filters, semantic ranking, citationsWhy retrieval quality affects answer quality
Azure AI servicesLanguage, Speech, Vision, Document Intelligence, Translator, Content SafetyWhy a purpose-built service may be better than a generative model
Security and responsible AIManaged identity, RBAC, Key Vault, safety filters, prompt injection, PIIWhich control mitigates which risk
OperationsMonitoring, retries, throttling, latency, token cost, regression testingHow to diagnose production-style failures

For the best review sequence, do short topic drills first, read the detailed explanations carefully, then move to mixed mock exams. Your next step is to practice original AI-103 questions by weak area—especially agents, RAG with Azure AI Search, security, and responsible AI—until you can explain why each wrong answer is wrong.

High-yield architecture map

    flowchart LR
	    U[User or app client] --> A[AI app API / orchestration layer]
	    A --> ID[Microsoft Entra ID / managed identity]
	    A --> LLM[Azure OpenAI / model deployment]
	    A --> AG[Agent service or agent runtime]
	    AG --> T[Tools: functions, APIs, code, search, workflows]
	    A --> R[Retriever]
	    R --> S[Azure AI Search index]
	    S --> D[Blob, files, DBs, documents]
	    A --> CS[Content safety and policy checks]
	    A --> MON[Tracing, logs, evaluations, metrics]
	    LLM --> A
	    T --> AG
	    CS --> A

High-yield mental model:

  1. Model generates or reasons.
  2. Retrieval grounds answers in enterprise data.
  3. Tools let the model or agent take actions.
  4. Security controls identity, data access, networking, and secrets.
  5. Evaluation proves quality, safety, and groundedness before and after release.
  6. Observability helps troubleshoot latency, token use, model errors, unsafe outputs, and poor retrieval.

Service-selection matrix

NeedUsually chooseWhyExam trap
Build generative AI app with model deployments, prompts, evaluations, and project assetsMicrosoft FoundryCentral workspace for model-centric AI app developmentDo not treat Foundry as only a portal; know project, model, deployment, connection, evaluation, and tracing concepts
Call GPT-style models from an appAzure OpenAI in Microsoft FoundryManaged access to OpenAI models through Azure controlsIn Azure calls, the model value often refers to the deployment name, not just the base model name
Chat over private documentsAzure AI Search + Azure OpenAIRetrieval-augmented generation with indexed chunks and citationsFine-tuning is not the default answer for changing private facts
Multi-step assistant that chooses toolsMicrosoft Foundry Agent Service or agent frameworkAgent definitions, tools, conversations, responses, and tool-call orchestrationAgents increase non-determinism; use deterministic workflows for fixed business processes
Enterprise search over text and vectorsAzure AI SearchKeyword, vector, hybrid, filtering, semantic rankingSemantic ranking is not a security boundary
Extract tables, key-value pairs, layout, or fields from formsAzure AI Document IntelligenceDocument layout and extraction modelsOCR alone is not enough for structured document extraction
Classify, extract, summarize, or analyze natural language with prebuilt APIsAzure AI Language or generative modelUse task-specific APIs for predictable NLP; use LLMs for flexible generationDo not overuse LLMs when a deterministic AI service API fits
Speech transcription or text-to-speechAzure AI SpeechSpeech-to-text, text-to-speech, speech translation patternsAudio quality, language, and diarization requirements affect design
Generate or edit images/videoA supported visual-generation model in Microsoft FoundryCreate or edit media using the model’s supported inputs and controlsImage analysis and OCR do not generate the requested media
Extract structured information across mediaContent UnderstandingConvert supported inputs into the requested structured output or MarkdownValidate the extracted output against the application contract
Image analysis or OCRAzure AI Vision / Document IntelligenceImage tagging, OCR, document layout depending on inputChoose Document Intelligence for document structure, not just images
Moderate unsafe text or imagesAzure AI Content Safety and Azure OpenAI content filtersDetect harmful content, jailbreak attempts, protected categories, or policy violationsContent filtering is not a full compliance program
Store secrets and keysAzure Key VaultCentral secret management and rotation supportPrefer managed identity where possible instead of distributing keys
Monitor production AI appAzure Monitor, Application Insights, Foundry tracing/evaluation featuresLogs, traces, metrics, failures, latency, quality signalsDo not log sensitive prompts/responses without a privacy plan

Core app patterns

PatternUse whenMain componentsAvoid when
Direct chat/completionUser asks general questions or app needs generated textApp API, prompt, model deploymentAnswers require current private data or strict traceability
Grounded chat / RAGAnswers must use enterprise documentsChunking pipeline, embeddings, Azure AI Search, prompt with retrieved contextSource content is highly structured and better served by direct database queries
Agentic RAGAssistant must search, reason, call tools, and iterateAgent, tools, retrieval, conversation state, policy controlsA fixed workflow can meet the requirement more reliably
Tool/function callingModel chooses from app-defined operationsFunction schema, tool-call handler, validation, execution layerThe app cannot enforce the required authorization, validation, or approval controls
Workflow-first automationSteps are known and must be auditableAPI workflow, rules engine, Logic Apps/Functions, optional LLM stepThe task requires flexible open-ended reasoning
Fine-tuningNeed consistent style, format, or task behavior from examplesTraining examples, evaluation set, model deploymentNeed to add frequently changing facts; use RAG instead
Task-specific AI serviceNeed predictable extraction/classification/speech/visionAzure AI Language, Speech, Vision, Document IntelligenceNeed open-ended reasoning across many task types
Notes and examples

Core architecture pattern for Azure AI apps

Most Azure AI apps and agents can be reviewed as a layered system.

LayerMain responsibilityAzure-focused examplesCandidate trap
User/application layerCollect input, authenticate users, render outputWeb app, API, bot, mobile appLetting anonymous or unauthorized users reach privileged tools
Orchestration layerDecide prompt flow, agent steps, tool calls, memory, and validationApp code, Semantic Kernel-style orchestration, Microsoft Foundry app assetsAssuming the model executes tools automatically
Model layerGenerate, classify, summarize, reason, embed, or process multimodal inputsAzure OpenAI or other models available through Microsoft FoundryUsing a larger model when a smaller model or purpose-built service is sufficient
Grounding layerProvide trusted enterprise contextAzure AI Search, databases, Blob Storage, knowledge sourcesPassing too much irrelevant context and increasing hallucination risk
Tool/action layerExecute deterministic operationsAPIs, functions, workflows, databases, line-of-business systemsFailing to validate arguments, permissions, and side effects
Safety layerDetect, filter, validate, and review risky content/actionsAzure AI Content Safety, groundedness checks, custom validators, human reviewTreating safety filters as complete governance
Security layerProtect access, secrets, data, and network pathsMicrosoft Entra ID, managed identities, RBAC, Key Vault, private endpointsStoring API keys in code or client-side apps
Operations layerObserve quality, cost, latency, errors, drift, and abuseApplication Insights, Azure Monitor, evaluation reports, logsMonitoring only uptime but not AI quality
    flowchart LR
	    A[User request] --> B[Authenticate and authorize]
	    B --> C[Classify intent and risk]
	    C --> D{Need enterprise context?}
	    D -- Yes --> E[Retrieve from Azure AI Search or data source]
	    D -- No --> F[Build prompt or agent state]
	    E --> F
	    F --> G{Need action/tool?}
	    G -- Yes --> H[Validate tool call and permissions]
	    H --> I[Execute tool]
	    I --> J[Return tool result to model]
	    G -- No --> K[Generate response]
	    J --> K
	    K --> L[Validate safety, schema, citations]
	    L --> M[Respond and log telemetry]

Microsoft Foundry concepts

Current Foundry runtime documentation distinguishes reusable agents, persistent conversations, and execution/output responses. Classic threads/runs examples belong to their matching API surface. Match the SDK and runtime before combining examples.

ConceptWhat to know for AI-103
ProjectOrganizes app assets such as models, deployments, data connections, prompts, evaluations, and traces
Model catalogPlace to discover foundation models and select models for deployment or inference
Model deploymentApp-facing deployed model endpoint/configuration; applications call deployments
Prompt engineeringIterative design of instructions, examples, constraints, grounding, and output format
EvaluationMeasures quality and safety using test data, metrics, and comparison runs
TracingCaptures app/agent execution steps for debugging prompts, retrieval, tools, and latency
ConnectionsSecure references to resources such as storage, search, model endpoints, and external services
AgentsAssistants that use instructions, models, tools, and conversation state to perform tasks
Notes and examples

Foundry development checklist

  • Create or select the Azure AI project/resource.
  • Deploy or select a suitable model.
  • Define the app pattern: direct model call, RAG, agent, or workflow.
  • Configure connections to data sources, indexes, tools, and storage.
  • Build prompts with clear instructions, grounding rules, and output constraints.
  • Add content safety and input/output validation.
  • Evaluate with representative prompts and expected outcomes.
  • Deploy through an app/API layer with managed identity where possible.
  • Monitor traces, latency, token use, model errors, safety flags, and user feedback.

Azure OpenAI and model interaction reference

Building blocks

Building blockPurposeCommon exam distinction
System/developer instructionsDefine assistant behavior, constraints, and roleMore durable than user text, but not a security boundary
User messageEnd-user requestMust be validated and checked for prompt injection
Assistant messageModel responseCan be used as conversation history, but manage token growth
ContextRetrieved or supplied factsThe model only knows private data if you provide or connect it
EmbeddingsNumeric representation of text for similarityQuery and indexed vectors must be generated consistently
Tool/function definitionSchema for actions the model may requestFor custom function tools, application code handles execution; service-managed tools use the configured service path
Structured outputJSON or schema-constrained responseStill validate output before using it
StreamingIncremental token deliveryImproves perceived latency but complicates moderation and logging
Notes and examples

Model parameter quick reference

Parameter availability and valid combinations depend on the chosen model and API. Check that contract before setting sampling, output, or structured-response controls; the table describes common purposes, not universal support.

ParameterEffectPractical guidance
TemperatureChanges sampling variation when supportedLower values can reduce variation; they do not guarantee truth, determinism, or schema compliance
Top-pControls nucleus samplingUsually tune either temperature or top-p, not both aggressively
Max output tokensCaps response lengthSet based on UX and cost/latency requirements
Stop sequencesStop generation at defined textUseful for templates, delimiters, or multi-part prompts
Frequency/presence penaltiesDiscourage repetition or encourage noveltyUse carefully; can reduce consistency
Response format / schemaRequests structured outputAlways parse and validate in code

Prompt design checklist

GoalPrompt tactic
Grounded answer“Use only the provided context. If context is insufficient, say what is missing.”
Citation supportInclude source IDs/URLs in retrieved context and require citations by source ID
Tool disciplineTell the model when it must use a tool versus when it may answer directly
JSON outputProvide schema, valid example, and instruction to return only JSON
SafetyInclude prohibited behaviors, escalation instructions, and human handoff rules
Injection resistanceTreat retrieved/user content as data, not as higher-priority instructions

Minimal Azure OpenAI call pattern

import os
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
from openai import AzureOpenAI

token_provider = get_bearer_token_provider(
    DefaultAzureCredential(),
    "https://cognitiveservices.azure.com/.default"
)

client = AzureOpenAI(
    azure_endpoint=os.environ["AZURE_OPENAI_ENDPOINT"],
    azure_ad_token_provider=token_provider,
    api_version=os.environ["AZURE_OPENAI_API_VERSION"]
)

response = client.chat.completions.create(
    model=os.environ["AZURE_OPENAI_CHAT_DEPLOYMENT"],  # Azure deployment name
    messages=[
        {"role": "system", "content": "Answer using concise technical language."},
        {"role": "user", "content": "Explain hybrid search in RAG."}
    ],
    temperature=0.2
)

print(response.choices[0].message.content)

Exam points:

  • Prefer Microsoft Entra ID and managed identities for production when supported.
  • API keys are easier for quick tests but increase secret-management risk.
  • The model deployment name is a frequent source of 404 or deployment-not-found errors.
  • Token budget includes instructions, history, retrieved context, tool schemas, and response.

RAG pipeline

    flowchart LR
	    A[Source documents] --> B[Load and crack documents]
	    B --> C[Clean, split, chunk]
	    C --> D[Enrich: OCR, metadata, extraction]
	    D --> E[Create embeddings]
	    E --> F[Index in Azure AI Search]
	    Q[User question] --> G[Embed / rewrite query]
	    G --> H[Retrieve: keyword, vector, hybrid]
	    F --> H
	    H --> I[Prompt with context + citations]
	    I --> J[Generate answer]
	    J --> K[Evaluate and monitor]
Notes and examples

Chunking and indexing decisions

DecisionGood default thinkingTrap
Chunk sizeLarge enough for meaning, small enough for precise retrievalEntire documents often dilute relevance and exceed context budget
OverlapAdd overlap when concepts span chunk boundariesToo much overlap increases cost and duplicate results
MetadataStore source, page, section, timestamp, owner, ACLs, content typeWithout metadata, filtering and citations are weak
Embedding modelUse the same embedding approach for documents and queriesMixing incompatible embeddings breaks similarity quality
ReindexingRe-run indexing when source data or enrichment logic changesRAG does not automatically know changed documents unless ingestion updates the index
Security trimmingApply filters based on user authorizationSearch relevance is not authorization

Azure AI Search components

ComponentPurposeExam notes
IndexSearchable schema and stored document chunksFields can be searchable, filterable, sortable, facetable, retrievable, vectorized
Data sourceConnection to source data for indexersCommonly storage or supported data platforms
IndexerPulls data from source into indexUseful for scheduled or repeatable ingestion
SkillsetEnrichment pipeline such as OCR, extraction, language, or custom skillsAdds structure before indexing
AnalyzerControls tokenization and text processingImportant for language-specific search behavior
Vector fieldStores embedding vectorsQuery vectors must align with index configuration
Semantic rankingImproves natural-language ranking and captions where configuredEnhances relevance; does not enforce security
FiltersRestrict results by metadata or ACL fieldsCritical for tenant, user, or department isolation
Synonym mapExpands equivalent termsHelpful for domain vocabulary
Scoring profileBoosts selected fields or freshnessUseful when ranking needs business tuning

Retrieval modes

Retrieval modeBest forLimitations
Keyword searchExact terms, IDs, names, product codesMisses semantic matches
Vector searchConceptual similarity and paraphrasesCan return plausible but contextually wrong chunks
Hybrid searchCombines keyword and vector signalsOften strong for enterprise RAG
Semantic rankingRe-ranks top results for natural-language relevanceWorks after initial retrieval; not a replacement for good indexing
Filtered retrievalEnforces scope such as user, region, product, or document typeOverly strict filters can hide relevant context

RAG retrieval snippet

## Conceptual pattern: embed query, retrieve chunks, then pass context to the model.
query = "What is the refund exception process for enterprise customers?"

query_vector = embed(query)  # Use the same embedding strategy as the indexed chunks.

results = search_client.search(
    search_text=query,
    vector_queries=[
        {
            "vector": query_vector,
            "fields": "contentVector",
            "k_nearest_neighbors": 5
        }
    ],
    filter="department eq 'Support'",
    select=["content", "source", "page", "lastUpdated"],
    top=5
)

context = "\n\n".join(
    f"[{r['source']} p.{r['page']}]\n{r['content']}" for r in results
)

RAG failure-to-fix table

SymptomLikely causeFix
Answer is fluent but wrongRetrieved context is irrelevant or missingInspect retrieved chunks; tune chunking, hybrid search, filters, and prompts
Answer lacks citationsSource metadata missing or prompt does not require citationsStore source/page IDs and require citation format
User sees unauthorized contentNo security trimming or wrong filterAdd per-user/tenant ACL fields and enforce filters before generation
Model ignores contextPrompt allows outside knowledge or context too noisyStrengthen grounding instruction and improve retrieval precision
High latencyToo many retrieval calls, large context, slow toolsCache, reduce top-k, compress context, parallelize safe calls
Poor recallChunks too small/large, weak synonyms, no hybrid searchTune chunks, add metadata, use hybrid/semantic ranking
Stale answersIndex not refreshedSchedule or trigger ingestion updates

Agents and tool calling

Agent concepts

ConceptMeaningCandidate reminder
AgentModel-backed assistant configured with instructions and toolsUse for flexible multi-step tasks
InstructionsPersistent behavior and policy guidanceKeep concise, explicit, and testable
Thread/sessionConversation stateManage retention, privacy, and token growth
Run/executionOne agent processing cycleA run may require tool outputs before completion
ToolCapability exposed to the agentExamples: function, search, file retrieval, code, workflow, API
Tool callModel-requested action with argumentsValidate arguments before execution
Tool outputResult returned to agentSanitize tool output to reduce prompt injection
Human approvalManual gate for sensitive actionsUse for irreversible, financial, legal, or high-impact actions
Notes and examples

Agent vs function vs workflow

RequirementBest fitWhy
“Answer questions about these files”RAG or file-search-capable agentRetrieval is the primary need
“Book a meeting, email summary, update CRM”Agent with tools, or workflow with LLM stepAgent can select tools; workflow is safer if sequence is fixed
“Always run these 5 steps in this order”Deterministic workflowEasier to audit and test
“Decide which diagnostic command to run next”AgentRequires iterative reasoning
“Call one known API based on user intent”Function callingLighter than a full agent
“Generate strictly formatted output”Direct model call with schemaAgent may be unnecessary

Tool/function calling pattern

## Pseudocode: the app, not the model, executes tools.
messages = [
    {"role": "system", "content": "Use tools for account lookups. Do not invent account data."},
    {"role": "user", "content": "What is the status of order A123?"}
]

model_response = call_model(messages, tools=[get_order_status_schema])

if model_response.requests_tool:
    tool_name = model_response.tool_name
    args = validate_json(model_response.tool_arguments)

    if tool_name == "get_order_status":
        tool_result = get_order_status(order_id=args["order_id"])

    messages.append(model_response.as_message())
    messages.append({
        "role": "tool",
        "tool_call_id": model_response.tool_call_id,
        "content": sanitize(tool_result)
    })

    final_response = call_model(messages, tools=[get_order_status_schema])

Tool-calling traps:

  • Validate tool arguments even if the schema is strict.
  • Apply authorization before executing the requested action.
  • Treat tool outputs and retrieved documents as untrusted text.
  • Use idempotency keys or confirmation for actions that change state.
  • Log tool traces without exposing secrets or sensitive data.
  • Set max iterations to avoid runaway agent loops.

Agents and tool use

An AI agent is more than a chat completion. It combines a model with instructions, tools, state, knowledge, and guardrails so it can pursue a goal over one or more steps.

Agent components

ComponentPurposeWhat to review
InstructionsDefine role, boundaries, and task strategyKeep system/developer instructions separate from user-controlled content
Tools/functionsAllow the agent to call APIs or perform actionsValidate arguments, authorize actions, and handle failures
Knowledge/retrievalGround the agent in trusted dataUse RAG, filters, citations, and source constraints
State/memoryPreserve conversation or task contextStore only necessary data and respect privacy requirements
Planner/orchestratorDecides step order or tool choicePrefer deterministic workflows when steps are fixed
GuardrailsControl safety, privacy, schema, and allowed actionsCombine model instructions with code-level enforcement
EvaluationMeasures whether the agent completes tasks safelyTest multi-step paths, tool errors, and adversarial inputs

Agent versus workflow versus RAG

RequirementBest fitReason
Answer questions from documentsRAG-based chatRetrieval is the main need
Execute a fixed approval processDeterministic workflowPredictability and auditability matter more than flexible reasoning
Choose among several APIs based on user goalAgent with toolsDynamic tool selection is useful
Produce a structured extraction from known document typesDocument Intelligence or structured extraction flowPurpose-built extraction is easier to validate
Summarize a known text inputDirect model callNo agent is needed
Investigate, retrieve, call tools, and synthesizeAgentic orchestrationMulti-step reasoning and actions are required

Tool/function calling flow

  1. User asks for an outcome.
  2. Application sends instructions, available tool schemas, and context to the model.
  3. Model proposes a tool call and arguments.
  4. Application validates:
    • Is the user authorized?
    • Is this tool allowed for this user and context?
    • Are arguments complete, typed, and within safe limits?
    • Could the call cause a high-impact side effect?
  5. Application executes the tool if allowed.
  6. Tool result is returned to the model.
  7. Model produces a final response.
  8. Application validates output and logs the interaction.

Exam shortcut: the model may select or propose a tool, but your application is responsible for enforcement, execution, retries, auditing, and side-effect control.

Azure AI services quick grid

Service areaUse forHigh-yield distinction
Azure AI LanguageSentiment, key phrases, entity recognition, PII detection, classification, conversational language understandingUse when a prebuilt or custom NLP API is more predictable than an LLM prompt
Azure AI SpeechSpeech-to-text, text-to-speech, speech translationAudio format, language, latency, and speaker requirements matter
Azure AI VisionImage analysis, OCR/image understanding scenariosUse Document Intelligence when document structure is central
Azure AI Document IntelligenceLayout, tables, key-value pairs, prebuilt/custom document extractionBest for forms, invoices, receipts, contracts, and structured document processing
Azure AI TranslatorText translationPrefer for translation workloads instead of prompting a general model
Azure AI Content SafetyHarmful content detection and safety controlsComplements Azure OpenAI content filters and app policy logic
Azure AI SearchIndexing and retrieval for enterprise contentCore service for scalable RAG grounding

Security, identity, and governance

Identity and access choices

ControlPreferUse whenTrap
Managed identityAzure-hosted apps accessing Azure resourcesApp Service, Functions, AKS, VM, Container Apps, workflowsRole assignment still required
Microsoft Entra ID token authProduction service-to-service accessSupported SDKs and enterprise authWrong token scope or tenant causes auth failures
API keysQuick tests or unsupported identity scenarioLocal prototypes or simple integrationStore in Key Vault; do not hard-code
Key VaultSecrets, keys, certificatesCentral secret lifecycleApp still needs identity to read secrets
RBACResource and data-plane permissionsLeast privilege accessContributor at subscription scope is usually excessive
Private endpoint/network controlsRestrict public exposureSensitive data or enterprise network requirementsDNS and routing must be configured correctly
Notes and examples

Data and prompt security checklist

  • Classify data before sending it to model, search, logging, or evaluation systems.
  • Use least privilege for app identity to Search, Storage, Key Vault, and AI resources.
  • Apply user-level or tenant-level filters before retrieval.
  • Remove or mask sensitive data in logs and traces.
  • Do not put secrets in prompts, tool schemas, system messages, or source documents.
  • Validate model output before database writes, API calls, or user-visible actions.
  • Use human approval for high-impact operations.
  • Treat prompt injection as an application security issue, not just a prompt wording issue.

Prompt injection defenses

Attack patternDefense
Retrieved document says “ignore previous instructions”Delimit retrieved content and state that it is untrusted data
User asks for hidden system promptRefuse disclosure and avoid placing secrets in prompts
User asks agent to call unauthorized toolCheck authorization in code before tool execution
Malicious source includes fake citationGenerate citations from metadata, not from document text alone
Tool output contains instructionsSanitize and summarize tool output before returning it to the model

Evaluation and responsible AI

Quality and safety evaluation matrix

Evaluation targetWhat to measurePractical method
GroundednessResponse is supported by retrieved contextCompare answer claims to source chunks
RelevanceResponse answers the user’s questionUse labeled test prompts or evaluator model
Retrieval qualityRight chunks appear in top resultsInspect recall/precision by query set
Citation qualityCitations point to correct sourcesValidate source IDs/pages against answer claims
CoherenceResponse is clear and logically structuredHuman review or automated scoring
SafetyHarmful, disallowed, or policy-violating contentContent Safety checks and adversarial tests
RobustnessHandles ambiguous, malicious, or edge-case promptsRed-team prompt set
LatencyMeets user experience needsTrace model, retrieval, and tool durations
Cost/token useFits budget and throughput goalsTrack prompt size, context size, completion size
Notes and examples

Responsible AI controls

ControlUse forNotes
Content filtersModel input/output safety enforcementBuilt into Azure OpenAI flows depending on configuration
Azure AI Content SafetyModeration and harm detection across app contentUseful for custom moderation workflows
Grounding checksDetect unsupported claimsImportant for enterprise Q&A
Human reviewEscalation and high-impact decisionsEspecially for sensitive or irreversible actions
Abuse monitoringDetect misuse patternsCombine telemetry, rate limits, and policy
Feedback captureImprove prompts, retrieval, and toolsKeep feedback privacy-aware

Responsible AI and safety controls

Responsible AI is practical in developer scenarios: detect risk, reduce harm, validate outputs, log decisions, and provide human oversight where needed.

RiskControl pattern
Harmful or unsafe user input/outputAzure AI Content Safety, content filters, moderation thresholds, escalation
Prompt injectionSeparate instructions from data, strip or isolate untrusted content, validate outputs
Data exfiltrationDo not expose system prompts, secrets, hidden tool outputs, or unauthorized retrieved data
PII leakageDetect/redact PII, minimize context, avoid logging sensitive content unnecessarily
Hallucinated answerGround with trusted sources, cite evidence, allow “I don’t know,” evaluate groundedness
Biased or unfair outputEvaluate representative data, review sensitive use cases, provide human review
Unsafe autonomous actionRequire approval for high-impact actions, restrict tools, log decisions
Overreliance by usersShow confidence, citations, limitations, and escalation paths
Model or prompt regressionVersion prompts, run evaluation suites, compare before deployment
Abuse and cost attacksRate limit, authenticate, monitor usage, set quotas and alerts

Deployment and operations

Production readiness checklist

AreaCheck
App architectureSeparate client, orchestration/API layer, model calls, retrieval, and tools
IdentityUse managed identity or Entra ID where possible
SecretsStore keys in Key Vault; rotate and audit access
RetrievalTest index freshness, metadata filters, and citation accuracy
PromptingVersion prompts and evaluate before release
ToolsValidate arguments, authorize actions, handle retries and timeouts
SafetyRun input/output moderation and policy checks
ObservabilityTrace model calls, retrieval, tool calls, failures, latency, and token use
ReliabilityImplement retries with backoff for transient errors
PrivacyRedact or avoid sensitive prompt/response logging
EvaluationMaintain regression set for quality and safety
RollbackKeep known-good prompt/model/config versions
Notes and examples

Troubleshooting quick table

Symptom/errorCommon causeResponse
401 UnauthorizedBad credential, expired token, wrong auth methodCheck identity, key, token acquisition, and SDK config
403 ForbiddenIdentity lacks role or network access blockedVerify RBAC/data-plane roles, private endpoint, firewall
404 deployment/resource not foundWrong endpoint, resource, deployment name, or regionConfirm endpoint and Azure deployment name
429 throttlingToo much concurrency or request volumeRetry with exponential backoff, queue, reduce parallelism
5xx/transient errorsService or network transient issueRetry safely, add circuit breaker, monitor status
JSON parse failureModel did not follow output formatUse schema/structured output, lower temperature, validate and retry
Tool loopAgent keeps requesting toolsLimit iterations, improve instructions, return clearer tool errors
Hallucinated answerWeak grounding or missing contextImprove retrieval, require “insufficient information” behavior
High token useLong history, excessive context, verbose toolsSummarize history, reduce chunks, compress tool output
Slow responseRetrieval/tool/model latencyTrace each step, stream output, cache safe results

Troubleshooting patterns

ProblemLikely explanationReview action
401 UnauthorizedMissing/invalid credentialCheck identity, token, key, endpoint, and configuration
403 ForbiddenIdentity lacks permissionCheck RBAC, resource access, network rules, or policy
404 Not Found for model callWrong endpoint or deployment nameVerify Azure resource endpoint and deployment identifier
429 Too Many RequestsRate limit or quota exceededUse backoff, batching, quota planning, or workload smoothing
Context length errorPrompt, history, retrieved chunks, or tool results too largeTrim, summarize, reduce top-k, or choose model with larger context
Malformed JSON outputModel not constrained or output not validatedUse structured output and schema validation
Poor answer qualityWeak prompt, bad context, wrong model, or missing evaluationIsolate prompt, retrieval, model, and data issues
Unsafe outputSafety controls insufficientAdd content safety checks, refusal rules, and review workflows
Tool call has bad parametersWeak tool schema or missing validationTighten schema, add examples, validate server-side
Search returns no resultsQuery mismatch, filters too strict, stale indexTest without filters, inspect index fields, refresh data
Search returns irrelevant resultsPoor chunking, no hybrid search, weak metadataRechunk, enrich, tune query, add semantic ranking
App works locally but not in AzureIdentity, networking, environment variables, or managed identity issueCompare configuration and permissions across environments

Common AI-103 exam traps

TrapCorrect exam mindset
“Use fine-tuning for private knowledge”Use RAG for changing or source-grounded private data; fine-tune for behavior/style/task examples
“The LLM securely enforces permissions”Your app must enforce identity, authorization, filters, and tool permissions
“Prompt instructions are security controls”Prompts help behavior but are not sufficient security boundaries
“Vector search is always better than keyword search”Hybrid search often performs better for enterprise content
“Semantic ranking controls access”It ranks results; it does not authorize users
“Agent equals workflow”Agents choose steps dynamically; workflows execute defined logic
“Tool schemas guarantee safe execution”Validate, authorize, sanitize, and log in application code
“Content filters replace app policy”Filters are one layer; add business rules, review, and monitoring
“More retrieved chunks always improve answers”Too much context can add noise, cost, and latency
“Conversation history can grow forever”Summarize, truncate, or selectively retain context
“Logging everything helps debugging”AI logs may contain sensitive data; design privacy-aware telemetry
“Model name and deployment name are interchangeable”Azure app calls commonly use the deployment name configured in Azure

Rapid review checklist

Before practice, make sure you can explain:

  • When to use Microsoft Foundry, Azure OpenAI, Azure AI Search, Azure AI services, and Azure AI Content Safety.
  • The difference between direct prompting, RAG, tool calling, and agents.
  • How embeddings, chunking, metadata, filters, and hybrid search affect RAG quality.
  • Why managed identity, RBAC, Key Vault, private networking, and data filtering matter.
  • How to evaluate groundedness, relevance, safety, retrieval quality, and latency.
  • How to troubleshoot auth errors, deployment-name issues, throttling, poor retrieval, hallucinations, and tool loops.
  • Why prompt injection requires application-level defenses.

Fast exam orientation

For AI-103, expect practical developer scenarios rather than isolated definitions. A strong candidate can connect Azure AI services, model deployments, search, agents, security, safety, and operations into working application patterns.

AreaWhat to be ready to decideCommon exam angle
Azure AI app architectureHow the app uses models, data, tools, identity, safety, and telemetryChoose the missing component in an app design
Microsoft Foundry and model useSelect, deploy, test, evaluate, and monitor modelsDistinguish model selection from prompt, RAG, or fine-tuning decisions
Agents and tool useBuild agents that call functions, use knowledge, maintain context, and respect guardrailsDistinguish app-handled function calls from service-managed tools; validate permissions, arguments, and results
Retrieval-augmented generationIngest, chunk, embed, index, retrieve, rerank, ground, and cite source contentFix hallucination, irrelevant retrieval, stale indexes, or poor chunking
Azure AI SearchUse keyword, vector, hybrid, semantic ranking, filters, facets, and index schemasPick the right query and index configuration
Azure AI servicesApply language, speech, vision, document intelligence, translation, and safety servicesSelect the purpose-built service instead of forcing a generative model
Responsible AI and securityProtect users, data, tools, prompts, outputs, and infrastructureAvoid treating prompts or content filters as authorization controls
Deployment and operationsHandle latency, throttling, retries, monitoring, evaluation, and costDiagnose runtime errors and quality regressions

Include visual, audio, and extraction work

AI-103 is broader than chat and RAG. The current study guide includes image/video generation and editing as well as visual understanding, speech and audio processing, translation, and information extraction. Distinguish producing new media from analyzing existing input. For extraction, check the required fields or Markdown and how the application validates the result.

High-yield decision rules

If the scenario says…Usually think…Why
“Answer questions using company documents”Retrieval-augmented generation with Azure AI SearchThe model needs current, private, grounded context
“Find semantically similar passages”Embeddings and vector searchEmbeddings represent meaning for similarity comparison
“Search should use both exact terms and semantic meaning”Hybrid searchCombines keyword matching with vector similarity
“Improve ranking of natural-language search results”Semantic ranking/rerankingReranks likely relevant text results; it is not the same as generating embeddings
“Extract fields from invoices, forms, receipts, or documents”Azure AI Document IntelligencePurpose-built document extraction is usually better than raw prompting
“Detect PII, sentiment, key phrases, or entities”Azure AI LanguageUse purpose-built NLP capabilities when the task is standard
“Transcribe calls or synthesize voice”Azure AI SpeechDo not choose text-only services for audio requirements
“Moderate harmful text or images”Azure AI Content SafetySafety classification is a separate control from model generation
“Need repeatable JSON output for an API”Structured output plus schema validationPrompt instructions alone are not enough
“Need a model to perform a business transaction”Tool/function calling with server-side validationThe model proposes; the app authorizes and executes
“User asks complex multi-step goal with tool choices”Agent patternAgents are useful when steps are dynamic, not fixed
“Need current private data without changing model weights”RAG, not fine-tuningFine-tuning teaches behavior/style; RAG supplies facts
“Need reduce hallucinations”Improve grounding, retrieval, citations, evaluation, and refusal behaviorLowering temperature alone rarely solves poor grounding
“Need secure Azure-to-Azure access”Managed identity and RBAC where supportedAvoid hard-coded secrets and broad API keys

Microsoft Foundry and model deployment review

Microsoft Foundry is central to building and managing modern Azure AI apps. For exam prep, focus on the development lifecycle rather than memorizing screen names.

Model lifecycle checklist

  1. Define task: chat, summarization, classification, extraction, embedding, image/audio processing, agentic action, or multimodal reasoning.
  2. Select model: balance capability, context length, modality, latency, throughput, region availability, and cost.
  3. Deploy or connect: configure endpoint, deployment name, model version, and access controls.
  4. Build prompt/app flow: instructions, context, tools, retrieval, output schema, and error handling.
  5. Evaluate: quality, safety, groundedness, relevance, task success, latency, and token usage.
  6. Deploy application: use environment configuration, secrets management, CI/CD, and least privilege.
  7. Monitor and improve: collect telemetry, compare prompt/model versions, and run regression evaluations.

Common configuration settings

SettingWhat it affectsExam trap
Deployment nameWhat the application calls at runtimeIn Azure-hosted model APIs, code often references the deployment, not just a public model name
Model/versionCapability, behavior, supported features, and lifecycleChanging model versions can change responses; evaluate before rollout
Context windowAmount of input and history that can be consideredMore context is not automatically better if it is irrelevant
Max output tokensUpper bound on generated response lengthToo low can truncate answers; too high increases cost and latency
TemperatureRandomness/creativityLower values improve consistency but do not guarantee factual accuracy
Top-pNucleus sampling behaviorUsually tune either temperature or top-p first, not both randomly
StreamingSends partial output as it is generatedImproves perceived latency but requires client handling
Structured outputConstrains response formatStill validate output server-side
Content filters/safety settingsReduce unsafe content exposureNot a replacement for authorization, validation, or human review

Prompting and structured generation

Prompting is not just wording. In production-style exam scenarios, it is part of a controlled application contract.

Strong prompt pattern

A strong prompt usually includes:

  • Role or task: what the model should do.
  • Authoritative context: retrieved content, user data, or tool results.
  • Boundaries: what to ignore, when to refuse, and what not to infer.
  • Output format: JSON schema, bullet list, table, or concise answer.
  • Examples: when useful for style or edge cases.
  • Citation rules: if answers must be grounded in retrieved sources.
  • Safety rules: do not expose secrets, hidden instructions, or unauthorized data.
Notes and examples

Prompting traps

TrapWhy it mattersBetter approach
Putting security policy only in the promptA malicious user may override or manipulate natural-language instructionsEnforce security in application code and identity controls
Passing raw untrusted documents as instructionsRetrieved content can contain prompt injectionTreat retrieved text as data, isolate it, and validate output
Asking for JSON without validationModels can produce malformed or extra textUse structured output features where available and validate with a parser/schema
Using long chat history blindlyOld context can conflict with current instructions and increase costSummarize, trim, or store only relevant state
Relying on temperature for correctnessCorrectness depends on grounding and evaluationImprove source data, retrieval, prompt constraints, and validation
Hiding business rules in examples onlyExamples may not cover edge casesState rules explicitly and test edge cases with topic drills

RAG is one of the highest-yield AI-103 patterns. It lets a generative model answer using data that was not part of its training data.

RAG pipeline

StageDeveloper decisionsCommon mistakes
Source selectionWhich documents, databases, or storage containers are authoritativeIndexing unapproved or stale content
IngestionPush documents or use indexers/connectors where appropriateForgetting refresh schedules and deletion handling
ChunkingSplit content by semantic sections, headings, paragraphs, or token limitsChunks too large, too small, or split mid-thought
EnrichmentExtract metadata, OCR, entities, summaries, or normalized fieldsMissing metadata needed for filters and security trimming
EmbeddingGenerate vector representations for chunks and queriesUsing inconsistent embedding models or dimensions
Index designDefine fields, vector fields, searchable fields, filterable metadata, analyzersNot marking fields filterable/sortable/facetable when needed
RetrievalChoose keyword, vector, hybrid, filters, top-k, semantic rankingRetrieving irrelevant context or too much context
GenerationPass selected context with instructions and citation rulesAllowing model to answer beyond provided evidence
EvaluationMeasure groundedness, relevance, retrieval precision/recall, and user outcomesJudging only by a few manual examples
Notes and examples

Azure AI Search review

FeatureUse whenWatch for
Search indexStore searchable documents and fieldsSchema design matters; field attributes affect query capabilities
Keyword searchNeed exact terms, product codes, names, or legal wordingMay miss semantically similar content
Vector searchNeed meaning-based similarityRequires embeddings and compatible vector field dimensions
Hybrid searchNeed both lexical and semantic similarityOften improves enterprise document retrieval
Semantic rankerNeed improved ranking/captions for natural-language resultsIt reranks; it does not replace indexing quality
FiltersNeed scope by user, tenant, department, date, product, region, or document typeFilters require filterable fields and correct metadata
FacetsNeed result navigation or counts by categoryRequires facetable fields
Scoring profilesNeed boost specific fields or freshnessBad boosts can bury relevant results
Indexers/skillsetsNeed automated ingestion or enrichment from supported sourcesStill validate extraction quality and refresh behavior
Synonyms/analyzersNeed domain vocabulary handlingDo not use them as a substitute for embeddings when semantic meaning matters

RAG troubleshooting table

SymptomLikely causeFix
Model hallucinates unsupported factsMissing or irrelevant retrieved contextImprove retrieval, require citations, add refusal rule, evaluate groundedness
Correct document is not retrievedPoor chunking, missing metadata, weak query expansion, wrong embedding setupRechunk, enrich metadata, use hybrid search, check vector dimensions
Results ignore user permissionsNo security trimming or tenant filteringAdd authorization-aware filters before retrieval
Answers cite wrong sourceRetrieved chunks are ambiguous or citation mapping is weakStore source IDs, page numbers, section titles, and stable links
Latency is highToo many retrieved chunks, large prompts, slow tools, no cachingReduce top-k, compress context, cache embeddings/results, stream output
Answers are outdatedIndex refresh problem or stale sourceRefresh index, track source version, monitor ingestion failures
Retrieval works in tests but fails in productionDifferent data distribution or user wordingAdd query rewriting, synonyms, hybrid search, and real-user evaluation sets
Prompt injection from documents affects answerRetrieved content contains malicious instructionsTreat documents as data, not instructions; isolate context and validate outputs

Azure AI services integration review

Not every task needs a general-purpose generative model. AI-103 scenarios may reward choosing a purpose-built Azure AI service.

Service/capabilityUse forDeveloper focusTrap
Azure OpenAI / generative models in Microsoft FoundryChat, summarization, reasoning, embeddings, structured generation, multimodal tasks where supportedDeployments, prompts, tokens, safety, evaluations, tool callingUsing generation for deterministic extraction without validation
Azure AI SearchEnterprise search, vector search, hybrid retrieval, RAG groundingIndex schema, embeddings, filters, ranking, index refreshConfusing retrieval with generation
Azure AI LanguageEntity recognition, PII detection, sentiment, key phrases, classification, language analysisText input/output, confidence, batch handlingChoosing a chat model when standard NLP capability is enough
Azure AI Document IntelligenceExtract structured data from documents, forms, receipts, invoices, IDs, or custom document typesModels, fields, confidence scores, human review for low confidenceTreating OCR text alone as reliable structured extraction
Azure AI VisionImage analysis, OCR-style image understanding, tagging, object/caption scenarios where appropriateImage input, supported features, confidenceUsing text-only models for visual tasks
Azure AI SpeechSpeech-to-text, text-to-speech, translation or transcription scenariosAudio format, latency, speaker/audio quality, language supportForgetting audio preprocessing and streaming constraints
Azure AI TranslatorText translationLanguage detection, target language, formattingUsing a generative model for simple high-volume translation
Azure AI Content SafetyHarmful content detection and moderation supportCategories, severity, thresholds, review workflowsTreating moderation as a full security model

Security, identity, and data protection

Security questions often test whether you know where enforcement belongs. A prompt can guide a model, but it cannot replace identity, authorization, networking, or validation.

RequirementPreferAvoid
Azure service-to-service authenticationManaged identity with least-privilege RBAC where supportedHard-coded keys in source code
Store secrets or API keysAzure Key Vault and secure app configurationSecrets in client apps, repos, logs, or prompts
Human/admin accessMicrosoft Entra ID and role-based access controlShared accounts or broad owner permissions
Restrict network exposurePrivate endpoints, network rules, and secure deployment architecture where requiredPublic access by default without review
Authorize user data retrievalApp-level authorization plus search filters/security trimmingAsking the model to decide whether the user may see data
Protect tool callsServer-side validation, allow lists, scoped permissions, audit logsLetting model-generated arguments call sensitive APIs directly
Protect sensitive promptsKeep system instructions and secrets out of user-visible contentSending secrets as prompt text
Reduce data exposureData minimization and retention controlsPassing full documents or histories when only a few chunks are needed
Notes and examples

Authorization rule to remember

If a user is not allowed to read or perform something outside the AI app, the AI app must not allow the model or agent to expose or perform it either. Enforce that before retrieval and before tool execution.

Evaluation and monitoring

Quality evaluation is not optional for AI apps and agents. Traditional tests confirm that code runs; AI evaluations check whether outputs are useful, safe, grounded, and consistent.

What to evaluate before release

DimensionWhat good looks like
RelevanceAnswer addresses the user’s actual question
GroundednessClaims are supported by retrieved or provided context
Retrieval qualityCorrect sources appear in top results
Citation accuracyCitations point to the supporting source
Task completionAgent completes the intended workflow
Tool correctnessTool calls use valid arguments and respect permissions
SafetyHarmful, sensitive, or disallowed content is handled correctly
RobustnessApp handles ambiguous, adversarial, and out-of-scope prompts
LatencyResponse time meets user experience requirements
CostToken, model, search, and tool usage are within budget
Notes and examples

Runtime telemetry to monitor

Track more than HTTP success.

  • Request volume and rate limits
  • Latency by model, retrieval, and tool step
  • Input/output token usage
  • Retrieval hit rate and top document scores
  • No-answer or fallback frequency
  • Tool call success/failure rates
  • Content safety flags
  • User feedback and corrections
  • Prompt version, model version, and deployment version
  • Exceptions, retries, and throttling
  • Cost trends by tenant, user group, or feature

Performance and cost review

Token usage matters because retrieved context, chat history, tool results, and generated output all increase latency and cost.

\[ \text{Approximate token cost} = \left(\frac{T_{in}}{1000}\times P_{in}\right) + \left(\frac{T_{out}}{1000}\times P_{out}\right) \]

Where \(T_{in}\) includes user input, system/developer instructions, retrieved context, conversation history, and tool results; \(T_{out}\) includes generated response tokens.

Optimization leverHelps withTradeoff
Use smaller model for simpler tasksCost and latencyMay reduce reasoning quality
Reduce retrieved chunksCost, latency, focusMay miss needed evidence
Improve chunking and filtersRelevance and token efficiencyRequires better ingestion design
Cache embeddingsCost and ingestion speedMust handle source updates
Cache common answers/resultsLatency and costMust avoid stale or unauthorized responses
Stream responsesPerceived latencyMore client complexity
Summarize long historyContext sizeSummary may lose detail
Batch offline processingThroughput and costNot suitable for interactive responses
Use purpose-built servicesAccuracy, cost, maintainabilityLess flexible than general generation
Add retries with backoffResilience to transient failuresCan increase latency if overused

Common AI-103 candidate mistakes

  • Choosing fine-tuning when the scenario needs access to current private documents.
  • Choosing RAG when the task is a simple fixed classification supported by Azure AI Language.
  • Assuming vector search automatically enforces user permissions.
  • Forgetting to mark metadata fields as filterable when filters are required.
  • Treating content safety as the same thing as authentication or authorization.
  • Passing full documents to the model instead of retrieving focused chunks.
  • Ignoring citation requirements in grounded answers.
  • Letting model-generated tool arguments execute without validation.
  • Storing API keys in application code or exposing them to browser clients.
  • Monitoring only service uptime and not groundedness, safety, retrieval quality, or cost.
  • Using an agent for a fixed workflow that should be deterministic.
  • Using a general chat model for document extraction without confidence handling or validation.
  • Assuming lower temperature fixes wrong answers caused by bad retrieval.
  • Forgetting that Azure-hosted model calls may use deployment names configured in Azure.
  • Failing to handle throttling, transient failures, and timeout behavior.
  • Overloading prompts with irrelevant history and context.
  • Ignoring prompt injection in retrieved documents or tool outputs.
  • Forgetting that a search index must be refreshed as source content changes.
  • Allowing the model to infer missing facts instead of refusing or asking for clarification.
  • Not testing edge cases with original practice questions and detailed explanations.

Rapid self-check before practice

You are ready for AI-103 question-bank practice if you can answer these without looking them up:

  1. When would you choose RAG instead of fine-tuning?
  2. What fields should a search index include for secure, citation-based RAG?
  3. How does hybrid search differ from pure vector search?
  4. What does semantic ranking improve, and what does it not do?
  5. What happens between a model proposing a tool call and the tool actually running?
  6. Which controls belong in code instead of prompts?
  7. How would you reduce hallucinations in an enterprise document assistant?
  8. What telemetry proves an AI app is working well, not merely online?
  9. How would you handle a user request that requires a high-impact action?
  10. Which Azure AI service fits speech, document extraction, translation, moderation, or entity detection scenarios?
  11. How do managed identities and RBAC improve security compared with embedded keys?
  12. What should you check first when an app returns 403, 404, 429, or context-length errors?

Put the review into practice