You have a Microsoft Foundry project that contains three agents as shown in the following table.You need to orchestrate the agents to ensure that the customer requests meet the following requirements:-Support a deterministic, step-based process that uses conditional branching and shared state across the agents.-Optionally trigger a ticket action based on the triage result.The solution must minimize development effort.What should you include in the solution?
Answer(s): A
To fulfill your requirements while keeping development effort to an absolute minimum, you should leverage the native Microsoft Foundry Multi-Agent Workflows feature (built directly into the Foundry Agent Service and managed via the Foundry portal visual editor or declarative YAML files).Using this visual, low-code orchestration layer removes the need to write custom graph routing logic, state managers, or manual handoffs in code.The minimum required architecture and features that must be included in your solution are structured below.1. The Orchestration Layer: Declarative Workflow Instead of writing a code-first orchestrator, you must define a Foundry Workflow Definition (YAML or Visual).2. State Management: Shared Context Variables3. Agent Configuration & Native Tooling
https://devblogs.microsoft.com/foundry/introducing-multi-agent-workflows-in-foundry-agent-service/
You have a Microsoft Foundry project that contains an agent. The agent uses Azure Speech in Foundry Tools.You fine-tune a baseline speech to text model for the en-us locale and publish the model.The agent calls the Speech to text REST API and returns an error message indicating that the project ID is invalid.You need to set the project property to the correct ID.To what should you set the project property?
To remedy the "invalid project ID" error when calling the Azure Speech to Text REST API within your Microsoft AI Foundry project, you must update the project property in your API request body from a plain string name/ID to the fully qualified Azure Resource URI of the project.The Speech to Text REST API (v3.0 and later) strictly expects resource links formatted as URIs rather than individual ID strings.*-> Step 1: Construct the Correct Project URI You need to pass the project as an absolute object reference. Construct your project property value using the following format:texthttps://<your-region>://<your-project-guid> Use code with caution.Replace <your-region> with your actual Azure Speech resource region (e.g., eastus, westeurope).Replace <your-project-guid> with the actual system-generated Unique Identifier of your project.Step 2: Retrieve your Project GUIDStep 3: Update your Agent / REST API Request Body
https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/tools/azure-ai-speech
HOTSPOT (Drag and Drop is not supported)You have a Microsoft Foundry project that contains an agent named PaymentAgent.PaymentAgent includes a function tool that issues customer refunds by using an external API.You are creating a workflow in YAML.You need to ensure that the workflow pauses for human approval and continues with the refund step only after approval is granted.How should you complete the workflow definition? To answer, select the appropriate options in the answer area.NOTE: Each correct selection is worth one point.Hot Area:
Box 1: ask_question To create a human-in-the-loop approval step in a Microsoft Foundry workflow, you should fill in the missing type with ask_question.In Microsoft Foundry, the ask_question step is specifically designed to pause a workflow, prompt a user for input (such as an approval or rejection), and store the response in a variable that can be evaluated by subsequent logic.Box 2: approval == "approved" Execute Condition: Use a condition such as steps.approval.output == 'approved' (or a similar logical check based on your choice variable) to ensure the refund only executes when authorized.
https://learn.microsoft.com/en-us/azure/foundry/agents/concepts/workflow
You have an Azure Speech in Foundry Tools resource that hosts a custom speech to text model deployed to a custom endpoint. An agent uses the endpoint to perform real-time speech recognition.You are approaching the expiration date of the custom speech to text model.What is the expected behavior when the model expires?
Answer(s): C
When the custom speech-to-text model expires, the real-time endpoint will automatically fall back to using the most recent base model for that locale.Because of this automated fallback design, your agent's real-time speech recognition streams will not fail or throw a connection error. However, you will likely experience a drop in transcription accuracy, as the fallback base model lacks the domain-specific vocabulary, acronyms, or unique audio adaptations built into your custom model.Immediate Impact Summary Real-Time Endpoints: Continue to process requests. The endpoint swaps the expired custom model for the newest standard base model behind the scenes.Batch Transcriptions (If used): Any batch transcription jobs explicitly targeting the expired custom model ID will fail with a 4xx error code.Customization Loss: Specific jargon, formatting rules, or accents trained into your model will temporarily stop applying to incoming agent audio.
https://learn.microsoft.com/en-us/azure/ai-services/speech-service/how-to-custom-speech-model-and-endpoint-lifecycle
You have a Microsoft Foundry project that contains a model deployment.You have an application that calls the deployment by using the Azure OpenAI v1 API and DefaultAzureCredential.The developers at your company receive HTTP 403 errors when they send inference requests, even after running az login.You need to ensure that the developers can perform model inference. The solution must follow the principle of least privilege.Which role-based access control (RBAC) role should you assign to the developers?
Answer(s): B
To resolve the HTTP 403 Forbidden errors when making inference calls via the Azure OpenAI v1 API and DefaultAzureCredential, users must be assigned the Cognitive Services OpenAI User built-in Azure RBAC role.Why This Happens Running az login successfully authenticates the user with Microsoft Entra ID, but it does not grant data-plane access permissions. By default, standard control-plane roles (like Reader or Foundry User) only allow users to view project metadata or manage settings, not send prompts to the model deployment endpoint itself.Recommended Role Definition Role Name: Cognitive Services OpenAI UserPermissions Granted: This role provides the absolute minimum privileges required to execute chat completions, embeddings, and general inference tasks (Microsoft.CognitiveServices/accounts/OpenAI/ deployments/search/action and Microsoft.CognitiveServices/accounts/OpenAI/deployments/ causalLanguageModeling/action). It does not allow users to deploy new models, view access keys, or alter configurationsScope Placement: Assign this role to the users (or a Microsoft Entra ID Group) at the Azure OpenAI resource level or the Resource Group level containing your Microsoft Foundry infrastructure.
https://learn.microsoft.com/en-us/azure/foundry-classic/openai/how-to/managed-identity
You have a Microsoft Foundry project that contains an agent. The agent has a Model Context Protocol (MCP) tool that queries a knowledge base stored in Azure AI Search.Some agent runs return answers from the base model without invoking the knowledge base, which results in responses without grounded citations.You are provided with the following code snippet that runs the agent.You need to add the correct tool _choice parameter to the code to deterministically force the agent to invoke the MCP tool on each run.What should you add?
To deterministically force the agent to invoke your Model Context Protocol (MCP) tool on every run, you must pass tool_choice="required" into the run_create_and_process method.The 'required' tool choice: Setting this parameter to 'required' forces the underlying Azure OpenAI model to invoke one of your available tools on every response, ensuring the agent doesn't guess answers from the base model.
https://learn.microsoft.com/en-us/azure/foundry/agents/concepts/tool-best-practice
DRAG DROP (Drag and Drop is not supported)You have a Microsoft Foundry project that contains a customer support agent grounded in internal documentation.After a recent update, users report the following issues:-Some answers are unsupported by retrieved documents.-A small number of responses are flagged for policy violations.You need to evaluate each issue.Which observability signals should you use for each issue? To answer, drag the appropriate observability signals to the correct issues. Each observability signal may be used once, more than once, or not at all. You may need to drag the spit bar between panes or scroll to view content.NOTE: Each correct selection is worth one point.Select and Place:
Box 1: The Groundedness evaluation metric Some answers are unsupported by retrieved documents.To verify which claims in the agent's answers are unsupported by your retrieved internal documents, you need to use the Groundedness (or Faithfulness) observability signal. It is specifically designed to detect AI hallucinations by verifying if the generated response is factually consistent with the provided context.This metric evaluates the fraction of claims in the agent’s answer that can be directly verified by the retrieved source context.Tracking this metric as a aggregated Metric signal over time will tell you how widespread the issue is across all user sessions following the recent update.Box 2: Risk and safety metrics A small number of responses are flagged for policy violations.Risk and safety metrics is the best choice.Because the recent update specifically triggers content policy violations, these evaluators use specialized LLM-judge metrics (e.g., content filters, self-harm, hate, violence, and jailbreak detection) to diagnose exactly which phrases or data interactions are causing the platform to block the agent’s responses.Direct Alignment: Policy violations directly fall under the domain of AI safety, content filtering, and compliance alignment.Targeted Monitoring: In Microsoft Foundry, Risk and safety metrics track content filtering logs, jailbreak attempts, or policy non-compliance issues. This allows you to pinpoint exactly which responses were blocked and why (e.g., specific filters like hate speech or violence).
https://learn.microsoft.com/en-au/answers/questions/5648122/azure-ai-foundry-agent-ignores-knowledge-sources-ahttps://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/generally-available-evaluations-monitoring-and-tracing-in-microsoft-foundry/4502760
You have a Microsoft Foundry project named Project1 that contains an agent. The agent uses an OpenAPI 3.0 specification to call an external weather service.The weather service requires a key to be passed in an HTTP header. The key value is stored as a connection in Project1.You need to ensure that the key value from the connection is included automatically whenever the OpenAPI tool is invoked.What should you configure in the OpenAPI specification?
To ensure Microsoft Foundry automatically injects the API key from your project connection whenever the OpenAPI tool is invoked, your OpenAPI 3.0 specification must explicitly include a securitySchemes component mapping to the exact header name, and a global or operation-level security requirement referencing that scheme.The orchestrator matches the name field in the specification against the key stored inside your project's custom connection.1. Required OpenAPI 3.0 Configuration You must add both the components.securitySchemes block and the security block to your specification file:openapi: 3.0.0 info: title: External Weather Service version: 1.0.0 paths: /weather: get: operationId: getWeather responses: '200': description: Successful weather retrieval# 1. Define the security scheme in the components section components: *-> securitySchemes: weatherApiKey: # Arbitrary logical identifier for this scheme *-> type: apiKey in: header name: X-Weather-API-Key # MUST match the "key" name configured in your Foundry Connection# 2. Apply the security requirement globally (or inside individual operations) security: - weatherApiKey: [] # Instructs Foundry to enforce this scheme on the API requestsin: header: Explicitly instructs the Foundry proxy layer to attach the credential value to the HTTP request headers (rather than as a query parameter).name: This string value is the exact HTTP header key (e.g., X-Weather-API-Key or Authorization). Crucially, this value must identically match the "Key" property given to the secret in your Microsoft Foundry Custom Connection.security: Actively triggers the authentication workflow for the tool's endpoints. Without this block, Microsoft Foundry treats the API call as anonymous and strips out connection values.
https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/tools/openapi
Share your comments for Microsoft AI-103 exam with other users:
Question 23:Question 23 describes a multimodal model where users can upload unsafe images that could contain hidden instructions. The goal is to implement controls to mitigate this risk. Key points to understand