Microsoft Developing AI Cloud Solutions on Azure (AI-200)
Get full access to the updated question bank and confidently prepare for your exam.
Vendor
Microsoft
Certification
AI & Data
Content
74 Qs
Status
Verified
Updated
18 hours ago
Test the Practice Engine
Experience our interactive testing environment with free demo questions
Premium Bundle
Complete Success Suite
Save $34 Instantly
-
โFull PDF + Interactive Engine Everything you need to pass
-
โAll Advanced Question Types Drag & Drop, Hotspots, Case Studies
-
โPriority 24/7 Expert Support Direct line to certification leads
-
โ90 Days Free Priority Updates Stay current as exams change
Success Metric
98.4% Pass Rate
Standard Simulation
Practice Engine
One-Time Payment
-
Web-Based (Zero Install)
-
Real Testing Environment Virtual & Practice Modes
-
Interactive Engine Drag & Drop, Hotspots
-
60 Days Free Updates
Compatible with All Devices
Basic Tier
PDF Study Guide
Digital Access
- โ Exam Questions (PDF)
- โ Mobile Friendly
- โ 60 Days Updates
Verified 15-Question Preview (AI-200)
Verified Community
The CertoMetrics Standard.
Recommend the #1 platform for verified Microsoft certification resources.
Success Network
Help a Colleague Succeed.
Invite a peer to get their own updated AI-200 prep kit.
Exam Overview
The Microsoft AI-200 certification, 'Developing AI Cloud Solutions on Azure,' validates your expertise in leveraging Azure services to build, manage, and deploy cutting-edge artificial intelligence solutions. This credential signifies your proficiency in designing and implementing AI applications that can revolutionize business processes, enhance customer experiences, and drive data-driven innovation. Earning the AI-200 demonstrates a deep understanding of Azure Cognitive Services, Machine Learning, and Bot Framework, positioning you as a highly sought-after professional in the rapidly evolving AI landscape. It empowers developers and AI engineers to translate complex business needs into scalable, intelligent cloud solutions, accelerating career growth and contributing significantly to an organization's digital transformation journey.
Questions
40-60
Passing Score
700/1000
Duration
100-120 Minutes
Difficulty
Intermediate
Level
Associate
Skills Measured
Career Path
Target Roles
Common Questions
Is the material up to date?
Yes. We update our question bank weekly to match the latest Microsoft standards. You get free updates for 90 days.
What format do I get?
You get instant access to both the **PDF** (for reading) and our **Premium Test Engine** (for exam simulation).
Is there a guarantee?
Absolutely. If you fail the AI-200 exam using our materials, we offer a full money-back guarantee.
When do I get the download?
Instantly. The download link is available in your dashboard immediately after payment is confirmed.
Free Study Guide Samples
Previewing updated AI-200 bank (15 Questions).
You need to deploy Azure Function resources and apps by using an automated, version-controlled pipeline that supports declarative infrastructure deployment. What should you use?
Correct Option: D
โ Option D (Correct) Reasoning: GitHub Actions provides a robust, automated, and version-controlled pipeline solution. It integrates directly with Git repositories, allowing for CI/CD workflows that can build, test, and deploy Azure Function resources and applications. This platform excels at supporting declarative infrastructure deployment, for instance, by executing ARM templates or Bicep files within the workflow, fulfilling all the requirements of an automated, version-controlled pipeline for declarative infrastructure.โ Why the other choices are incorrect:
Option A is incorrect: Azure CLI is a command-line tool used for managing Azure resources. While it can be used to deploy resources, it is not a complete automated, version-controlled pipeline system itself but rather a component that might be used within such a pipeline.
Option B is incorrect: Azure Functions Core Tools are primarily for local development, testing, and debugging of Azure Functions. They can be used to publish functions, but they do not provide the framework for an automated, version-controlled, declarative deployment pipeline.
Option C is incorrect: Local Git deployment refers to pushing code directly from a local Git repository to Azure. While it offers version control for the code, it is a basic form of deployment and lacks the comprehensive automation, pipeline capabilities, and declarative infrastructure support inherent in a full CI/CD system.
Reference: https://docs.microsoft.com/azure/azure-functions/functions-how-to-github-actions
You maintain multiple versions of a container image in Azure Container Registry.
The production deployment must always run the exact same image build even if tags are changed later.
You need to ensure predictable and immutable image selection during deployment.
What should you do?
Correct Option: D
✅ Option D (Correct)
Reasoning: An image's SHA digest is a content-addressable, immutable identifier. Deploying an image by its SHA digest guarantees that the exact same image build is always used, regardless of tag changes. This ensures predictable and immutable image selection for production.
❌ Why the other choices are incorrect:
- Option A is incorrect: Tags are mutable. Reassigning the 'production' tag to a different image means future deployments using that tag will fetch the new image, not the original build.
- Option B is incorrect: Scheduling nightly rebuilds relates to image creation frequency, not immutable image selection for deployment. It does not solve the core problem of predictable selection.
- Option C is incorrect: The 'latest' tag is highly mutable, always pointing to the most recent push. This prevents predictable and consistent image selection for production deployments.
Reference: https://learn.microsoft.com/en-us/azure/container-registry/container-registry-repositories
A company is implementing a publish-subscribe (Pub/Sub) messaging component by using Azure Service Bus. You are developing the first subscription application.
In the Azure portal you see that messages are being sent to the subscription for each topic. You create and initialize a subscription client object by supplying the correct details, but the subscription application is still not consuming the messages.
You need to ensure that the subscription client processes all messages.
Which code segment should you use?
Correct Option: B
โ
Option B (Correct) Reasoning: The RegisterMessageHandler method is fundamental for an Azure Service Bus subscription client to begin actively processing messages. It registers a delegate, such as ProcessMessagesAsync, that the client invokes when messages are received from the subscription. Without registering a message handler, the initialized client will not consume or process any incoming messages, directly addressing the scenario where messages are not being consumed.โ Why the other choices are incorrect:
Option A is incorrect: This option initializes a new SubscriptionClient. The question states the client is already created and initialized, so this step has already occurred. It does not initiate message consumption.
Option C is incorrect: CloseAsync() terminates the connection to the Service Bus. This would prevent, rather than enable, message processing by the client.
Option D is incorrect: AddRuleAsync applies filtering rules to a subscription. A TrueFilter allows all messages to pass, which is often the default or not the root cause when messages are not being consumed at all, irrespective of filtering. The issue is processing, not selection.
Reference: https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-dotnet-how-to-use-topics-subscriptions#process-messages
A container in an AKS cluster repeatedly restarts.
Pod events show probe failures, although node-level CPU and memory metrics are normal.
You need to diagnose the cause of the repeating restarts.
What should you do first?
Correct Option: D
Pod events already indicate probe failures. To diagnose why the probes are failing despite normal node resources, the next logical step is to inspect the detailed events and the container's application logs. These logs will reveal internal errors, application crashes, or specific conditions preventing the application from responding to the liveness probe.
Scaling replicas (A) might redistribute the problem but doesn't diagnose it. Decreasing initialDelaySeconds (B) would make the issue worse by restarting faster. Draining and rebooting the node (C) is premature, as node resources are normal, suggesting a container-specific issue.
Reference: https://learn.microsoft.com/en-us/azure/aks/monitor-aks
You develop an ASP.NET Core app that uses Azure App Configuration. You also create an App Configuration containing 100 settings.
The app must meet the following requirements:
- Ensure the consistency of all configuration data when changes to individual settings occur.
- Handle configuration data changes dynamically without causing the application to restart.
- Reduce the overall number of requests made to App Configuration APIs.
You must implement dynamic configuration updates in the app.
What are two ways to achieve this goal? Each correct answer presents part of the solution. NOTE: Each correct selection is worth one point.
Options:
Correct Option: B,C
โ
Option B (Correct) Reasoning: Increasing the App Configuration cache expiration time reduces the frequency with which the application polls for configuration changes. This directly decreases the number of requests made to the App Configuration APIs, fulfilling the requirement to reduce overall API calls.
โ
Option C (Correct) Reasoning: Implementing a sentinel key with the refreshAll parameter set to true is a standard pattern for ensuring consistency and dynamic updates. When the sentinel key's value changes, it signals that a batch of configuration settings has been updated, prompting the application to refresh all registered configuration data atomically and dynamically, thus ensuring consistency without an application restart. This also helps reduce API calls by only monitoring the sentinel key.
โ Why the other choices are incorrect:
Option A is incorrect: Decreasing the App Configuration cache expiration would cause the application to check for configuration changes more frequently, which would increase, not reduce, the number of requests made to the App Configuration APIs.
Option D is incorrect: Environment variables are typically static during an application's runtime. Updating them dynamically without an application restart is not natively supported or straightforward, and this approach does not reduce App Configuration API calls.
Option E is incorrect: Azure Key Vault is primarily used for managing secrets. While Azure App Configuration can reference secrets from Key Vault, using Key Vault directly for general configuration settings or implementing its configuration provider does not address the requirement for dynamic updates of all App Configuration settings or reducing App Configuration API calls.
Option F is incorrect: Setting the refreshAll parameter to false means only individually registered keys would be refreshed upon change. This would not ensure the consistency of all configuration data when a coordinated change across multiple settings occurs, which is a key requirement.
Reference: https://learn.microsoft.com/en-us/azure/azure-app-configuration/enable-dynamic-configuration-dotnet
You develop a message-processing service deployed to Azure Container Apps. The service reads messages from an Azure Service Bus queue.
The solution must minimize costs by ensuring NO compute resources are consumed when the queue is empty.
You need to configure scaling for the service.
Which two actions should you perform? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
Correct Option: B,C
โ
Option B (Correct)
Reasoning: To minimize costs by consuming no compute when idle, the scaling rule must be configured to allow termination of all active replicas. This is achieved by setting the minimum replica count (minReplicas) to 0, enabling the container app to scale down completely when no messages are present.
โ
Option C (Correct)
Reasoning: Azure Container Apps uses Kubernetes Event-driven Autoscaler (KEDA) for event-driven scaling. Configuring a KEDA rule to monitor the Service Bus queue length is critical to automatically scale the service out when messages arrive and scale in (potentially to zero) when the queue is empty.
โ Why the other choices are incorrect:
- Option A is incorrect: Increasing the maximum running replica count defines the upper scaling limit but does not address the requirement to scale down to zero replicas for cost minimization when the queue is empty.
- Option D is incorrect: HTTP ingress concurrency scaling is used for services exposed via HTTP based on concurrent requests, which is irrelevant for a message-processing service driven by an Azure Service Bus queue.
Reference: https://learn.microsoft.com/en-us/azure/container-apps/scale-app?pivots=container-apps-cli#azure-service-bus-queue
You are creating a hazard notification system that has a single signaling server which triggers audio and visual alarms to start and stop.
You implement Azure Service Bus to publish alarms. Each alarm controller uses Azure Service Bus to receive alarm signals as part of a transaction. Alarm events must be recorded for audit purposes. Each transaction record must include information about the alarm type that was activated.
You need to implement a reply trail auditing solution.
Which two actions should you perform?
Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
Correct Option: A,B
โ
Option A (Correct) Reasoning: The ReplyToSessionId property ensures that if the audit record is considered a 'reply' or a related message, it can be directed to a specific session on the sender's (original message's) side. This is crucial for maintaining session context in a reply trail, especially if audit records need to be processed in a session-aware manner or tied back to the original transaction's session.
โ
Option B (Correct) Reasoning: The CorrelationId property is explicitly designed to link messages together in a request-reply pattern or workflow. By assigning the original hazard message's MessageId to the audit record's CorrelationId, you establish a clear and auditable link, allowing the audit system to easily trace which original alarm message triggered a specific audit event.
โ Why the other choices are incorrect:
Option C is incorrect: The SequenceNumber is a system-assigned, read-only value for message ordering, and DeliveryCount tracks delivery attempts. Assigning one to the other is semantically incorrect and serves no purpose for auditing.
Option D is incorrect: The SessionId is for grouping related messages, while SequenceNumber is for ordering. Assigning a string SessionId to a numeric SequenceNumber is invalid and irrelevant to a reply trail.
Option E is incorrect: The MessageId uniquely identifies a message, and DeliveryCount indicates delivery attempts. Assigning MessageId to DeliveryCount is not how these properties are used and would not facilitate auditing.
Option F is incorrect: The MessageId is a unique identifier, and the SequenceNumber is a system-assigned order identifier. Assigning a MessageId to the SequenceNumber is not valid and does not contribute to a reply trail auditing solution.
You configure ACR Tasks to automate image builds.
Container images must rebuild when:
Application updates occur.
Base image updates occur, such as when the underlying OS image is updated.
Regular scheduled rebuilds are required.
You need to configure ACR Tasks to support automated image rebuilds.
Which three triggers should you configure? Each correct answer presents part of the solution.
NOTE: Each correct selection is worth one point.
Correct Option: A,B,D
โ Option A (Correct): The Timer trigger allows configuring scheduled image rebuilds at specific times or intervals, directly addressing the need for regular scheduled rebuilds.
โ Option B (Correct): The Source code commit trigger automatically initiates an image build when changes are pushed to a Git repository, ensuring application updates trigger a rebuild.
โ Option D (Correct): The Base image update trigger monitors upstream base images for updates. When a new base image version is detected, dependent application images are automatically rebuilt.
โ Why the other choices are incorrect:
- Option C is incorrect: The Registry event trigger responds to generic registry operations (e.g., image push/delete), but specific triggers like base image update or source code commit are more direct for the described scenarios.
- Option E is incorrect: The Webhook notification trigger allows external systems to trigger tasks but is not the native or most efficient mechanism for source code, base image, or scheduled updates when dedicated triggers exist.
Reference: https://docs.microsoft.com/azure/container-registry/container-registry-tasks-overview
You plan to deploy a web application to AKS.
The solution must:
- Scale out the application by adding more pods during peak CPU usage.
- Expose the application internally within the cluster only.
You need to configure a Kubernetes resource for each requirement.
Which resources should you configure? To answer, move the appropriate resources to the correct requirements. You may use each resource once, more than once, or not at all. You may need to move the split bar between panes or scroll to view content.
NOTE: Each correct selection is worth one point.
Correct Mappings:
โ HorizontalPodAutoscaler matches with -> Scale out the application.
Reasoning: The Horizontal Pod Autoscaler (HPA) is a Kubernetes resource that automatically adjusts the number of pod replicas in a Deployment or ReplicaSet. It monitors metrics like CPU utilization and scales out (adds more pods) when usage exceeds a defined threshold, which directly meets this requirement.
โ ClusterIP service matches with -> Expose the application internally only.
Reasoning: A ClusterIP service is the default service type in Kubernetes. It creates a stable, internal IP address that is only accessible from within the cluster. This is the standard method for enabling communication between different services inside the same Kubernetes cluster without exposing them externally.
You are developing several microservices to run on Azure Container Apps.
The microservices must allow HTTPS access by using a custom domain.
You need to configure the custom domain in Azure Container Apps.
In which order should you perform the actions? To answer, move all actions from the list of actions to the answer area and arrange them in the correct order.
Step 1: Enable ingress.
Before a custom domain can be configured, the container app must be exposed to external traffic. Enabling ingress creates the necessary HTTP endpoint for the app.
Step 2: Add the custom domain name.
In the Azure portal or via CLI, you initiate the process by specifying the custom domain you intend to use. This step provides the required DNS validation records.
Step 3: Add DNS records to the domain provider.
You must create the DNS records (typically TXT for validation and CNAME/A for routing) provided by Azure in your domain provider's DNS settings. This action proves your ownership of the domain.
Step 4: Validate the custom domain name.
After the DNS records have propagated, you complete the validation process in Azure. Azure verifies that the DNS records are correctly configured, confirming your ownership.
Step 5: Bind the certificate.
Once the domain is validated, the final step to enable HTTPS is to bind an SSL/TLS certificate. This can be a free managed certificate from Azure Container Apps or a certificate you upload.
Reference: https://learn.microsoft.com/en-us/azure/container-apps/custom-domains-managed-certificates
You are developing a microservices-based application that uses Azure Container Apps. The application consists of several containerized services that handle tasks, such as processing orders, managing inventory, and generating reports. You deploy a new revision of the processing orders app.
Processing orders must be triggered by a web request and must always be available based on incoming web requests.
You need to validate that the replica is ready to handle incoming requests.
What should you implement?
Premium Solution Locked
Unlock all 74 answers & explanations
You need to implement the semantic retrieval workflow for the recommendation engine to meet the technical and performance requirements of Fabrikam Inc.
Which four actions should you perform in sequence? To answer, move the appropriate actions from the list of actions to the answer area and arrange them in the correct order.
Premium Solution Locked
Unlock all 74 answers & explanations
You are developing a microservices-based application that uses Azure Container Apps. The application consists of several containerized services that handle tasks, such as processing orders, managing inventory, and generating reports.
You must secure the container apps. All apps must reside in the same virtual network, share the same Dapr configuration, and share the same logging location.
Apps must support the configuration of the amount of memory and compute resources available to containers.
You need to configure the Azure Container App.
How should you complete the CLI command? To answer, select the appropriate options in the answer area.
NOTE: Each correct selection is worth one point.
Premium Solution Locked
Unlock all 74 answers & explanations
You need to optimize vector search queries based on the technical requirements.
What should you do?
Premium Solution Locked
Unlock all 74 answers & explanations
You deploy an API to Azure Container Apps.
The solution must provide the following functionality:
- Support the concurrent activation of multiple application versions.
- Allocate a specific percentage of incoming requests to a secondary version.
You need to configure revision behavior.
Which configurations should you use? To answer, move the appropriate configurations to the correct requirements. You may use each configuration once, more than once, or not at all. You may need to move the split bar between panes or scroll to view content.
NOTE: Each correct selection is worth one point.
Premium Solution Locked
Unlock all 74 answers & explanations
Full Question Bank Locked
You have reached the end of the free study guide preview. Upgrade now to unlock all 74 questions and the full simulation engine.
Certification Path
Related Certifications
Customer Reviews
Global Community Feedback
David M.
"The practice engine is incredible. It feels exactly like the real testing environment and helped me build so much confidence."
Sarah J.
"The PDF is very well organized and the explanations for the answers are actually helpful, not just random text."
Michael C.
"I was skeptical, but the content is high quality and definitely worth the price. I passed on my first try!"