Community Q&A
AI-300 — frequently asked questions
Community-vetted answers to 75 common questions about this exam, each traced back to a specific practice question.
Questions from real practice questions
Each Q&A comes from a specific question — follow the link for the full analysisAzure ML Python SDK v2: Importing Labeled Image Data for Automated ML
What is the difference between AssetTypes.URI_FOLDER and FILE in Azure ML SDK v2?
URI_FOLDER indicates a directory containing multiple files, suitable for datasets like image classification folders. FILE indicates a single specific file location.
Why use azure.ai.ml.entities instead of azure.ai.ml.data?
SDK v2 uses 'entities' for standardized definitions of inputs, outputs, and assets. 'data' is associated with the older SDK v1 Dataset abstraction.
Responsible AI Dashboard Components in Azure ML
Why is Causal not used in the Responsible AI dashboard?
The dashboard focuses on interpretability and fairness. Causal analysis is a separate, more complex statistical field not included in the standard dashboard components.
What is the difference between Explanation and Counterfactuals?
Explanation ranks feature importance based on current data, while Counterfactuals simulates hypothetical changes to inputs to predict different outcomes.
Azure ML Asset Registration for Reusability
Why is Model not the best answer for reusability?
Models are outputs, not workflows. Components define the reusable process logic that produces those outputs.
What is the difference between Environment and Component?
Environments define software dependencies, while Components wrap code, environments, and I/O into a reusable, versioned task.
Azure ML Python SDK v2 FAILED Status Interpretation
What is the difference between FAILED and KILLED in Azure ML?
FAILED means the run ran into an error during execution. KILLED means the run was stopped manually or by the system before completion.
Does Azure ML SDK v2 return cancelled runs with status FAILED?
No. Cancelled or aborted runs have the status KILLED. Only runs that errored out have the status FAILED.
Implementing RAG Flow with Microsoft Foundry and Azure OpenAI
Why must I create a Data Asset before a Vector Index?
A Data Asset registers the raw local files within the Foundry workspace. The Vector Index operates on these registered assets to chunk and embed them; without the asset, there is no source data to index.
Can I create a Vector Index without an Azure AI Search resource?
No. The Vector Index is a component that resides within an Azure AI Search resource (the Search Resource). You must provision the search capability first before defining how data is indexed within it.
Assessing and Improving RAG Retrieval Quality Sequence
Why do I need to collect logs before running evaluators?
Logs provide the actual retrieved context needed by evaluators to score relevance and groundedness. Without logs, there is no data to measure.
Can I skip re-indexing after adjusting chunking?
No. Vector embeddings are generated based on chunks. Changing the chunking strategy requires rebuilding the index so the new segments are embedded correctly.
Evaluating RAG Answer Quality with Measurable Techniques
Why is user feedback not considered measurable?
User feedback is unstructured text or ratings that vary by individual interpretation. Measurable evaluation requires consistent, algorithmic scoring of attributes like Groundedness against a ground truth dataset.
What metrics should be used instead of user feedback?
Use automated evaluation metrics such as Groundedness (support from source), Relevance (alignment with query), and Faithfulness to quantitatively assess RAG performance changes.
Accessing Folder Data Assets in Azure ML
Why not use mltable.from_delimited_files() for CSVs?
Factory methods create new definitions from paths. Since the asset is already registered, you must load the existing asset reference instead.
Can I use mltable.load() with any file type?
Yes, mltable.load() works with registered assets regardless of the underlying file format, as long as the asset is properly defined in the workspace.
Azure ML SDK v2 Data Asset Protocol Selection
What is the difference between wasbs and abfss protocols?
wasbs is used for Azure Blob Storage containers without hierarchical namespaces. abfss is used for Azure Data Lake Storage Gen 2, which supports hierarchical namespaces and file-system-like operations.
Can I use azureml:// for external blob containers?
No, azureml:// is used for data assets stored within the Azure ML workspace's managed storage. External public or private containers require wasbs:// or https:// depending on authentication.
Azure ML Model Registration vs Deployment Distinction
What is the difference between az ml model create and az ml online-endpoint create?
az ml model create registers a model artifact in the workspace for versioning. az ml online-endpoint create provisions the infrastructure required to serve predictions from that model.
Can I deploy a model without registering it first?
Generally, no. You must register the model artifact in the workspace before you can reference it when creating a deployment or endpoint.
Azure ML Compute Targets for Experimentation vs Training
Why not use a Compute Cluster for interactive experimentation?
Compute Clusters are ephemeral and do not provide a persistent, pre-configured development environment like Jupyter or VS Code. They are designed for batch job execution, not interactive coding sessions.
Can I use a Compute Instance for model training?
Yes, but it is not optimal for scalable training. Instances are single-node resources and cannot auto-scale. For large jobs, a Compute Cluster is required to distribute the load across multiple nodes efficiently.
Cloning GitHub Repositories to Azure ML Workspaces via SSH
Why do I need to use SSH instead of HTTPS?
SSH is preferred in cloud environments like Azure ML because it allows for key-based authentication without storing passwords in scripts or environment variables, enhancing security.
Can I clone directly without generating a new key?
No, unless you have previously configured and saved an SSH key pair that is already trusted by GitHub. For a fresh workspace, you must generate and register a new key.
Updating Azure ML Environments with New Docker Images
Can I edit an existing Azure ML Environment to change its Docker image?
No. Azure ML Environments are immutable. You cannot modify the base image of an existing environment record. You must create a new version of the environment with the updated image.
What is the difference between tags and the Docker image reference?
Tags are user-defined labels for organization and filtering (metadata). The Docker image reference determines the actual software stack run during training. Changing a tag does not change the image.
Azure ML Hub and Projects Governance Model
What is the difference between a Hub workspace and a Project workspace?
A Hub workspace provides centralized management for shared resources, policies, and identity across the organization. Project workspaces are isolated environments linked to the Hub, allowing teams to collaborate on specific models without affecting other teams.
Can I use Resource Groups instead of Hub and Projects for isolation?
Resource Groups provide Azure-level billing and access isolation, but they do not offer the ML-specific governance features like shared datasets, compute targets, and unified policy enforcement that Hub and Projects provide.
Automating GenAI Evaluation in CI Pipelines
Can I use Azure ML pipelines instead of GitHub Actions?
Yes, but the question specifically asks about automating evaluations for pull requests, which is a CI task typically handled by GitHub Actions.
What is the difference between a blocklist and an evaluation?
A blocklist is a static filter for specific terms, while an evaluation uses models to assess safety and quality dynamically against defined thresholds.
Ensuring Consistent Runtime Dependencies with Azure ML Environments
What is the difference between an Azure ML Environment and a Job Configuration?
An Environment packages the software dependencies (Python packages, Docker image) needed to run code. A Job Configuration defines how the job runs (compute target, script path, parameters) but does not contain the software itself.
Why do I get different results when running the same training script?
This is often caused by inconsistent runtime dependencies. Using an Azure ML Environment ensures that every run uses the exact same versions of libraries and system tools, leading to reproducible results.
Creating a New Jupyter Kernel in Azure ML Compute Instance
Why can't I just install Jupyter in the base environment?
While possible, isolating dependencies in a new Conda environment prevents version conflicts with core Azure ML libraries and ensures reproducibility for your specific model workflows.
What happens if I skip 'conda activate'?
If you skip activation, conda install will default to the base environment. Consequently, your new kernel will either fail to launch due to missing dependencies or lack the specific packages defined in requirements.txt.
Azure ML Workspace Managed Identity Git Access
Why is a managed identity better than a pipeline variable for Git access?
Managed identities provide automatic, rotation-free authentication via Azure AD without storing secrets in code or variables, significantly reducing the attack surface.
Does Azure ML support managed identity for GitHub specifically?
Yes, Azure ML workspaces can use managed identities to authenticate to Azure Repos and GitHub Enterprise Server, depending on the specific integration configuration.
Configuring Time-Limited Azure Blob Datastore Access in SDK v2
How do I extract the container name from an Azure Blob Storage URL?
In the URL format https://<account>.blob.core.windows.net/<container>, the container name is the segment directly following the domain suffix. For example, in https://storage1.blob.core.windows.net/data1, the container is 'data1'.
Why can't I use AccountKeyConfiguration for time-limited access?
AccountKeyConfiguration uses the primary or secondary storage account key, which grants full, permanent access to the storage account. It does not support expiring tokens, making it unsuitable for scenarios requiring limited-duration access.
Azure ML SDK v2: Registering Components via YAML
What is the difference between load_component and create_or_update?
load_component parses a local YAML file into a Python object, while create_or_update sends that object to the Azure ML service to register it.
Can I register a component without a YAML file?
Yes, you can define components programmatically using Python classes, but this question specifically requires handling a local YAML definition.
Maximizing Git Clone Performance in Azure ML Workspace
Why use SSH instead of HTTPS for cloning in Azure ML?
SSH keys allow for passwordless, automated authentication which is faster and more secure than entering credentials repeatedly via HTTPS, especially important for CI/CD pipelines.
Can I clone a repo without a compute instance?
No, you need a compute resource like a Compute Instance or Compute Cluster to host the environment where the Git repository will be cloned and managed.
Generating Summary Statistics with Pandas Describe in Azure ML
Does .describe() include non-empty values?
Yes, the 'count' row in the output of .describe() represents the number of non-null (non-empty) values for each column.
How can I get only numerical columns for describe?
You can select only numerical columns using df.select_dtypes(include=['number']) before calling .describe() to exclude categorical data.
What percentiles does .describe() provide by default?
By default, .describe() provides the 25th, 50th (median), and 75th percentiles along with count, mean, std, min, and max.
Configuring Data Drift Monitoring and Alerts in Azure ML
What is the difference between data drift and prediction drift in AML?
Data drift monitors changes in the input features compared to the training baseline, while prediction drift monitors changes in the output scores. Both can impact model performance.
Can I automate retraining using AML monitoring?
Yes, by configuring alerts on drift metrics and linking them to an Azure Machine Learning pipeline that triggers automatic model retraining when thresholds are exceeded.
Implementing Fairness Without Retraining Using Fairlearn Post-Processing
What is the difference between pre-processing and post-processing in Fairlearn?
Pre-processing modifies input data before training to remove bias correlations, while post-processing adjusts model outputs (like thresholds) after training to satisfy fairness constraints without changing the model itself.
Why can't I use ExponentiatedGradient if I cannot retrain the model?
ExponentiatedGradient is a reduction method that wraps the base estimator and modifies the training loop, effectively requiring retraining or iterative updates to the model based on sample weights.
Troubleshooting Azure ML Real-Time Endpoints
What causes intermittent 5xx errors in Azure ML real-time endpoints?
Intermittent 5xx errors are often caused by resource exhaustion when traffic spikes exceed the current instance count. Adjusting autoscaling settings helps the service handle load more effectively.
How do I debug unexpected responses from an Azure ML endpoint?
Unexpected responses usually result from scoring script errors or data format mismatches. Reviewing deployment logs provides detailed stack traces and error messages to pinpoint the exact failure point in your code.
Azure ML Online Endpoint Performance Monitoring Metrics
Why is feature count not a performance metric?
Feature count is a static attribute of the model's input schema. It does not change during inference and does not reflect the endpoint's processing speed or resource utilization.
How do Connections active and Requests per minute differ?
Connections active measures concurrent sessions at any given moment, indicating immediate load. Requests per minute measures the rate of incoming requests over time, indicating overall throughput trends.
Azure ML Monitoring: Alert Rules vs Autoscaling
Can autoscaling trigger a retraining pipeline?
No, autoscaling only adjusts compute resources. Retraining is triggered separately via alert rules configured for specific data or model drift thresholds.
What happens if no alert rules are configured?
Monitoring metrics will be collected but no automated notifications or downstream integrations will occur when thresholds are exceeded.
Configuring MLflow Experiment Tracking in Azure Machine Learning
What is the role of MLflow Tracking URI in Azure ML?
The MLflow Tracking URI directs experiment runs to be logged to the Azure ML workspace, enabling centralized storage and comparison of run histories.
How do I ensure performance values appear in run history?
Use MLflow metrics logging functions like mlflow.log_metric to explicitly record performance values, which then appear in the run history for analysis.
Assessing Responsible AI Fairness and Transparency in Azure ML
Why is global error rate analysis insufficient for Responsible AI?
Global error rates mask disparities within specific subgroups. A model can have high overall accuracy but perform poorly for protected groups, violating fairness principles.
What does feature importance tell us about a model?
Feature importance reveals which input variables most significantly influence predictions, aiding in transparency and helping detect if protected attributes or their proxies are driving decisions.
Restoring Azure ML Real-Time Endpoint Service After Deployment Failure
Can I roll back an Azure ML endpoint without deleting it?
Yes. You can update the traffic allocation weights to direct 100% of traffic to the previous stable deployment, effectively rolling back without deleting the endpoint.
What happens to the failed deployment if I roll back?
The failed deployment remains in the endpoint but receives no traffic. You can investigate it later or delete it once resolved.
Azure ML Experiment Tracking Verification: MLflow Integration
Does calculating a metric in Python code automatically log it to Azure ML?
No. Calculating a value like accuracy only stores it in a local variable. You must explicitly call mlflow.log_metric() to send that data to the experiment tracking service.
What is the difference between setting an experiment and logging a model?
mlflow.set_experiment defines the container (the experiment name) where data will go. mlflow.sklearn.log_model saves the actual model binary/artifact into the current run's history.
Versioning MLflow Models in Azure ML Workspace
Does MLflow automatically register models in Azure ML?
No. While MLflow tracks runs and artifacts, you must explicitly register the model in the Azure ML workspace to create a versioned entry in the registry.
What is the difference between tagging an experiment and registering a model?
Tagging an experiment adds metadata to the run for easier searching and filtering. Registering a model creates a persistent, versioned object in the workspace that can be deployed and reused.
Configure ML Model Monitoring and Automated Retraining in Azure ML
Can I skip defining thresholds and use default values?
No. The question requires specific configuration to ensure 'significant drops' are caught. Default values may not align with your business requirements for accuracy.
Why does monitoring come before threshold definition?
You need to identify which metrics are available and relevant from production traffic before you can set meaningful thresholds for them.
Azure ML Model Version Lifecycle: Archiving vs. Unregistering
What is the difference between archiving and unregistering a model in Azure ML?
Archiving keeps the model registered in the workspace but marks it as non-deployable, retaining all artifacts for audit. Unregistering completely removes the model from the workspace registry.
Can I re-deploy an archived model version in Azure ML?
No, once a model version is archived, it cannot be deployed. To deploy it again, you would need to restore it, if supported, or register a new version from the same artifacts.
Azure ML Traffic Splitting for Model Validation
What is traffic splitting in Azure Machine Learning?
Traffic splitting allows you to deploy multiple model versions to the same endpoint and assign weight percentages to each. This enables canary testing by directing a small percentage of live traffic to the new version.
Why not use a staging endpoint for validation?
A staging endpoint provides isolation but does not test the model against the actual production load or user behavior in a mixed environment. Traffic splitting allows for controlled validation within the production infrastructure.
Evaluating Fine-Tuned LLM Performance in Microsoft Foundry
How do I define regression in this context?
Regression is defined as a decrease in performance on any evaluated metric compared to the baseline. Even if the primary goal metric improves, a drop in another metric constitutes regression.
What if the metrics are mixed?
If some metrics improve and others degrade, the model has not universally improved. You must answer 'No' for statements claiming universal improvement or lack of regression if any metric got worse.
Azure ML Deployment Strategies for Rollback
What is the difference between online and batch endpoints?
Online endpoints are for real-time, low-latency inference, typically used for APIs and chat applications. Batch endpoints are for asynchronous, high-volume processing where results are returned later.
How does traffic splitting help with rollback?
Traffic splitting allows you to direct a portion of requests to a new model version while keeping the old one active. If the new version fails, you can shift 100% of traffic back to the old version instantly.
← Back to AI-300 Designing and Implementing Azure AI Solutions Study Guide