{"id":3959,"date":"2026-10-11T18:46:28","date_gmt":"2026-10-11T18:46:28","guid":{"rendered":"https:\/\/www.exam-topics.com\/blog\/?p=3959"},"modified":"2026-10-21T18:20:14","modified_gmt":"2026-10-21T18:20:14","slug":"ai-103-multi-agent-orchestration-handoffs-recovery","status":"publish","type":"post","link":"https:\/\/www.exam-topics.com\/blog\/ai-103-multi-agent-orchestration-handoffs-recovery\/","title":{"rendered":"Microsoft AI-103: Multi-Agent Orchestration in Foundry: Handoffs and Recovery"},"content":{"rendered":"<h2>Start by proving that one agent is not enough<\/h2>\n<p>Multi-agent systems can improve separation of concerns when a request requires several specialized activities. They can also multiply model calls, introduce contradictory decisions, and make failures harder to reconstruct. AI-103 includes orchestrated multi-agent solutions, but the exam does not require a developer to prefer them over an ordinary application pipeline. Begin with a single-agent baseline and name the defect that delegation is intended to solve: slow sequential research, inconsistent source checking, overloaded tool permissions, or an unmanageable context window.<\/p>\n<p>Use an internal procurement scenario. An employee asks whether a requested device complies with security policy, whether the supplier is approved, and whether the purchase fits the departmental budget. These are different evidence systems with different access constraints. A coordinator might ask a policy researcher for the security requirement, an inventory specialist for device facts, and a financial validator for current limits. A final component then composes a supported response, but only a trusted ordering service may create a purchase request.<\/p>\n<p>This makes a stronger applied test than a generic conversation among assistants. The organization can measure whether parallel research reduces latency, whether restricted budget data is exposed, whether conflicting results are disclosed, and whether the final proposal remains idempotent. The <a href=\"https:\/\/www.exam-topics.com\/blog\/ai-103-foundry-agent-tools-approval-boundaries\/\">bounded agent<\/a> architecture establishes tool permissions before delegation. Without those contracts, adding more agents just spreads the same security failure across multiple components.<\/p>\n<h2>Define specialist roles and typed contracts<\/h2>\n<p>Give each specialist a narrowly scoped input and output contract. A policy researcher accepts a request ID, policy topic, and permitted document scope; it returns source IDs, applicable rule text, effective date, confidence limits, and retrieval errors. An inventory component accepts a product identifier and returns a validated catalog record. A finance component receives the minimum needed budget context and returns a recommendation, not a transfer or payment instruction.<\/p>\n<p>Schemas must distinguish a definitive value from an assumption. A budget tool returning &#8220;unknown&#8221; because a backend timed out should not be translated into &#8220;no funding exists.&#8221; Use explicit statuses such as completed, missing evidence, rejected by authorization, temporarily unavailable, and human review required. A coordinator should never fabricate missing fields to satisfy a schema when a specialist failed. Treat all specialist responses as less trusted than the system&#8217;s authorization rules.<\/p>\n<p>Version each contract independently of the prompt. When a downstream service changes an enum or removes a field, a model can produce plausible text that silently fails integration. Use schema validation and contract tests to catch compatibility breaks. An agent handoff should carry a correlation ID and stable task ID so the parent process can reconcile late or duplicated responses rather than relying on a conversation transcript.<\/p>\n<h2>Choose fan-out, sequence, or routing based on dependencies<\/h2>\n<p>Parallel execution works when branches are independent. The security researcher and catalog researcher can proceed together if both receive only authorized information. The final procurement eligibility decision cannot run correctly until the relevant policy and product details are available. Draw a dependency graph rather than placing agents in a single chain because a diagram looks orderly.<\/p>\n<p>Some tasks should be sequential. A user may first need to authenticate and select a project before a specialist can access scoped data. A planning component can propose branches, but its output must pass an allowlist of permitted tasks and destinations. If the planner requests a financial dataset for a caller who lacks permission, the orchestrator should reject the branch before launch. The model does not get to redefine the graph&#8217;s security assumptions.<\/p>\n<p>Routing is appropriate when the user&#8217;s request belongs to one specialist. A general question about device specifications should not invoke a costly finance analysis. Use simple deterministic rules for known cases where possible; reserve model-based routing for ambiguous requests and evaluate misroutes as a distinct quality issue. Compare latency, token consumption, correct specialist selection, and recovery on the same test corpus.<\/p>\n<p>Microsoft <a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/foundry\/agents\/overview\" rel=\"nofollow\">Foundry Agent Service<\/a> offers prompt and hosted agent approaches. Hosted agents can run custom orchestration frameworks and code; prompt agents provide a more managed path. Choose the runtime according to actual control needs and version-specific platform capabilities. The architecture principle stays stable even while framework APIs and managed agent features change.<\/p>\n<h2>Persist state outside the conversation<\/h2>\n<p>An orchestrator needs to know which branches were requested, started, completed, timed out, or cancelled. Persist a task ledger with a parent request ID, branch IDs, input hashes, assignment, retries, deadlines, status, and output references. Conversation history can help models understand context, but it is not a durable transaction log. A summary after context compaction cannot prove that a supplier approval occurred.<\/p>\n<p>Idempotency matters whenever a branch can trigger side effects. Give each proposed action a stable key derived from the authorized business request, not a fresh random key on every retry. The business system should detect that a previously approved purchase request already exists. If a model receives a timeout after submission and asks again, the second attempt should return the original result rather than creating a duplicate.<\/p>\n<p>Plan cancellation and partial completion. A user might revoke approval while a supplier lookup is still running, or a search branch may finish after the final response deadline. Record the cancellation state and prevent late results from initiating new actions. If the system must answer with incomplete evidence, make the uncertainty and omitted branch visible rather than presenting a polished but unsupported conclusion.<\/p>\n<h2>Handle disagreement without forcing consensus<\/h2>\n<p>Specialist outputs can conflict for good reasons. A current equipment policy may allow a device type, while a temporary security advisory suspends purchases. An inventory record might use a model number that refers to different generations. A responsible synthesis step identifies authority, effective dates, and provenance before choosing a result. It should not average two claims into a non-existent compromise.<\/p>\n<p>Build a conflict case in your evaluation data. Give the research agent an older policy and the validator a current advisory. The final response should prefer the correct authoritative source or escalate when the policies have equal standing. It should say which facts are known and which remain unresolved. An answer that confidently declares compliance while hiding the disagreement fails even if the grammar is excellent.<\/p>\n<p>Avoid agent agreement as a substitute for evidence. Two models using the same bad source can reinforce the same error. Independent review should vary evidence paths, tool permissions, or validation rules where the problem justifies it. Keep citations to documents and business records; do not cite another agent&#8217;s unsupported summary as if it were an external source of truth.<\/p>\n<h2>Secure tool access across branches<\/h2>\n<p>Each specialist should receive only the tools and data required for its role. The budget reviewer should not have write access to the order system. The policy researcher should not receive customer payment details. Centralize authorization in the trusted tool layer and propagate the end-user context only when the receiving service can enforce it. A common service credential with unrestricted retrieval is not a substitute for end-user permissions.<\/p>\n<p>Treat retrieved snippets, API responses, uploaded documents, and agent handoff messages as untrusted inputs. A malicious supplier PDF could instruct the coordinator to bypass approvals. That text may be evidence for a document analysis task, but it must not become a higher-priority command. Model-facing guardrails reduce risk, while server-side allowlists, authorization, and typed contracts prevent an instruction from causing an unauthorized tool action.<\/p>\n<p>Audit tool calls with request and agent identity, parameters safe to retain, authorization decision, source versions, duration, and outcome. A multi-agent trace should show which branch requested a call and why. Use the operational <a href=\"https:\/\/www.exam-topics.com\/blog\/ai-103-agent-evaluation-tracing-operational-safety\/\">tracing approach<\/a> to distinguish latency caused by repeated handoffs from latency caused by the model or a slow search service.<\/p>\n<h2>Evaluate both branches and the final business decision<\/h2>\n<p>A complete evaluation suite contains routing, branch work, synthesis, and side-effect tests. Measure whether the system sent a request to the correct specialist, whether each specialist returned sufficient evidence, whether the final answer used that evidence accurately, and whether unauthorized work was blocked. Include no-evidence and contradictory-evidence cases. Counting successful agent messages is not meaningful if the overall business decision is wrong.<\/p>\n<p>Run failure injection at branch boundaries. Delay one specialist, return malformed JSON from another, revoke access during retrieval, duplicate a response, and fail the final submission after the backend committed a request. Define a deterministic expected outcome for each test. A correct implementation should preserve partial evidence, explain failures that affect the answer, and avoid duplicating any consequential action.<\/p>\n<p>Cost evaluation should report model calls and tokens per completed customer task, not merely per specialist. Fan-out can reduce wall-clock time while increasing total inference usage. If a three-agent workflow performs no better than the single-agent baseline on real queries, it should not be approved just because it demonstrates orchestration. A system can be technically interesting and economically unjustified.<\/p>\n<h2>Complete a procurement orchestration lab<\/h2>\n<p>Implement a read-only version first. Give the coordinator a signed-in user, a proposed laptop, and a department. Run an approved security-policy search, catalog lookup, and budget eligibility check with separate access scopes. Store branch outcomes in a ledger and produce an answer with source revisions and any unresolved conditions. Check that a restricted user cannot see confidential budget amounts in either raw branch results or the final answer.<\/p>\n<p>Next, introduce a purchase-request proposal. Require the backend to validate all fields, confirm approval, and apply a stable idempotency key. Inject network interruption after commit and verify that a retry returns the same request. Make one document contain instructions to override financial rules and verify that neither the coordinator nor the business system follows those instructions. The result should be auditable without exposing unnecessary sensitive information.<\/p>\n<p>Run the same workload through a single-agent baseline before keeping the multi-agent design. Compare the accuracy of source selection, privilege isolation, final decision quality, latency and total cost, including the effort needed to reconcile conflicting branch results. If the specialist design offers no demonstrable advantage, remove the delegation rather than preserving it for architectural appearance. If it does help, document the evidence contract and the recovery path for a failed specialist so that a reader can reproduce the operational choice.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Build defensible AI-103 multi-agent workflows with scoped specialists, typed handoffs, durable state, partial failure recovery, and measured orchestration value.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[340,2],"tags":[],"et_vendor":[],"et_program":[],"et_certification":[],"et_exam":[],"et_topic":[],"class_list":["post-3959","post","type-post","status-publish","format-standard","hentry","category-microsoft-ai-103","category-post"],"_links":{"self":[{"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/posts\/3959","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/comments?post=3959"}],"version-history":[{"count":5,"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/posts\/3959\/revisions"}],"predecessor-version":[{"id":5798,"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/posts\/3959\/revisions\/5798"}],"wp:attachment":[{"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/media?parent=3959"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/categories?post=3959"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/tags?post=3959"},{"taxonomy":"et_vendor","embeddable":true,"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/et_vendor?post=3959"},{"taxonomy":"et_program","embeddable":true,"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/et_program?post=3959"},{"taxonomy":"et_certification","embeddable":true,"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/et_certification?post=3959"},{"taxonomy":"et_exam","embeddable":true,"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/et_exam?post=3959"},{"taxonomy":"et_topic","embeddable":true,"href":"https:\/\/www.exam-topics.com\/blog\/wp-json\/wp\/v2\/et_topic?post=3959"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}