<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>Microsoft Foundry Blog articles</title>
    <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/bg-p/azure-ai-foundry-blog</link>
    <description>Microsoft Foundry Blog articles</description>
    <pubDate>Wed, 05 Aug 2026 17:03:35 GMT</pubDate>
    <dc:creator>azure-ai-foundry-blog</dc:creator>
    <dc:date>2026-08-05T17:03:35Z</dc:date>
    <item>
      <title>Securing On-Device AI: Evaluating Foundry Local Models with AI Red Teaming Agent</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/securing-on-device-ai-evaluating-foundry-local-models-with-ai/ba-p/4541303</link>
      <description>&lt;H3&gt;On-Device AI Inference Changes the Architecture, Not the Risk&lt;/H3&gt;
&lt;P&gt;As organizations transform into Frontier Firms and integrate AI into more applications, cloud-hosted inference is not always the optimal architectural choice. Some applications operate with limited connectivity, require low-latency responses, or involve data that organizations prefer to process locally. As AI usage scales, token economics also becomes an architectural consideration as organizations look for greater predictability and control over cloud inference cost. By running AI inference directly on the device, applications can eliminate cloud round trip, support offline operations, avoid cloud token costs, and provide greater control over data during processing.&lt;/P&gt;
&lt;P&gt;However, moving AI inference onto the device changes the application architecture, not the model’s exposure to behavioral risks. On-device language models can still encounter adversarial inputs intended to bypass safeguards, manipulate instructions, or elicit unsafe and unexpected responses. This makes systematic security and safety evaluation, including AI red teaming, an important part of adopting on-device AI.&lt;/P&gt;
&lt;P&gt;AI red teaming evaluates an AI system from an adversarial perspective to uncover safety and security weaknesses before they are encountered in production. While functional testing asks whether a model works as intended under expected conditions, red teaming examines how it behaves when adversarial user intentionally attempts to make it fail or misbehave.&lt;/P&gt;
&lt;P&gt;This article shows how organizations can use Microsoft technology to run AI on end-user devices while systematically evaluate model behavior against safety and security risks. To make this practical, I provide a sample solution that development teams can use to automate repeatable evaluations across models.&lt;/P&gt;
&lt;H3&gt;Running and Evaluating On-Device AI Security Risks&lt;/H3&gt;
&lt;P&gt;Microsoft addresses these on-device AI challenges with complementary solutions: Foundry Local runs end-to-end AI inference on the device, while AI Red Teaming Agent helps developers evaluate model behavior before release.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Foundry Local&lt;/STRONG&gt; (&lt;A href="https://devblogs.microsoft.com/foundry/foundry-local-ga/" target="_blank" rel="noopener"&gt;generally available since April 2026&lt;/A&gt;), is a cross-platform runtime for integrating &amp;nbsp;local language models directly into applications. It runs on Windows, macOS, and Linux, with SDKs for Python, JavaScript, C#, and Rust. The runtime manages the model lifecycle within the application: downloading, caching, loading, inference, and unloading.&lt;/P&gt;
&lt;P&gt;Foundry Local is designed for single-user inference embedded within an application, rather than multi-user model serving through server-based inference stack. It provides a curated catalog of hardware-optimized models, while allowing developers to extend beyond the catalog using Bring Your Own Model (BYOM) in the ONNX format. To learn more, refer to the &lt;A href="https://www.foundrylocal.ai/" target="_blank" rel="noopener"&gt;Foundry Local site&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;AI Red Teaming Agent&lt;/STRONG&gt; complements the solution by enabling developers to evaluate the safety and security risks in on-device language models before release. It combines Microsoft’s open-source Python Risk Identification Tool (&lt;A href="https://github.com/microsoft/PyRIT" target="_blank" rel="noopener"&gt;PyRIT&lt;/A&gt;), with Foundry Risk and Safety Evaluations to generate adversarial probes, assess attack-response pairs, calculate metrics such as Attack Success Rate, and produce detailed reports.&lt;/P&gt;
&lt;P&gt;The AI Red Teaming Agent supports adversarial testing of cloud models hosted in Microsoft Foundry, while its &lt;A href="https://learn.microsoft.com/en-us/azure/foundry/how-to/develop/run-scans-ai-red-teaming-agent" target="_blank" rel="noopener"&gt;local scan&lt;/A&gt; workflow (in Public Preview) extends this capability to on-device models. Using the &lt;EM&gt;azure-ai-evaluation[redteam]&lt;/EM&gt; package, developers can provide a model configuration or application callback as the scan target. The sample solution that follows uses this callback pattern to evaluate a model running through Foundry Local.&lt;/P&gt;
&lt;H3&gt;Try It Yourself: Red-Teaming a Foundry Local model&lt;/H3&gt;
&lt;P&gt;To make this article practical, I provided a sample solution in the &lt;A href="https://github.com/mardianto-msft/foundry-local-eval" target="_blank" rel="noopener"&gt;foundry-local-eval GitHub repository&lt;/A&gt;. The sample solution lets you select and download a model from the Foundry Local curated catalog, runs it entirely on your machine, and evaluate its responses to adversarial prompts using the Azure AI Evaluation red teaming SDK. The Azure Developer CLI (azd) provisions the required Azure resources, helping you move from a fresh clone to a scored risk report seamlessly.&lt;/P&gt;
&lt;img /&gt;
&lt;P&gt;The sample uses a hybrid architecture, in which the target model runs locally through Foundry Local, while the Azure AI Evaluation red teaming SDK uses Microsoft Foundry project to generate adversarial prompts and asses the model’s responses. Model inference remains on the device, while attack generation and risk scoring use Azure services.&lt;/P&gt;
&lt;P&gt;The scan probes the model across four risk categories: &lt;EM&gt;violence, hate and unfairness, sexual content&lt;/EM&gt;, and &lt;EM&gt;self-harm.&lt;/EM&gt; It applies a range of attack strategies and reports key measurements: Attack Success Rate (ASR) that you can track across models and tune your safeguards against. For more details, such as prerequisites, configuration, and step-by-step run instructions, refer to the repository.&lt;/P&gt;
&lt;H3&gt;Final Thoughts: Building On-Device AI with Trust from the Start&lt;/H3&gt;
&lt;P&gt;As organizations progress toward becoming Frontier Firms, bringing AI into more applications must be accompanied by deliberate governance and evaluation. On-device AI is no exception. In this article, I explored how Microsoft technologies can help organizations deploy AI models to end-user devices and conduct systematic, automated safety and security evaluations through AI red teaming. The sample solution provides a practical reference implementation that development teams can use as a starting point. &amp;nbsp;&lt;/P&gt;
&lt;P&gt;By incorporating repeatable red teaming into the development lifecycle, teams can compare results across candidate models, strengthen safeguards before deployment, and treat trust as a design requirement. As applications with on-device AI continue to evolve, this evaluation discipline can help organizations innovate with greater confidence while keeping safety and security central to their Frontier Firm transformation journey.&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jul 2026 14:00:00 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/securing-on-device-ai-evaluating-foundry-local-models-with-ai/ba-p/4541303</guid>
      <dc:creator>mhadiputro</dc:creator>
      <dc:date>2026-07-30T14:00:00Z</dc:date>
    </item>
    <item>
      <title>Introducing GPT-transcribe and GPT-live-transcribe in Microsoft Foundry</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/introducing-gpt-transcribe-and-gpt-live-transcribe-in-microsoft/ba-p/4541740</link>
      <description>&lt;P&gt;A transcription model hears “account number 8-4-7-2” but returns “account number eighty-four seventy-two.” A single error can break a downstream automation workflow. Developers building voice applications need transcription models that can handle real-world audio conditions, natural speech patterns, and business-critical details, including codes, dates, addresses, account numbers, mixed-language conversations, specialized terminology, and quiet or low-volume speech.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;GPT-transcribe&amp;nbsp;&lt;/STRONG&gt;and &lt;STRONG&gt;GPT-live-transcribe do just that and are available in &lt;/STRONG&gt;&lt;STRONG&gt;Microsoft Foundry today&lt;/STRONG&gt;. Two updates to the audio model family designed to improve automatic speech recognition across asynchronous transcription and live streaming scenarios.&lt;/P&gt;
&lt;H1&gt;Built for More Accurate Transcription in Real-World Audio&lt;/H1&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&lt;A class="lia-external-url" href="https://ai.azure.com/catalog/models/gpt-transcribe" target="_blank"&gt;GPT-transcribe&lt;/A&gt;&lt;/STRONG&gt; is the highest accuracy ASR model from Open AI, designed for asynchronous speech-to-text transcription of completed audio files and batch workloads. It accepts audio input and returns text output, making it a strong fit for workflows that process recorded, uploaded, or submitted audio, including meeting recordings, voicemails, and media files.&lt;/P&gt;
&lt;P&gt;&lt;A class="lia-external-url" href="https://ai.azure.com/catalog/models/gpt-live-transcribe" target="_blank"&gt;&lt;STRONG&gt;GPT-live-transcribe&lt;/STRONG&gt;&lt;/A&gt; is designed for low-latency streaming transcription through the Realtime API. It supports real-time audio input and text output, helping developers build live experiences where speech needs to be transcribed continuously as audio arrives. This model also introduces “tunable latency” where developers can adjust the latency/accuracy trade-off for streaming. It is a strong fit for live captions, voice assistants, contact center workflows, accessibility experiences, field service applications, real-time intake, and monitoring systems.&lt;/P&gt;
&lt;P&gt;Together, these models give developers transcription options in Microsoft Foundry for stored audio and live voice interactions. Their text output can support downstream workflows such as search, summarization, routing, analytics, automation, and quality review.&lt;/P&gt;
&lt;H2&gt;What’s New in Both Models&lt;/H2&gt;
&lt;P&gt;The features of the new transcription models focus on improving transcription quality in real-world audio environments where speech can be brief, noisy, accented, quiet, domain-specific, or mixed across languages. Key capabilities include:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Background noise:&lt;/STRONG&gt; Helps isolate speech in noisy environments so transcription quality can remain more reliable when audio conditions are not controlled.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Short utterances:&lt;/STRONG&gt; Improves recognition of brief commands, confirmations, interruptions, and clipped speech that can be difficult to capture accurately.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Alphanumeric perception:&lt;/STRONG&gt; Strengthens transcription of IDs, codes, phone numbers, dates, addresses, account numbers, and mixed letter-number sequences.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Domain terminology understanding:&lt;/STRONG&gt; Improves recognition of specialized vocabulary used in product, workflow, industry, and business-process contexts.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Codemix:&lt;/STRONG&gt; Improves understanding when speakers switch between languages within a conversation or utterance.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Context awareness:&lt;/STRONG&gt; Uses topic hints and past conversation context to improve transcription accuracy and help maintain consistency.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Accent robustness:&lt;/STRONG&gt; Improves handling of regional accents, non-native accents, dialects, and varied speaking styles.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Whispering:&lt;/STRONG&gt; Improves recognition of quiet or low-volume speech, including whispered commands and private dictation.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Live captioning and accessibility experiences:&lt;/STRONG&gt; Generate real-time captions for meetings, events, media experiences, and assistive applications.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Contact center and voice workflows:&lt;/STRONG&gt; Capture spoken details as conversations happen, supporting routing, quality review, summarization, and downstream automation.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Monitoring, analytics, and compliance workflows:&lt;/STRONG&gt; Provide text visibility into ongoing spoken input so teams can analyze, review, and act on conversation data.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H2&gt;Also Available: GPT-realtime-2.1 and GPT-realtime-mini-2.1&lt;/H2&gt;
&lt;P&gt;&lt;STRONG&gt;gpt-realtime-2.1&lt;/STRONG&gt; and &lt;STRONG&gt;gpt-realtime-mini-2.1&lt;/STRONG&gt; are also available in Microsoft Foundry for developers building speech-to-speech applications. Unlike GPT-transcribe and GPT-live-transcribe, which return text, these models accept audio and generate audio for low-latency conversational experiences over the Realtime API. gpt-realtime-2.1 focuses on interaction quality and robustness, while gpt-realtime-mini-2.1 provides a smaller, faster, and more cost-efficient option for high-volume deployments.&lt;/P&gt;
&lt;P&gt;Together with GPT-transcribe and GPT-live-transcribe, these realtime audio updates give developers more flexibility to build voice applications that need both accurate transcription and responsive spoken interaction, whether the experience is centered on capturing speech as text, responding with audio, or combining both patterns in a single workflow.&lt;/P&gt;
&lt;H1&gt;Use Cases by Model&lt;/H1&gt;
&lt;H2&gt;GPT-transcribe&lt;/H2&gt;
&lt;P&gt;Use GPT-transcribe when the application needs accurate text transcripts from recorded, uploaded, or submitted audio. It is a strong fit for meeting and call transcription, media transcription, customer support intake, voicemail and message processing, quality review, compliance workflows, and domain-specific transcription where short utterances, structured alphanumeric details, specialized terminology, accents, background noise, code-mixed speech, or quiet audio can affect downstream accuracy.&lt;/P&gt;
&lt;H2&gt;GPT-live-transcribe&lt;/H2&gt;
&lt;P&gt;Use GPT-live-transcribe when the application needs live streaming transcription with low latency. It is designed for real-time captions, accessibility experiences, contact center transcription, voice-enabled workflows, live monitoring, operational dashboards, and agent-assist scenarios where spoken input needs to become text continuously as the interaction unfolds.&lt;/P&gt;
&lt;H1&gt;Pricing&lt;/H1&gt;
&lt;P&gt;The following pricing example shows Global Standard rates by model and modality. Rates for GPT-realtime-2.1 and GPT-realtime-mini-2.1 are listed per 1 million tokens. GPT-transcribe and GPT-live-transcribe are listed per audio hour.&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table class="lia-border-color-21 lia-border-style-solid" border="1" style="border-width: 1px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;&lt;STRONG&gt;Model&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;&lt;STRONG&gt;Deployment&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;&lt;STRONG&gt;Modality&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;&lt;STRONG&gt;Input&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;&lt;STRONG&gt;Cached Input&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;&lt;STRONG&gt;Output&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="lia-border-color-21" rowspan="3"&gt;
&lt;P&gt;&lt;STRONG&gt;GPT-realtime-2.1&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21" rowspan="3"&gt;
&lt;P&gt;Global Standard&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Audio&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$32.00&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$0.40&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$64.00&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Text&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$4.00&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$0.40&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$24.00&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Image&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$5.00&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$0.50&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;--&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="lia-border-color-21" rowspan="3"&gt;
&lt;P&gt;&lt;STRONG&gt;GPT-realtime-mini-2.1&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21" rowspan="3"&gt;
&lt;P&gt;Global Standard&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Audio&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$10.00&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$0.30&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$20.00&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Text&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$0.60&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$0.06&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$2.40&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Image&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$0.80&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$0.08&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;--&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;&lt;STRONG&gt;GPT-live-transcribe&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Global Standard&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Audio&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;--&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;--&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$1.02/hour&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;&lt;STRONG&gt;GPT-transcribe&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Global Standard&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Audio&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;--&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;--&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;$0.27/hour&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 16.67%" /&gt;&lt;col style="width: 16.67%" /&gt;&lt;col style="width: 16.67%" /&gt;&lt;col style="width: 16.67%" /&gt;&lt;col style="width: 16.67%" /&gt;&lt;col style="width: 16.67%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;H1&gt;Getting Started&lt;/H1&gt;
&lt;P&gt;Choose GPT-transcribe when your application processes complete audio files asynchronously, or GPT-live-transcribe when it needs text continuously as speech arrives. Try the models &lt;A href="https://ai.azure.com/" target="_blank" rel="noopener"&gt;in Microsoft Foundry&lt;/A&gt;, then use the resources below to explore the Realtime API, follow the audio quickstart, compare available models, and review Azure OpenAI in Foundry Models documentation.&lt;/P&gt;
&lt;P&gt;For asynchronous transcription, submit a complete audio file to GPT-transcribe and process the returned transcript after the request completes. This pattern works well for recordings, voicemails, and uploaded media. For streaming transcription, open a Realtime API session with GPT-live-transcribe, send audio as it is captured, and handle incremental transcript events. This pattern supports live captioning and agent-assist experiences that need text during an active interaction. Refer to the linked quickstart and Realtime API documentation for current SDK setup, authentication, request schemas, and supported audio formats.&lt;/P&gt;
&lt;P&gt;Explore Microsoft Learn documentation to learn more:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/foundry/openai/how-to/realtime-audio" target="_blank" rel="noopener"&gt;Use GPT Realtime API for speech and audio with Azure OpenAI in Foundry Models&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/ai-foundry/openai/realtime-audio-quickstart" target="_blank" rel="noopener"&gt;GPT Realtime audio quickstart&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/ai-foundry/openai/concepts/models?tabs=global-standard%2Cstandard-chat-completions" target="_blank" rel="noopener"&gt;Azure OpenAI in Foundry Models overview&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;</description>
      <pubDate>Wed, 29 Jul 2026 23:07:34 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/introducing-gpt-transcribe-and-gpt-live-transcribe-in-microsoft/ba-p/4541740</guid>
      <dc:creator>Dave_Jacobs</dc:creator>
      <dc:date>2026-07-29T23:07:34Z</dc:date>
    </item>
    <item>
      <title>Executive AI Avatar Platform on Azure: Frontier Intelligence Meets Fireworks AI Open-Source</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/executive-ai-avatar-platform-on-azure-frontier-intelligence/ba-p/4541301</link>
      <description>&lt;H1&gt;The 2 a.m. Question Nobody Wants to Answer Twice&lt;/H1&gt;
&lt;P data-start="53" data-end="451"&gt;It is the night before open enrollment closes. An employee in another time zone has a question about HSA eligibility. No HR representative is available, and the FAQ PDF she received three months ago is nowhere to be found. She does not want to submit a ticket and wait two days—she needs an answer now, delivered by an experience that feels familiar, trustworthy, and connected to her organization.&lt;/P&gt;
&lt;P data-start="453" data-end="961"&gt;The Executive AI Avatar Platform was built to close this gap. It provides a branded, always-available AI avatar that can engage through voice or text and respond using the organization’s approved tone, policies, and knowledge. It is more than a chatbot added to a help page. It combines a face, a voice, and an AI-powered conversational experience that can support an employee at 2 a.m. or engage an audience of 10,000 people during a live town hall—without requiring a team to be available around the clock.&lt;/P&gt;
&lt;P data-start="963" data-end="1236" data-is-last-node="" data-is-only-node=""&gt;That is the promise. The rest of this post explains how the platform is built and why the architecture does not rely on a single frontier model for every task. In an enterprise deployment, cost, control, performance, and flexibility matter just as much as model capability.&lt;/P&gt;
&lt;H1&gt;1. What Is the Executive AI Avatar Platform?&lt;/H1&gt;
&lt;P data-start="49" data-end="376"&gt;The Executive AI Avatar Platform is a full-stack conversational AI platform that enables organizations to create branded, conversational digital humans. These photorealistic or custom-trained avatars can represent executives, HR personas, or subject-matter experts and allow employees or customers to interact naturally through text or voice.&lt;/P&gt;
&lt;P data-start="378" data-end="504"&gt;The platform uses a Next.js 15 frontend connected to a FastAPI backend, which orchestrates two primary Microsoft capabilities:&lt;/P&gt;
&lt;P data-start="506" data-end="702"&gt;&lt;STRONG data-start="506" data-end="548"&gt;Azure Speech in Foundry Tools (Avatar)&lt;/STRONG&gt; renders the avatar’s photorealistic, lip-synchronized video and speech in both batch-based scripted experiences and real-time conversational experiences.&lt;/P&gt;
&lt;P data-start="704" data-end="979"&gt;&lt;STRONG data-start="704" data-end="725"&gt;Microsoft Foundry&lt;/STRONG&gt; provides the deployment platform for the language models that generate the avatar’s responses. The architecture can use a frontier model such as GPT-4o or an open model such as MiniMax M2.5, deployed through Microsoft Foundry and served by Fireworks AI.&lt;/P&gt;
&lt;P&gt;┌─────────────────────────────────────────────────────────┐&lt;BR /&gt;│&amp;nbsp; Next.js 15 Frontend&amp;nbsp;&amp;nbsp; — Library · Studio · Interact&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; │&lt;BR /&gt;└───────────────────┬───────────────────────────────────────┘&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; │&amp;nbsp; REST / WebSocket&lt;BR /&gt;┌───────────────────▼───────────────────────────────────────┐&lt;BR /&gt;│&amp;nbsp; FastAPI Backend — /avatars&amp;nbsp; /synthesis&amp;nbsp; /speech&amp;nbsp; /voice-live │&lt;BR /&gt;└───────────────────┬───────────────────────────────────────┘&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; │&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ┌────────────┴─────────────┐&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; │&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; │&lt;BR /&gt;&amp;nbsp; Azure Speech in Foundry Tools&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Microsoft Foundry&lt;BR /&gt;&amp;nbsp; (TTS Avatar — batch&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(GPT-4o realtime,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;amp; real-time rendering) MiniMax M2.5 via Fireworks AI, deployed through Microsoft Foundry)&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;An MCP server using Model Context Protocol, an open standard for connecting AI applications to external tools and data sources also wraps the platform API. This allows MCP-compatible clients, including Claude Desktop, GitHub Copilot in Visual Studio Code, and custom orchestration agents, to trigger avatar video generation without requiring each client to manage Azure credentials directly.&lt;/P&gt;
&lt;H1&gt;2. Use Cases: Live Interaction vs. Scripted Avatar&lt;/H1&gt;
&lt;P data-start="55" data-end="147"&gt;The platform supports two distinct interaction modes; each designed for different scenarios.&lt;/P&gt;
&lt;P data-start="55" data-end="147"&gt;&lt;STRONG&gt;Live Interaction with Voice Live&lt;/STRONG&gt;&lt;/P&gt;
&lt;P data-start="187" data-end="486"&gt;Live Interaction enables a real-time spoken conversation. The user speaks naturally, and the avatar listens, processes the request, and responds with synchronized audio and video. Built-in turn detection allows the conversation to flow without requiring the user to press and hold a button to speak.&lt;/P&gt;
&lt;P data-start="488" data-end="711"&gt;The experience is powered by the &lt;STRONG data-start="521" data-end="572"&gt;Voice Live API in Azure Speech in Foundry Tools&lt;/STRONG&gt; and streamed through a persistent WebSocket connection, enabling low-latency, bidirectional communication between the user and the avatar.&lt;/P&gt;
&lt;P data-start="713" data-end="976" data-is-last-node="" data-is-only-node=""&gt;&lt;STRONG data-start="713" data-end="733"&gt;Best suited for:&lt;/STRONG&gt; live town halls, executive Q&amp;amp;A sessions, customer-support or help-desk kiosks, and other scenarios where responsiveness and a natural conversational experience are more important than extensive customization of the underlying reasoning model.&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="color: rgb(30, 30, 30);"&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;img /&gt;
&lt;P&gt;&lt;STRONG&gt;Scripted Avatar&lt;/STRONG&gt;&lt;/P&gt;
&lt;P data-start="952" data-end="1244"&gt;This is a text-first interaction mode. The user enters a message or the system provides a predefined script and a language model generates the response. That text is then sent to Azure Speech in Foundry Tools, where text to speech (TTS) produces the avatar’s voice and lip-synchronized video.&lt;/P&gt;
&lt;P data-start="1249" data-end="1491"&gt;The Web Real-Time Communication (WebRTC) session remains open throughout the interaction, so each new message requires only a lightweight text exchange followed by a speakTextAsync call, without establishing a new connection for every turn.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Best for:&lt;/STRONG&gt; onboarding walkthroughs, policy explainers, FAQ bots, and scenarios where you want the flexibility to swap the underlying reasoning model based on cost, latency, or data-residency needs.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Model: MiniMax M2.5 via Fireworks AI, deployed through Microsoft Foundry, generates the text response. The response is then sent to Azure Speech in Foundry Tools to produce the avatar’s voice (TTS) and lip synchronization.&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;img /&gt;
&lt;H1&gt;3. Models and Azure Services in the Stack&lt;/H1&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Capability&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Service / Model&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Used by&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Real-time speech-to-speech reasoning&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Voice Live API in Azure Speech in Foundry Tools, using GPT-4o or GPT-5 through Microsoft Foundry&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Live Interaction tab&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Text chat completion (avatar's "brain")&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;MiniMax M2.5 (FW-MiniMax-M2.5) via &lt;STRONG&gt;Fireworks AI&lt;/STRONG&gt;, deployed through Microsoft Foundry&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Scripted Avatar tab&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Lip-synced video + speech rendering&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Avatar in Azure Speech in Foundry Tools for batch and real-time synthesis&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Both modes&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Authentication&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Microsoft Entra ID&lt;/STRONG&gt; (DefaultAzureCredential) — no static API keys&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;All model calls&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;The key architectural decision is that the reasoning layer is pluggable. The backend exposes a single CHAT_MODEL_PROVIDER setting that routes each scripted-avatar chat completion to one of the supported model providers.&lt;/P&gt;
&lt;P&gt;if settings.CHAT_MODEL_PROVIDER == "minimax":&lt;/P&gt;
&lt;P&gt;# Open-model path: MiniMax M2.5 via Fireworks AI, # deployed through Microsoft Foundry&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; client = get_minimax_client()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; response = await client.chat.completions.create(&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; model=settings.MINIMAX_DEPLOYMENT, messages=messages, ...&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;BR /&gt;else:&amp;nbsp; &amp;nbsp;&lt;/P&gt;
&lt;P&gt;# Frontier-model path: GPT-4o via Microsoft Foundry&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; client = get_client()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; response = await client.chat.completions.create(&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; model=settings.AZURE_OPENAI_DEPLOYMENT, messages=messages, ...&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;Both model providers expose the same OpenAI-compatible chat.completions interface, allowing the rest of the pipeline including persona system prompts, conversation history, and avatar rendering to remain independent of the model generating the response. This interoperability makes the cost-and-performance trade-off described in the next section a simple configuration change rather than an architectural redesign.&lt;/P&gt;
&lt;H1&gt;4. The Trade-Off: Open Models via Fireworks AI vs. Frontier Models&lt;/H1&gt;
&lt;P&gt;Why route some workloads to an open model when GPT-4o is available through Microsoft Foundry? In practice, three considerations stand out.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Fast inference&lt;/STRONG&gt;&lt;/P&gt;
&lt;P data-start="247" data-end="614"&gt;Fireworks AI provides high-throughput, low-latency inference infrastructure for open models. For short, persona-specific responses—such as HR, IT, or policy-related answers—MiniMax M2.5 can provide a strong balance of latency, quality, and cost. Narrowly scoped tasks may not always require the full reasoning capabilities of a larger, general-purpose frontier model.&lt;/P&gt;
&lt;P data-start="247" data-end="614"&gt;&lt;STRONG&gt;Fine-tuning and ownership of your own model &amp;amp; Intelligence&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P data-start="676" data-end="987"&gt;This is the strategic differentiator. Frontier models are typically optimized through prompt engineering, system instructions, retrieval, and supported customization capabilities. With an open model deployed through Microsoft Foundry and served by Fireworks AI, organizations can gain additional flexibility to:&lt;/P&gt;
&lt;UL data-start="989" data-end="1458"&gt;
&lt;LI data-section-id="knbsg7" data-start="989" data-end="1100"&gt;Fine-tune the model using approved proprietary conversation data, policy content, or brand-specific examples.&lt;/LI&gt;
&lt;LI data-section-id="qecgvm" data-start="1101" data-end="1209"&gt;Adapt domain-specific behavior, such as a precise HR-policy tone or specialized customer-support workflow.&lt;/LI&gt;
&lt;LI data-section-id="l0x8ca" data-start="1210" data-end="1310"&gt;Iterate on model behavior without depending entirely on a frontier model provider’s release cycle.&lt;/LI&gt;
&lt;LI data-section-id="1iwjjfz" data-start="1311" data-end="1458"&gt;Retain greater control over the customized model and its long-term deployment strategy, subject to the model’s license and platform capabilities.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P data-start="1460" data-end="1651"&gt;The open-model path is therefore not simply a lower-cost alternative. It can help organizations build a continuously improving intelligence asset tailored to their data, workflows, and brand.&lt;/P&gt;
&lt;P data-section-id="dsy0k" data-start="1653" data-end="1688"&gt;&lt;STRONG&gt;The Other Side of the Trade-Off&lt;/STRONG&gt;&lt;/P&gt;
&lt;P data-start="1690" data-end="1790"&gt;Open models also come with trade-offs. Frontier models such as GPT-4o generally remain stronger for:&lt;/P&gt;
&lt;UL data-start="1792" data-end="2027"&gt;
&lt;LI data-section-id="9a9s92" data-start="1792" data-end="1860"&gt;Complex, multi-step reasoning and ambiguous instruction following.&lt;/LI&gt;
&lt;LI data-section-id="1n76lsu" data-start="1861" data-end="1922"&gt;Broad knowledge without additional adaptation or grounding.&lt;/LI&gt;
&lt;LI data-section-id="eeexgo" data-start="1923" data-end="2027"&gt;Advanced multimodal experiences, including the real-time audio interaction used by the Voice Live API.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P data-start="2029" data-end="2274" data-is-last-node="" data-is-only-node=""&gt;That is why the platform supports both paths. Rather than choosing one model for every workload, the architecture allows each experience to use the model that best meets its requirements for capability, latency, cost, customization, and control.&lt;/P&gt;
&lt;P data-start="2029" data-end="2274"&gt;&lt;STRONG&gt;The trade-off side&lt;/STRONG&gt;&lt;/P&gt;
&lt;P data-start="0" data-end="82"&gt;Frontier models such as GPT-4o still offer important advantages, particularly for:&lt;/P&gt;
&lt;UL data-start="84" data-end="451"&gt;
&lt;LI data-section-id="1ao2blw" data-start="84" data-end="143"&gt;Complex, multi-step reasoning and ambiguous instructions.&lt;/LI&gt;
&lt;LI data-section-id="1um1lh1" data-start="144" data-end="224"&gt;Broad knowledge without requiring additional fine-tuning or domain adaptation.&lt;/LI&gt;
&lt;LI data-section-id="2tfz5j" data-start="225" data-end="451"&gt;Advanced multimodal experiences, including the real-time audio reasoning used by the Voice Live API in Azure Speech in Foundry Tools—an area where many open models have not yet reached the same level of production readiness.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P data-start="453" data-end="684" data-is-last-node="" data-is-only-node=""&gt;That is precisely why the platform supports both paths instead of selecting a single model for every workload. This allows each use case to be matched with the right balance of capability, cost, latency, customization, and control.&lt;/P&gt;
&lt;H1&gt;5. Cost Differences at Scale&lt;/H1&gt;
&lt;P&gt;Token costs can compound quickly when an avatar platform is deployed across an organization, supporting thousands of daily conversations across HR, IT, onboarding, and other employee-service scenarios. The comparison below uses publicly available list pricing from the Microsoft Foundry pricing page and Fireworks AI’s serverless pricing documentation, verified at the time of writing. Always confirm the latest pricing before building a business case, as rates and service tiers may change.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Model&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Input ($ / 1M tokens)&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Cached input ($ / 1M tokens)&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Output ($ / 1M tokens)&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Microsoft Foundry GPT-4o (Global)&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$2.50&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$1.25&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$10.00&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Microsoft Foundry GPT-5 (Global)&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$1.25&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$0.13&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$10.00&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Fireworks MiniMax (Standard serverless tier)&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$0.30&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$0.06&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$1.20&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Fireworks MiniMax (Priority serverless tier)&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$0.45&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$0.09&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$1.80&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;STRONG&gt;Worked example — 50M input tokens + 10M output tokens in a month&lt;/STRONG&gt; (a realistic volume for an org-wide FAQ/onboarding avatar handling tens of thousands of short conversations):&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="width: 100%; border-width: 1px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Foundry GPT-4o&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Foundry GPT-5&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;MiniMax M2.5 via Fireworks AI, deployed through Microsoft Foundry (Standard)&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Input cost (50M tokens)&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$125.00&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$62.50&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$15.00&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Output cost (10M tokens)&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$100.00&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$100.00&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$12.00&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Total / month&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;$225.00&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;$162.50&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;$27.00&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Relative to Foundry GPT-4o&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;100%&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;72%&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;~12%&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 25.0186%" /&gt;&lt;col style="width: 25.0186%" /&gt;&lt;col style="width: 25.0186%" /&gt;&lt;col style="width: 25.0186%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P data-start="612" data-end="1016"&gt;At this volume, routing scripted-avatar text generation through MiniMax M2.5 via Fireworks AI, deployed through Microsoft Foundry, costs approximately &lt;STRONG data-start="763" data-end="775"&gt;88% less&lt;/STRONG&gt; than using Foundry GPT-4o for the text-generation portion of the pipeline. As usage grows to more than 500 million tokens per month across a large enterprise deployment, the difference can become a meaningful operating-budget consideration.&lt;/P&gt;
&lt;P data-start="1018" data-end="1246"&gt;This comparison does &lt;STRONG data-start="1039" data-end="1046"&gt;not&lt;/STRONG&gt; include avatar-rendering costs in Azure Speech in Foundry Tools, including text-to-speech and video synthesis. These costs apply separately, regardless of which language model generates the response.&lt;/P&gt;
&lt;P data-start="1248" data-end="1581" data-is-last-node="" data-is-only-node=""&gt;The comparison also excludes live spoken sessions powered by the Voice Live API in Azure Speech in Foundry Tools using GPT-4o through Microsoft Foundry. Voice Live is priced separately and is not part of this comparison because MiniMax M2.5 supports the scripted text-generation path rather than the real-time audio interaction path.&lt;/P&gt;
&lt;H1&gt;Get Started&lt;/H1&gt;
&lt;P&gt;Everything described in this post—including dual-model routing, WebRTC-based avatar rendering, and MCP server integration—is available as open-source code that you can clone and run today.&lt;/P&gt;
&lt;P&gt;&lt;STRONG data-start="206" data-end="228"&gt;GitHub repository:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;# Clone the repository&lt;/P&gt;
&lt;P&gt;git clone https://github.com/ganachan/ai-executive-avatar-platform.git&lt;/P&gt;
&lt;P&gt;cd ai-executive-avatar-platform&lt;/P&gt;
&lt;P&gt;# Configure environment variables&lt;/P&gt;
&lt;P&gt;cp backend/.env.example backend/.env # Add your Azure resource details&lt;/P&gt;
&lt;P&gt;cp frontend/.env.example frontend/.env&lt;/P&gt;
&lt;P&gt;# Install and run the FastAPI backend&lt;/P&gt;
&lt;P&gt;cd backend&lt;/P&gt;
&lt;P&gt;pip install -r requirements.txt&lt;/P&gt;
&lt;P&gt;uvicorn main:app --reload --port 8000&lt;/P&gt;
&lt;P&gt;# In a second terminal, install and run the Next.js frontend&lt;/P&gt;
&lt;P&gt;cd frontend&lt;/P&gt;
&lt;P&gt;npm install&lt;/P&gt;
&lt;P&gt;npm run dev&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Prerequisites:&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI data-section-id="1qtccqt" data-start="809" data-end="830"&gt;Node.js 18 or later&lt;/LI&gt;
&lt;LI data-section-id="1uq9vzm" data-start="831" data-end="853"&gt;Python 3.11 or later&lt;/LI&gt;
&lt;LI data-section-id="zsvxqk" data-start="854" data-end="930"&gt;An Azure subscription with Avatar enabled in Azure Speech in Foundry Tools&lt;/LI&gt;
&lt;LI data-section-id="1wamz67" data-start="931" data-end="999"&gt;A Microsoft Foundry resource with GPT-4o and MiniMax M2.5 deployed&lt;/LI&gt;
&lt;LI data-section-id="17ijcqb" data-start="1000" data-end="1139"&gt;Azure CLI authentication configured through az login for Microsoft Entra ID authentication; static API keys are not required by default&lt;/LI&gt;
&lt;/UL&gt;
&lt;P data-start="1141" data-end="1278"&gt;Switching the reasoning model for your deployment requires only a one-line configuration change in backend/config.py or backend/.env:&lt;/P&gt;
&lt;P&gt;# Route scripted-avatar chat through MiniMax M2.5 via Fireworks AI, # deployed through Microsoft Foundry CHAT_MODEL_PROVIDER=minimax # ...or use GPT-4o via Microsoft Foundry CHAT_MODEL_PROVIDER=azure&lt;/P&gt;
&lt;P data-start="1494" data-end="1669" data-is-last-node="" data-is-only-node=""&gt;Fork the repository, connect it to your own Azure resources, and customize the avatar personas, system prompts, knowledge sources, and fine-tuned models for your organization.&lt;/P&gt;
&lt;H2 data-section-id="13i3hxv" data-start="0" data-end="62"&gt;Summary: Open Models as Workflow Partners, Not Replacements&lt;/H2&gt;
&lt;P data-start="64" data-end="256"&gt;The key lesson from building this platform is not that open models outperform frontier models. It is that both belong in the same workflow, with each model routed to the tasks it handles best.&lt;/P&gt;
&lt;P data-start="258" data-end="545"&gt;Use frontier models such as GPT-4o or GPT-5 through Microsoft Foundry when an interaction requires advanced reasoning, multimodal understanding, or real-time speech-to-speech fluency—such as the natural spoken conversations enabled by the Voice Live API in Azure Speech in Foundry Tools.&lt;/P&gt;
&lt;P data-start="547" data-end="978"&gt;Use a fine-tuned open model such as MiniMax M2.5 via Fireworks AI, deployed through Microsoft Foundry, for high-volume, persona-specific, and cost-sensitive text interactions. These include FAQ and policy-related experiences in the Scripted Avatar mode, where organizations may also want greater control over model customization and the option to fine-tune using their approved data, subject to licensing and platform capabilities.&lt;/P&gt;
&lt;P data-start="980" data-end="1176"&gt;Because both model paths use the same OpenAI-compatible interface and are controlled through a single configuration setting, this is not merely a conceptual hybrid architecture. Switching between:&lt;/P&gt;
&lt;P&gt;CHAT_MODEL_PROVIDER=minimax&lt;/P&gt;
&lt;P data-start="1219" data-end="1223"&gt;and:&lt;/P&gt;
&lt;P&gt;CHAT_MODEL_PROVIDER=azure&lt;/P&gt;
&lt;P data-start="1264" data-end="1399"&gt;makes it possible to compare cost, latency, and response quality side by side using the same avatar, persona, and application workflow.&lt;/P&gt;
&lt;P data-start="1401" data-end="1644"&gt;As avatar and agent platforms scale across the enterprise, this pattern—frontier models for complex interactions and customized open models for high-volume workloads—is likely to become a common architectural approach rather than an exception.&lt;/P&gt;
&lt;P data-start="1646" data-end="1922"&gt;Built using &lt;STRONG data-start="1658" data-end="1728"&gt;Azure Speech in Foundry Tools, Microsoft Foundry, and Fireworks AI&lt;/STRONG&gt;. Have questions about the architecture or want to explore the implementation? Share your questions in the comments or clone the repository linked above and try it with your own Azure resources.&lt;/P&gt;
&lt;P data-start="1924" data-end="2082" data-is-last-node="" data-is-only-node=""&gt;Thank you, &lt;STRONG data-start="1935" data-end="1954"&gt;Binaka Sankaran&lt;/STRONG&gt;, for volunteering to record the source video used to create the avatar and for helping us scale and accelerate this initiative.&lt;/P&gt;</description>
      <pubDate>Wed, 29 Jul 2026 14:00:00 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/executive-ai-avatar-platform-on-azure-frontier-intelligence/ba-p/4541301</guid>
      <dc:creator>Gana_Chandrasekaran</dc:creator>
      <dc:date>2026-07-29T14:00:00Z</dc:date>
    </item>
    <item>
      <title>Introducing Kimi K3 through Fireworks AI on Microsoft Foundry</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/introducing-kimi-k3-through-fireworks-ai-on-microsoft-foundry/ba-p/4540187</link>
      <description>&lt;P&gt;Need to process entire codebases, lengthy legal documents, or hours of meeting transcripts in a single prompt? Kimi K3's 1 million-token context window—one of the largest available—is now deployable on Microsoft Foundry through Fireworks AI. Here's what that massive context means for your applications.&lt;/P&gt;
&lt;H3&gt;What makes Kimi K3 Different&lt;/H3&gt;
&lt;P&gt;Kimi K3 is an open-weight model from Moonshot AI featuring 2.8 trillion parameters—making it one of the largest open models available. Its 1 million-token context window means you can process approximately 750,000 words (roughly 10 full novels or an entire codebase) in a single request. Fireworks AI provides the optimized inference infrastructure, while Microsoft Foundry handles enterprise deployment and governance.&lt;/P&gt;
&lt;H3&gt;Use Cases&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Full repository code analysis&lt;/STRONG&gt;: Analyze entire codebases for security vulnerabilities or refactoring opportunities. For example, you could pass your entire Node.js application (package.json, all source files, and dependencies) in a single prompt and ask Kimi K3 to identify unused imports, potential SQL injection points, or suggest architectural improvements—no chunking or retrieval augmentation required.'&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Long-document summarization&lt;/STRONG&gt;: Process legal contracts, research papers, or compliance documents without chunking&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Extended conversation memory&lt;/STRONG&gt;: Build chatbots that remember entire conversation histories&lt;/LI&gt;
&lt;/UL&gt;
&lt;H3&gt;Pricing and Deployment&lt;/H3&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Model Name&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Deployment Type&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Input/1M tokens&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Output/1M tokens&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Cached Input/1M tokens&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;FW Kimi K3&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&amp;nbsp;Data Zone&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$3.30&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$16.50&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;$0.33&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Customers can deploy Kimi K3 in Microsoft Foundry via Fireworks, subject to applicable availability, deployment, and pricing terms.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Get Started Today&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Deploy &lt;A class="lia-external-url" href="https://ai.azure.com/catalog/models/FW-Kimi-K3" target="_blank" rel="noopener"&gt;Kimi K3 through Fireworks&lt;/A&gt; in Foundry today.&lt;/LI&gt;
&lt;LI&gt;Compare models:&amp;nbsp;&lt;A class="lia-external-url" href="https://ai.azure.com/catalog" target="_blank"&gt;Browse all Foundry Models&lt;/A&gt;.&lt;/LI&gt;
&lt;LI&gt;Learn more about&amp;nbsp;&lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/azure/foundry/how-to/fireworks/enable-fireworks-models" target="_blank"&gt;Fireworks in Foundry&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 28 Jul 2026 17:34:17 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/introducing-kimi-k3-through-fireworks-ai-on-microsoft-foundry/ba-p/4540187</guid>
      <dc:creator>davevoutila</dc:creator>
      <dc:date>2026-07-28T17:34:17Z</dc:date>
    </item>
    <item>
      <title>Claude Opus 5 is available today in Microsoft Foundry</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/claude-opus-5-is-available-today-in-microsoft-foundry/ba-p/4535068</link>
      <description>&lt;P&gt;&lt;SPAN data-contrast="none"&gt;Most AI handles one task well. The harder problem is the complex workflow that spans hours. Effective enterprise AI must be capable of managing complex workflows that require planning, adaptation, and persistence over extended periods. &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215,&amp;quot;335559739&amp;quot;:160}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;We're excited to announce that &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="none"&gt;Claude Opus 5&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN data-contrast="none"&gt;, Anthropic's most advanced Opus model and the first Opus model in the fifth generation of Claude, is now available in &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="none"&gt;Microsoft Foundry&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN data-contrast="none"&gt;. Whether you are building agents, coding software, or automating enterprise workflows, Opus 5 is designed to work for hours, find paths around obstacles, navigate codebases like a senior engineer, and support deeper reasoning and higher accuracy. &amp;nbsp;Combined with Microsoft Foundry's enterprise platform including Foundry evaluation tools, &lt;SPAN data-contrast="auto"&gt;native security controls&lt;/SPAN&gt;, governance, and scalable deployment, organizations can confidently build and operate the next generation of AI applications. &lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215,&amp;quot;335559739&amp;quot;:160}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5&gt;&lt;SPAN data-contrast="none"&gt;Navigates codebases like an engineer&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215,&amp;quot;335559739&amp;quot;:160}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;Writing a good function isn't the hard part anymore. The hard part is understanding how a change ripples through a large repository, across files, across architecture decisions someone made years ago. Claude Opus 5 is Anthropic's strongest Opus model yet for that kind of work: it navigates large codebases with the judgment of an engineer, adjusts its approach as a project evolves, and can run for hours, even overnight, on a senior engineering task, working around obstacles instead of stalling on them. &lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215,&amp;quot;335559739&amp;quot;:160}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5&gt;&lt;SPAN data-contrast="none"&gt;Builds long-running agents that can work for hours&lt;/SPAN&gt;&lt;SPAN data-contrast="none"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215,&amp;quot;335559739&amp;quot;:160}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;Many enterprise workflows cannot be completed in a single interaction. Research, software engineering, document review, and operational automation often require AI systems that can work continuously over multiple steps while responding intelligently to changing conditions.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215,&amp;quot;335559739&amp;quot;:160}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;Claude Opus 5 powers dependable long-running agents, recovering from errors, and reaching their objectives.&amp;nbsp; Opus 5 plans a workflow, adapts the plan when something breaks, and holds context across tools and subagents to see it through. Combined with Microsoft Foundry Agent Service, developers can build reliable agents that automate sophisticated business processes while maintaining enterprise governance and observability.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215,&amp;quot;335559739&amp;quot;:160}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5&gt;&lt;SPAN data-contrast="none"&gt;Transforms enterprise knowledge work&lt;/SPAN&gt;&lt;SPAN data-contrast="none"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215,&amp;quot;335559739&amp;quot;:160}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;From precise financial workflows to professional work that runs for days, , Opus 5 is built to handle the density of that work with deeper reasoning for long documents, higher accuracy for complex analysis, and raises the bar for the practical tasks that fill a workday. It is&lt;/SPAN&gt; &lt;SPAN data-contrast="none"&gt;built for enterprise work, powering agents that run multi-day projects end-to-end, and follows instructions precisely, stays in scope, and produces professional-grade spreadsheets, slides, and docs.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215,&amp;quot;335559739&amp;quot;:160}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5&gt;&lt;SPAN data-contrast="none"&gt;Brings deeper reasoning to financial workflows&lt;/SPAN&gt;&lt;SPAN data-contrast="none"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;Financial analysis cannot tolerate shortcuts. Opus 5 is built to read a dense filing, hold a chart or table in context alongside it, and carry that thread across an entire transaction or reporting cycle, not just the page in front of it. That's the reasoning investment research, corporate finance, risk analysis, and due diligence work depend on.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215,&amp;quot;335559738&amp;quot;:240,&amp;quot;335559739&amp;quot;:240}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5&gt;&lt;SPAN data-contrast="none"&gt;Understands documents, charts, and visual information&lt;/SPAN&gt;&lt;SPAN data-contrast="none"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;Enterprise work is increasingly visual, not just text. Critical information lives in scanned PDFs, dashboards, invoices, technical diagrams, and screenshots of systems that may never have been formally documented. Claude Opus 5 brings advanced vision capabilities to the Opus class, enabling AI to accurately understand and reason over visual content rather than simply extract text from it. Combined with Foundry IQ, which connects agents to documentation and process knowledge already embedded across your organization, AI agents can securely access, interpret, and act on enterprise data in context. Together, these capabilities provide the foundation for intelligent document processing, enterprise search, and a new generation of multimodal applications.&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5&gt;&lt;SPAN data-contrast="none"&gt;Automates work across multiple applications&lt;/SPAN&gt;&lt;SPAN data-contrast="none"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;Claude Opus 5 is also a strong model for computer use. By combining high-resolution vision with deep reasoning, the model can interact with software interfaces and complete workflows that span multiple applications. It can navigate interfaces and execute multi-step tasks requiring planning and judgment. This opens new opportunities for automating repetitive business operations while reducing manual effort.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5&gt;&lt;SPAN data-contrast="none"&gt;Enterprise-ready AI with Microsoft Foundry&lt;/SPAN&gt;&lt;SPAN data-contrast="none"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;Claude Opus 5 is Zero Data Retention compatible. Powerful models alone are not enough for production AI. Organizations also need platform capabilities to build, evaluate, secure, and scale enterprise applications.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;With Opus 5 in Microsoft Foundry, developers can:&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="●" data-font="Verdana" data-listid="1" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Verdana&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;●&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="1" data-aria-level="1"&gt;&lt;SPAN data-contrast="none"&gt;Build AI applications using Azure-native authentication, networking, billing, and governance.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335559685&amp;quot;:1080}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="●" data-font="Verdana" data-listid="3" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Verdana&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;●&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="1" data-aria-level="1"&gt;&lt;SPAN data-contrast="none"&gt;Evaluate model quality and compare prompts, models, and workflows before deployment.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335559685&amp;quot;:1080}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="●" data-font="Verdana" data-listid="4" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Verdana&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;●&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="1" data-aria-level="1"&gt;&lt;SPAN data-contrast="none"&gt;Ground AI applications with enterprise data and knowledge using Microsoft IQ.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335559685&amp;quot;:1080}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="●" data-font="Verdana" data-listid="5" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Verdana&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;●&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="1" data-aria-level="1"&gt;&lt;SPAN data-contrast="none"&gt;Monitor performance and improve agents through continuous evaluation.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335559685&amp;quot;:1080}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="●" data-font="Verdana" data-listid="2" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Verdana&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;●&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="1" data-aria-level="1"&gt;&lt;SPAN data-contrast="none"&gt;Deploy production AI with the security, compliance, and operational controls enterprises expect.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335559685&amp;quot;:1080}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;Microsoft Foundry gives organizations the complete platform needed to move from experimentation to production with confidence.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;335557856&amp;quot;:16777215}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="none"&gt;Opus 5 is available now in Microsoft Foundry. Start building: &lt;A class="lia-external-url" href="https://aka.ms/claude-opus-5-version-2" target="_blank"&gt;AI Model Catalog | Microsoft Foundry Models&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 24 Jul 2026 17:21:19 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/claude-opus-5-is-available-today-in-microsoft-foundry/ba-p/4535068</guid>
      <dc:creator>amar_badal</dc:creator>
      <dc:date>2026-07-24T17:21:19Z</dc:date>
    </item>
    <item>
      <title>Post-Stream Refinement is now generally available in Microsoft Foundry</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/post-stream-refinement-is-now-generally-available-in-microsoft/ba-p/4540174</link>
      <description>&lt;P&gt;When we introduced Post-Stream Refinement in public preview earlier this year, it closed the oldest trade-off in real-time speech: you could finally keep instant streaming results&amp;nbsp;&lt;EM&gt;and&lt;/EM&gt;&amp;nbsp;get a highly accurate final transcript, with no penalty to first-token latency. A second recognition pass runs in parallel with streaming and replaces each final segment with a more accurate version once the utterance completes.&lt;/P&gt;
&lt;P&gt;Today, Post-Stream Refinement reaches general availability for Azure AI Speech in Microsoft Foundry, backed by a production SLA. Just as important, it now ships with the capabilities production transcription actually depends on:&amp;nbsp;&lt;STRONG&gt;diarization&lt;/STRONG&gt;&amp;nbsp;to preserve who said what,&amp;nbsp;&lt;STRONG&gt;phrase lists&lt;/STRONG&gt;&amp;nbsp;for your product names and domain vocabulary, and a much wider footprint of&amp;nbsp;&lt;STRONG&gt;19 locales across 22 Azure regions&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;Everything you already know about Post-Stream Refinement still applies. The real-time contract is unchanged, your partial results stream exactly as before, and you enable refinement by setting a single property on your existing&amp;nbsp;SpeechConfig. What changes at GA is that the refined transcript is now production-grade and speaker-aware.&amp;nbsp;&lt;A href="https://learn.microsoft.com/azure/ai-services/speech-service/how-to-recognize-speech" target="_blank" rel="noopener"&gt;📖 Read the Documentation&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;What's new at general availability&lt;/H2&gt;
&lt;P&gt;If you have already used Post-Stream Refinement in preview, here is exactly what changes at GA, and what stays the same. The streaming path and SDK contract are untouched; the refinement pass is now production-ready and gains speaker and vocabulary features.&amp;nbsp;&lt;/P&gt;
&lt;img&gt;What's new at GA versus the public preview release. Same real-time streaming contract; production-ready refinement with new speaker and vocabulary features.&lt;/img&gt;
&lt;H2&gt;How Post-Stream Refinement works&lt;/H2&gt;
&lt;P&gt;Real-time and final results serve different needs. Partial results must appear quickly so captions, voice interfaces, and agent turn-taking stay responsive. Final results need enough context to support storage, search, summarization, and business workflows. Post-Stream Refinement runs both at once: a fast streaming pass and a deeper refinement pass over the same audio, in parallel.&lt;/P&gt;
&lt;img&gt;Both passes run in parallel — partial results stream immediately; final results are refined with broader audio context.&lt;/img&gt;
&lt;P&gt;Because the two passes share one input stream, enabling refinement does not require a second transcription job or a separate client pipeline. Your existing recognition events and partial-result handling stay exactly as they are.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;Speaker attribution with diarization&lt;/H2&gt;
&lt;P&gt;New at GA, diarization is supported on the Post-Stream Refinement path, so the refined final transcript keeps its speaker labels. That makes the release a strong fit for meetings, contact centers, interviews, and any workflow where the transcript needs to identify who spoke, not just what was said. The refinement pass improves the wording, including proper nouns and named entities, while every utterance stays attributed to the right speaker.&lt;/P&gt;
&lt;img /&gt;
&lt;H2&gt;Phrase lists for your vocabulary&lt;/H2&gt;
&lt;P&gt;Phrase lists let the recognizer prioritize the names and terms that matter to your application: product catalogs, medical and technical vocabulary, organization names, and acronyms that general speech models might not recognize consistently. At GA you can pair phrase lists with refinement so the second pass has both broad audio context and your domain vocabulary to draw on, which is where the largest accuracy gains on named entities show up.&lt;/P&gt;
&lt;H2&gt;Quality impact&lt;/H2&gt;
&lt;P&gt;In internal testing and partner evaluations across supported locales, Post-Stream Refinement reduced final-transcript word error rate by double-digit relative percentages compared with standard real-time transcription, with the largest gains on the hardest content: long utterances, proper nouns, and domain-specific speech. Pairing phrase lists with refinement improves named-entity accuracy further. Partial-result latency is unchanged; only the final transcript is refined.&lt;/P&gt;
&lt;img&gt;Relative improvement versus standard real-time transcription. Gains vary by locale, acoustic conditions, and content type.&lt;/img&gt;
&lt;P&gt;The refined final result may add a small amount of latency to the final segment because refinement happens after the segment audio is received. Partial results are unaffected.&lt;/P&gt;
&lt;H2&gt;Supported languages and regions&lt;/H2&gt;
&lt;P&gt;General availability supports 19 locales. You declare one locale per session, so the service is tuned to the language you expect. Alongside the Tier-1 languages, GA adds Indic locales, including Bengali, Marathi, Punjabi, and Telugu.&lt;/P&gt;
&lt;img&gt;19 supported locales at GA. Declare one locale per session.&lt;/img&gt;
&lt;P&gt;Post-Stream Refinement is generally available in 22 Azure regions across the Americas, Europe, and Asia Pacific.&lt;/P&gt;
&lt;img&gt;Generally available in 22 Azure regions across the Americas, Europe, and Asia Pacific.&lt;/img&gt;
&lt;H2&gt;Proven at Microsoft scale&lt;/H2&gt;
&lt;P&gt;The technology behind Post-Stream Refinement already powers meeting transcription and Microsoft 365 Copilot experiences in Microsoft Teams, serving millions of users across meetings, webinars, and live events every day. General availability brings the same quality bar to every Azure AI Speech customer through a supported SDK integration, not a research prototype.&lt;/P&gt;
&lt;P&gt;Preview customers across industries, including automotive, consumer electronics, and aviation, reported positive gains in transcription quality, with the clearest improvements on the hardest content: proper nouns, long-form speech, and domain-specific audio. Several are now moving those workloads into production on the GA release.&lt;/P&gt;
&lt;H2&gt;Get started&lt;/H2&gt;
&lt;P&gt;Enabling Post-Stream Refinement is a small configuration change on your existing&amp;nbsp;SpeechConfig. You will need:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Speech SDK 1.50 or later.&lt;/STRONG&gt;&amp;nbsp;Earlier versions do not support the refinement path.&lt;/LI&gt;
&lt;LI&gt;A&amp;nbsp;&lt;STRONG&gt;Speech resource&lt;/STRONG&gt;&amp;nbsp;in one of the supported regions listed above.&lt;/LI&gt;
&lt;LI&gt;The&amp;nbsp;&lt;STRONG&gt;session locale&lt;/STRONG&gt;&amp;nbsp;you expect, set on the recognizer.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Set the post-processing option to PostRefinement. The example below also shows the optional phrase list for your domain vocabulary.&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;import azure.cognitiveservices.speech as speechsdk

speech_config = speechsdk.SpeechConfig(
    subscription="YourSpeechKey",
    region="YourSpeechRegion")

# Declare one locale for the session
speech_config.speech_recognition_language = "en-US"

# 1) Refine the final transcript (Post-Stream Refinement)
speech_config.set_property(
    speechsdk.PropertyId.SpeechServiceResponse_PostProcessingOption,
    "PostRefinement")

audio_config = speechsdk.AudioConfig(use_default_microphone=True)

recognizer = speechsdk.SpeechRecognizer(
    speech_config=speech_config,
    audio_config=audio_config)

# 2) (Optional) Phrase list for names, acronyms, and domain terms
phrase_list = speechsdk.PhraseListGrammar.from_recognizer(recognizer)
for term in ["Contoso", "Fabrikam", "Foundry", "OAuth"]:
    phrase_list.addPhrase(term)&lt;/LI-CODE&gt;
&lt;P&gt;Your existing recognition events and partial-result handling remain unchanged. For speaker attribution, enable diarization through the established real-time diarization path; refinement applies to the final transcript while speaker labels are preserved.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;Choose the right release for your workload&lt;/H2&gt;
&lt;P&gt;Post-Stream Refinement now has two paths. They are the same product family with a different feature boundary, so match the path to what your customer needs.&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="width: 100%; border-width: 1px;"&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&amp;nbsp;&lt;/th&gt;&lt;th&gt;Monolingual PSR — generally available&lt;/th&gt;&lt;th&gt;Multilingual PSR — public preview&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Language selection&lt;/td&gt;&lt;td&gt;One locale declared per session&lt;/td&gt;&lt;td&gt;Automatic detection and code-switching in a single stream (open-range, no locale declared)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Supported locales&lt;/td&gt;&lt;td&gt;19 locales, including Indic bn / mr / pa / te&lt;/td&gt;&lt;td&gt;25 languages / 29 locales, auto-detected&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Azure regions&lt;/td&gt;&lt;td&gt;22 Azure regions across the Americas, Europe, and Asia Pacific&lt;/td&gt;&lt;td&gt;6 Azure regions&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Phrase lists &amp;amp; diarization&lt;/td&gt;&lt;td&gt;Supported&lt;/td&gt;&lt;td&gt;Only diarization is supported&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 18.3539%" /&gt;&lt;col style="width: 48.3539%" /&gt;&lt;col style="width: 33.3539%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;STRONG&gt;Working across languages?&lt;/STRONG&gt; If a single stream needs to handle multiple languages or code-switching without a declared locale, use Multilingual Post-Stream Refinement, now in public preview. For a known session locale with phrase lists and diarization, monolingual GA is the right path.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;Try Post-Stream Refinement Today&lt;/H2&gt;
&lt;P&gt;Turn on higher-accuracy, language-aware transcription in your Azure AI Speech applications with a single configuration change.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/how-to-recognize-speech?pivots=programming-language-python#post-stream-refinement-preview" target="_blank" rel="noopener"&gt;📖 Read the Documentation&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;We would love your feedback. Try Post-Stream Refinement in your applications and tell us how it improves your transcription quality.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jul 2026 21:29:47 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/post-stream-refinement-is-now-generally-available-in-microsoft/ba-p/4540174</guid>
      <dc:creator>SolarRezaei</dc:creator>
      <dc:date>2026-07-23T21:29:47Z</dc:date>
    </item>
    <item>
      <title>For the first time, real-time transcription goes multilingual</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/for-the-first-time-real-time-transcription-goes-multilingual/ba-p/4539089</link>
      <description>&lt;P&gt;When we introduced&amp;nbsp;&lt;STRONG&gt;Post-Stream Refinement&lt;/STRONG&gt;&amp;nbsp;earlier this year, it closed the oldest gap in real-time speech: you could finally get instant streaming results&amp;nbsp;&lt;EM&gt;and&lt;/EM&gt;&amp;nbsp;a highly accurate final transcript, with no latency penalty. But it kept one hard requirement — you had to tell the service, up front, which single language to expect. Real-world speech does not work that way. People code-switch mid-sentence, product and brand names cross languages, and a global app serves users who simply speak differently from one session to the next.&lt;/P&gt;
&lt;P&gt;Today we remove that requirement.&amp;nbsp;&lt;STRONG&gt;Multilingual Post-Stream Refinement&lt;/STRONG&gt;&amp;nbsp;enters public preview for Azure AI Speech in Microsoft Foundry, and&amp;nbsp;&lt;STRONG&gt;for the first time ever a single real-time stream can transcribe multiple languages in one session&lt;/STRONG&gt; — the spoken language is detected automatically, no locale is declared in advance, and the final transcript is refined for accuracy. Everything you already know about Post-Stream Refinement still applies; what changes is that the refinement pass itself is now multilingual. &lt;A href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/how-to-recognize-speech?pivots=programming-language-python#post-stream-refinement-preview" target="_blank" rel="noopener"&gt;📖 Read the Documentation&lt;/A&gt;&lt;/P&gt;
&lt;H2&gt;What's New in This Release&lt;/H2&gt;
&lt;P&gt;If you have already used Post-Stream Refinement, here is exactly what changes with the multilingual preview — and what stays the same:&lt;/P&gt;
&lt;img&gt;What's new: the same real-time contract, now multilingual. One multilingual model runs the refinement pass, adding automatic multi-language detection, code-switching within a single utterance, open-range setup with no candidate list, and included diarization — while first-token streaming latency stays unchanged.&lt;/img&gt;
&lt;H2&gt;Quality Impact&lt;/H2&gt;
&lt;P&gt;In internal testing and partner evaluations across Tier-1 locales, multilingual Post-Stream Refinement reduced word error rate (WER) by&amp;nbsp;&lt;STRONG&gt;approximately 10% relative on average&lt;/STRONG&gt;, with&amp;nbsp;&lt;STRONG&gt;double-digit relative reductions&lt;/STRONG&gt; on the hardest cases — long utterances, proper nouns, and multilingual or code-switched speech. Partial-result latency is unchanged; only the final transcript is refined.&lt;/P&gt;
&lt;P&gt;Gains are relative reductions versus the standard real-time model and vary by language, acoustic conditions, and content type. The refined final result may add a small amount of latency to the final segment; partial results are unaffected.&lt;/P&gt;
&lt;img&gt;Measured quality gains (relative improvement vs. standard real-time transcription): about 10% relative reduction in average word error rate across Tier-1 locales; double-digit relative reduction on long utterances; double-digit relative reduction on proper nouns and named entities; no change to partial-result (first-token) latency. Relative reductions in word error rate; public preview, exact figures vary by locale and audio.&lt;/img&gt;
&lt;H2&gt;Supported Languages and Regions&lt;/H2&gt;
&lt;P&gt;The public preview supports&amp;nbsp;&lt;STRONG&gt;15 Tier-1 locales&lt;/STRONG&gt;. Because language is detected automatically, a single stream can contain any mix of them:&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;img&gt;Supported languages: 25 auto-detected languages spanning 29 market locales — any mix of which can appear in a single real-time stream without declaring a locale up front.&lt;/img&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/DIV&gt;
&lt;P&gt;Available in these Azure regions:&lt;/P&gt;
&lt;img&gt;Availability: multilingual Post-Stream Refinement is live in six Azure regions at public preview — East US, West US, North Europe, Central India, Southeast Asia, and Japan East.&lt;/img&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3&gt;Real-World Impact&lt;/H3&gt;
&lt;P&gt;Preview customers across industries — including travel, consumer electronics, automotive, aviation, and media — have reported positive gains in transcription quality. Customers testing multilingual and domain-specific audio have observed the clearest improvements on the hardest content: proper nouns, code-switching, and long-form speech. Several are actively validating the feature on their own audio ahead of general availability.&lt;/P&gt;
&lt;H2&gt;Get Started&lt;/H2&gt;
&lt;P&gt;Enabling multilingual Post-Stream Refinement is a small configuration change on your existing&amp;nbsp;SpeechConfig. You will need:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Speech SDK 1.50 or later.&lt;/STRONG&gt;&amp;nbsp;Earlier versions do not support the multilingual path.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;A Speech resource&lt;/STRONG&gt;&amp;nbsp;in one of the supported regions listed above.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Auto-detect language configuration&lt;/STRONG&gt;&amp;nbsp;(open range) so the service identifies the language from the audio — no candidate list required.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Set the post-processing option to&amp;nbsp;PostRefinement&amp;nbsp;and pass an open-range&amp;nbsp;AutoDetectSourceLanguageConfig&amp;nbsp;when you create the recognizer. Here is a complete, copy-paste Python example, including the optional end-of-utterance detection line:&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;import azure.cognitiveservices.speech as speechsdk

speech_config = speechsdk.SpeechConfig(
    subscription="YourSpeechKey",
    region="YourSpeechRegion")

# 1) Refine the final transcript (Post-Stream Refinement)
speech_config.set_property(
    speechsdk.PropertyId.SpeechServiceResponse_PostProcessingOption,
    "PostRefinement")

# 2) Multilingual auto-detect - no candidate language list needed
auto_detect_config = speechsdk.languageconfig.AutoDetectSourceLanguageConfig()

audio_config = speechsdk.AudioConfig(use_default_microphone=True)

recognizer = speechsdk.SpeechRecognizer(
    speech_config=speech_config,
    auto_detect_source_language_config=auto_detect_config,
    audio_config=audio_config)&lt;/LI-CODE&gt;
&lt;P&gt;&lt;STRONG&gt;💡 Tip:&lt;/STRONG&gt;&amp;nbsp;Refinement matters most for applications that store or process the final transcript — meeting notes, call analytics, compliance archives, AI summarization. If you only use partial results for a live display and discard them, your real-time UX (already fast) is unchanged, while any final transcript you keep improves.&lt;/P&gt;
&lt;H2&gt;Try Multilingual Post-Stream Refinement Today&lt;/H2&gt;
&lt;P&gt;Turn on higher-accuracy, language-aware transcription in your Azure AI Speech applications with a single configuration change. Available now in public preview in Microsoft Foundry.&lt;/P&gt;
&lt;P&gt;&lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/how-to-recognize-speech?pivots=programming-language-python#post-stream-refinement-preview" target="_blank" rel="noopener"&gt;📖 Read the Documentation&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;We would love your feedback. Try Post-Stream Refinement in your applications and tell us how it improves your transcription quality.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jul 2026 21:29:27 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/for-the-first-time-real-time-transcription-goes-multilingual/ba-p/4539089</guid>
      <dc:creator>SolarRezaei</dc:creator>
      <dc:date>2026-07-23T21:29:27Z</dc:date>
    </item>
    <item>
      <title>Introducing MAI-Image-2.5 Pro and MAI-Voice-2 Flash in Microsoft Foundry</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/introducing-mai-image-2-5-pro-and-mai-voice-2-flash-in-microsoft/ba-p/4539446</link>
      <description>&lt;P&gt;One of the core principles in Microsoft Foundry is giving customers flexibility to choose the right model for the right job. As we've continued to expand the Microsoft AI (MAI) model family, we've heard a consistent theme from developers and enterprises: they want more choice based on their specific workload requirements. Some need the highest possible quality, fidelity, and consistency for professional production workflows. Others prioritize responsiveness and cost-efficiency for frequent, real-time responses.&lt;/P&gt;
&lt;P&gt;Today, we're introducing two new additions to the MAI portfolio:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;MAI-Image-2.5 Pro&lt;/STRONG&gt;, designed for customers who need maximum visual fidelity and creative control&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;MAI-Voice-2 Flash&lt;/STRONG&gt;, built for low-latency voice applications where every millisecond matters.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Together, these models extend the MAI family with specialized options that help developers optimize for the jobs they need to do. Let’s dive in.&lt;/P&gt;
&lt;H1&gt;MAI-Image-2.5 Pro: Built for professional creative workflows&lt;/H1&gt;
&lt;P&gt;MAI-Image-2.5 Pro is our newest high-fidelity image generation model, designed for scenarios where visual accuracy, consistency, and creative control are critical. The model delivers stronger object consistency, improved alignment with creative intent, and enhanced visual reasoning and world knowledge, making it the ideal choice when quality and fidelity matter more than throughput.&lt;/P&gt;
&lt;P&gt;As generative AI moves from experimentation to production, creative teams increasingly need models that can reliably generate assets that meet professional standards without extensive manual editing. MAI-Image-2.5 Pro was built to address those needs. Here are some of the scenarios it best fits:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Campaign Hero Assets &amp;amp; Multi-Frame Storytelling. &lt;/STRONG&gt;Creative agencies and marketing teams can create polished campaign visuals while maintaining consistent products, characters, and brand elements across every asset. Whether producing launch campaigns, social media variants, retail signage, or digital advertising, Image-2.5 Pro helps ensure visual consistency throughout the customer journey.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Product Photography &amp;amp; E-Commerce Catalogs.&lt;/STRONG&gt; Retailers and consumer brands can generate high-quality product imagery with accurate rendering of packaging, labels, materials, and reflections. The model's improved object consistency helps maintain identical product representation across multiple angles, color variations, and lifestyle settings.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Storyboarding &amp;amp; Pre-Visualization.&lt;/STRONG&gt; Film studios, game developers, and creative production teams can rapidly develop visual concepts while maintaining consistency across characters, environments, props, and scenes. Enhanced visual reasoning enables more accurate interpretation of camera direction, lighting, and staging instructions.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Regulated Industry Content Creation.&lt;/STRONG&gt; Organizations in healthcare, financial services, manufacturing, and other regulated industries can generate imagery that requires greater real-world accuracy and domain understanding, reducing the effort needed to correct inaccuracies before customer-facing use&lt;/LI&gt;
&lt;/UL&gt;
&lt;img /&gt;
&lt;H4&gt;When should customers use MAI-Image-2.5 Pro vs. MAI-Image-2.5?&lt;/H4&gt;
&lt;P&gt;Both models deliver high-quality image generation capabilities, but they are optimized for different priorities.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Choose MAI-Image-2.5 Pro when:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;You need maximum image fidelity and creative quality.&lt;/LI&gt;
&lt;LI&gt;Object consistency across multiple images is critical.&lt;/LI&gt;
&lt;LI&gt;Your workflow depends on visual reasoning, world knowledge, and close adherence to creative direction.&lt;/LI&gt;
&lt;LI&gt;You are producing professional marketing, advertising, product design, or enterprise creative assets.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H1&gt;MAI-Voice-2 Flash: Real-time voice experiences at scale&lt;/H1&gt;
&lt;P&gt;We're also introducing MAI-Voice-2 Flash, a new low-latency text-to-speech model that extends MAI-Voice-2 with faster response times and greater cost efficiency across more than 15 supported languages.&lt;/P&gt;
&lt;P&gt;As voice becomes a critical interface for AI applications, responsiveness is increasingly important to the end-user experience. Whether a customer is speaking with an AI-powered support agent, interacting with a voice assistant, or navigating a self-service phone system, long pauses can make experiences feel slow and unnatural. MAI-Voice-2 Flash was built to address those scenarios. Here are some of the scenarios on when to choose MAI-Voice-2 Flash:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Call Center Agents: &lt;/STRONG&gt;Customer support organizations can generate spoken responses in real time, minimizing delays between conversation turns and enabling more natural customer interactions. Low latency helps improve customer experiences while supporting AI-powered service, support, and sales workflows.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Conversational Voice Assistants:&lt;/STRONG&gt; Developers can build voice-enabled copilots, assistants, and intelligent applications that respond nearly instantly. The result is a more fluid, natural conversation that feels interactive rather than turn-based.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Interactive Voice Response (IVR) Systems: &lt;/STRONG&gt;Organizations can modernize traditional phone systems with dynamic AI-generated speech that responds contextually to customer requests while maintaining a responsive user experience.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H4&gt;When should customers use MAI-Voice-2 Flash vs. MAI-Voice-2?&lt;/H4&gt;
&lt;P&gt;The distinction between the two voice models comes down to whether customers are optimizing for &lt;STRONG&gt;voice identity&lt;/STRONG&gt; or &lt;STRONG&gt;real-time responsiveness&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Choose MAI-Voice-2 Flash when:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Low latency is a primary requirement.&lt;/LI&gt;
&lt;LI&gt;You are building conversational assistants, IVR systems, or call center experiences.&lt;/LI&gt;
&lt;LI&gt;Users expect immediate spoken responses as part of a live interaction.&lt;/LI&gt;
&lt;LI&gt;Cost efficiency and responsiveness are more important.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H1&gt;Get started today in Microsoft Foundry&lt;/H1&gt;
&lt;P&gt;MAI-Image-2.5 Pro is available through &lt;A href="https://aka.ms/mai-image-2.5-pro-foundrycard" target="_blank" rel="noopener"&gt;Microsoft Foundry&lt;/A&gt;, providing developers with access to Microsoft's latest advancements in image generation. Pricing starts at $5 per 1M tokens for text input, and $106 per 1M tokens for image output.&lt;/P&gt;
&lt;P&gt;MAI-Voice-2 Flash is available through &lt;A href="https://aka.ms/mai-voice-2-flash-foundrycard" target="_blank" rel="noopener"&gt;Azure Speech&lt;/A&gt;, allowing customers to leverage Azure Speech's enterprise-grade reliability, scalability, and ecosystem while benefiting from Microsoft's latest voice technology. Pricing starts at $15 per 1M characters.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jul 2026 20:41:12 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/introducing-mai-image-2-5-pro-and-mai-voice-2-flash-in-microsoft/ba-p/4539446</guid>
      <dc:creator>Naomi Moneypenny</dc:creator>
      <dc:date>2026-07-23T20:41:12Z</dc:date>
    </item>
    <item>
      <title>Grounding Copilot Studio Agents with Azure AI Search and Foundry IQ</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/grounding-copilot-studio-agents-with-azure-ai-search-and-foundry/ba-p/4539337</link>
      <description>&lt;P&gt;An employee opens the HR agent and asks, "How much PTO do I accrue each month?" A few minutes later, someone else asks, "Where is the official code of ethics policy?" Those sound like the same problem. They are not. The first person needs a grounded answer they can understand. The second person needs a link to the right document quickly, without interpretation. If you design for one experience, the other one feels broken.&lt;/P&gt;
&lt;P&gt;That is usually where knowledge-agent projects start to get messy. “Grounding” can sound like one switch you turn on, but in practice it is a spectrum: from zero-code classic search, to agentic retrieval over a knowledge base, to a forced-grounding agent that synthesizes answers when synthesis is required. The easier way to think about it is this: who is doing the retrieval work, and what does the user need back?&lt;/P&gt;
&lt;P&gt;This post walks through five working retrieval patterns for an “Ask HR” agent built on &lt;STRONG&gt;Copilot Studio&lt;/STRONG&gt;, &lt;STRONG&gt;Azure AI Search&lt;/STRONG&gt;, and &lt;STRONG&gt;Foundry IQ&lt;/STRONG&gt;. Each one is running code in the companion sample repo: &lt;STRONG&gt;&lt;A class="lia-external-url" href="https://github.com/honestypugh2/foundry-copilot-hr-policy-knowledge" target="_blank" rel="noopener"&gt;foundry-copilot-hr-policy-knowledge&lt;/A&gt;&lt;/STRONG&gt;. Each has a clear “use this when,” and the five patterns share the same reusable knowledge base so you can layer them on without re-indexing. By the end, you should have a decision tree you can reuse for your own knowledge source, whether that is HR policy, product docs, or support runbooks.&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P class=""&gt;Scope: companion sample for learning and experimentation, not production-ready deployment. Review the &lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/azure/well-architected/" target="_blank" rel="noopener"&gt;Azure Well-Architected Framework&lt;/A&gt; for reliability, security, cost, and operational hardening before you ship.&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;
&lt;H2&gt;The scenario: one index, many front doors&lt;/H2&gt;
&lt;P&gt;Here is the setup. The sample answers employee questions from a small corpus of internal HR policy documents: PTO accrual, hiring rules, code of ethics, blood-borne pathogen procedures, and dozens more. Underneath every pattern is one foundation: an Azure AI Search index named &lt;EM&gt;hr-policy-index&lt;/EM&gt;, populated by an indexer and skillset that chunk and vectorize the documents.&lt;/P&gt;
&lt;P&gt;Patterns A, C, and the Hosted Agent query that index directly. Patterns A2 and B add a &lt;STRONG&gt;Foundry IQ knowledge base&lt;/STRONG&gt; named &lt;EM&gt;hr-knowledge-base&lt;/EM&gt; &lt;EM&gt;on top of the same index&lt;/EM&gt; for agentic retrieval. That layering is the part to pay attention to. The retrieval assets stay separate from the orchestration layer, so you can start with the simplest pattern, prove value quickly, and move to a more capable one later without re-indexing.&lt;/P&gt;
&lt;H2&gt;Two questions that decide everything&lt;/H2&gt;
&lt;P&gt;Before we get into the patterns, it helps to define the two retrieval terms I use throughout the rest of the post:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/azure/search/search-what-is-azure-search?tabs=indexing%2Cquickstarts" target="_blank" rel="noopener"&gt;Classic search&lt;/A&gt;, index-first retrieval: one hybrid (keyword + vector) query against an Azure AI Search index, ranked and returned. Fast and predictable.&lt;/LI&gt;
&lt;LI&gt;&lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/azure/search/agentic-retrieval-overview?tabs=quickstarts" target="_blank" rel="noopener"&gt;Agentic retrieval&lt;/A&gt;, the knowledge base plans multiple sub-queries from the user's question, runs them in parallel, re-ranks, and merges the results before the agent composes an answer. Higher quality on complex, multi-part questions.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;If you want the fuller picture of how these two approaches map to retrieval-augmented generation, the Azure AI Search team's &lt;A class="lia-external-url" href="https://learn.microsoft.com/azure/search/retrieval-augmented-generation-overview" target="_blank" rel="noopener"&gt;RAG and generative AI overview&lt;/A&gt; walks through the trade-offs and uses a similar HR/PTO example.&lt;/P&gt;
&lt;P&gt;Once those terms are clear, the decision tree comes down to three practical questions:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Q1: Do users need an answer or are they really trying to find the right document?&lt;/STRONG&gt;&lt;BR /&gt;If they just need the document, stay on the locator path. If they need the policy explained or summarized, move into the answer-synthesis path.&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN data-user-selection=""&gt;&lt;STRONG&gt;QL: Is the content in a citation-friendly knowledge base?&lt;/STRONG&gt;&lt;BR /&gt;For example, SharePoint content or Azure AI Search content with a reliable &lt;/SPAN&gt;&lt;SPAN data-user-selection=""&gt;&lt;EM&gt;blob_url&lt;/EM&gt;. If yes, Copilot Studio can usually handle this with native citation cards in Pattern A. If not, use Pattern &lt;/SPAN&gt;C with the dual tool &lt;EM&gt;/api/lookup&lt;/EM&gt; path so the agent can return the exact document link.&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Q2: Do you actually need an LLM agent in the middle?&lt;/STRONG&gt;&lt;BR /&gt;If the answer is no, keep it simple: use classic search or agentic retrieval over the knowledge base. If the answer is yes, move into the agent path.&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;QK: For that non-agent path, is classic index search enough, or do you need agentic KB retrieval?&lt;/STRONG&gt;&lt;BR /&gt;Classic search points to Pattern A. Agentic retrieval over the knowledge base points to Pattern A2.&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Q3: If you need an agent, do you want Foundry to run the request loop, or do you need to self-host it?&lt;/STRONG&gt;&lt;BR /&gt;If Foundry can manage the runtime, use Pattern B. If you need the request loop in your own container, use the Hosted Agent.&lt;BR /&gt;&lt;BR /&gt;That is the decision tree in plain terms: Q1 decides whether this is a document-locator experience or an answer-synthesis experience. Q2 decides whether you need an LLM agent at all. Q3 is only about where the agent runs, either Foundry or your container. It does not change the front door; Copilot Studio can still be the user-facing experience.&lt;/P&gt;
&lt;img /&gt;
&lt;H2&gt;How the sample repo is organized&lt;/H2&gt;
&lt;P&gt;The repo follows the same flow as the post. Start with &lt;EM&gt;docs/DataPipelineAndTesting.md&lt;/EM&gt; to understand how the HR policy corpus is indexed, tested, and validated. Use &lt;EM&gt;docs/RetrievalPatterns.md&lt;/EM&gt; as the decision model for choosing between classic search, agentic retrieval, forced grounding, and hosted runtime options. Then use the pattern-specific docs when you are ready to wire each path.&lt;/P&gt;
&lt;P&gt;For Copilot Studio patterns, &lt;EM&gt;docs/CopilotStudioIntegration.md&lt;/EM&gt; maps to Pattern A, while &lt;EM&gt;docs/CopilotStudioHybridExample.md&lt;/EM&gt; maps to Pattern C and the dual-tool locator flow. For the more advanced agent paths, &lt;EM&gt;docs/FoundryAgentArchitecture.md&lt;/EM&gt; covers Pattern B and the hosted agent architecture. &lt;EM&gt;docs/Distribution-M365-Teams.md&lt;/EM&gt; shows how the agent can be distributed through Microsoft 365 and Teams once the retrieval pattern is working.&lt;/P&gt;
&lt;P&gt;The rest of the post is that tree, one branch at a time.&lt;/P&gt;
&lt;H2&gt;Pattern A: Direct index (classic search, zero agent code)&lt;/H2&gt;
&lt;P&gt;Start here. Copilot Studio queries hr-policy-index directly through its built-in &lt;STRONG&gt;Knowledge&lt;/STRONG&gt; action. No custom agent code runs in the answer path. The sample only owns the index, skillset, and indexing pipeline.&lt;/P&gt;
&lt;P&gt;Populate the index (server-side indexer + skillset handles chunking and vectorization):&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;uv run python scripts/index_knowledge_base_integrated_vectorization.py
# Builds hr-policy-index; a client-side alternative exists for dev/test
&lt;/LI-CODE&gt;
&lt;P&gt;&lt;STRONG&gt;What you get:&lt;/STRONG&gt; very low latency in the sample, roughly 1-2 seconds, no LLM cost in the retrieval path, and native citation cards. When the source documents carry a &lt;EM&gt;blob_url&lt;/EM&gt; or &lt;EM&gt;metadata_storage_path&lt;/EM&gt;, Copilot Studio can render a click-through card straight to the document. For many "where is the policy?" questions, that may be enough.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;The honest limitation:&lt;/STRONG&gt; Pattern A is still classic search. It does not force synthesis. If Copilot Studio generates an answer from retrieved snippets, it may paraphrase a policy in a way that is close, but not precise enough. For HR policy, that matters. If exact wording matters, that is your sign to step up to Pattern B.&lt;/P&gt;
&lt;H2&gt;Pattern A2: Copilot Studio meets Foundry IQ (agentic retrieval, no prompt agent)&lt;/H2&gt;
&lt;P&gt;This is the pattern I would look at when you want better retrieval quality without taking on the overhead of a full prompt agent. In the Copilot Studio new agent experience preview, an agent &lt;STRONG&gt;connects directly to a &lt;/STRONG&gt;&lt;A class="lia-external-url" href="https://learn.microsoft.com/azure/ai-foundry/agents/concepts/what-is-foundry-iq" target="_blank" rel="noopener"&gt;Foundry IQ&lt;/A&gt;&lt;STRONG&gt; knowledge base&lt;/STRONG&gt; through &lt;STRONG&gt;Microsoft IQ&lt;/STRONG&gt;, with no Foundry prompt agent in between. You reuse the same &lt;EM&gt;hr-knowledge-base&lt;/EM&gt; on top of the same &lt;EM&gt;hr-policy-index&lt;/EM&gt; (one command: &lt;EM&gt;python -m src.agents.create_foundry_agent&lt;/EM&gt;), but retrieval is now agentic: the knowledge base plans sub-queries, retrieves in parallel, reranks, and hands merged results to the agent.&lt;/P&gt;
&lt;P&gt;Wiring it takes a few clicks in Copilot Studio (&lt;A class="lia-external-url" href="https://learn.microsoft.com/microsoft-copilot-studio/agents-experience/foundry-iq-connect" target="_blank" rel="noopener"&gt;step-by-step on Microsoft Learn&lt;/A&gt;):&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;Build → Microsoft IQ → Foundry IQ → Create new connection&lt;/STRONG&gt;&lt;/LI&gt;
&lt;LI&gt;Choose &lt;STRONG&gt;Microsoft Entra ID Integrated&lt;/STRONG&gt; authentication&lt;/LI&gt;
&lt;LI&gt;Select &lt;EM&gt;hr-knowledge-base&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Add to agent&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;A2 is worth the upgrade from A for two reasons. First, you get agentic-retrieval quality without having to build, deploy, or maintain a prompt agent. The knowledge base becomes the reusable asset you improve in Microsoft Foundry, not something you keep reworking inside each Copilot Studio agent. Second, when configured with Microsoft Entra ID Integrated authentication, retrieval can return ACL-trimmed results per user. Each person sees content based on their access.&lt;/P&gt;
&lt;P&gt;Foundry IQ knowledge bases can also inherit enterprise-readiness controls such as customer-managed keys, network isolation, and Entra ID. A single knowledge base can also federate across multiple knowledge sources in parallel.&lt;/P&gt;
&lt;P&gt;Use A2 when you want stronger hybrid retrieval quality without taking on the overhead of operating a full agent.&lt;/P&gt;
&lt;H2&gt;Pattern B: Foundry Agent Service with forced grounding&lt;/H2&gt;
&lt;P&gt;When answers need to be synthesized &lt;EM&gt;and&lt;/EM&gt; grounded, publish a prompt agent to Microsoft Foundry with &lt;A href="https://learn.microsoft.com/azure/ai-foundry/agents/overview" target="_blank" rel="noopener"&gt;&lt;U&gt;Foundry Agent Service&lt;/U&gt;&lt;/A&gt;. In the sample, the agent uses an &lt;EM&gt;MCPTool&lt;/EM&gt; pointing at the knowledge-base endpoint, with &lt;EM&gt;tool_choice="required"&lt;/EM&gt; so the model retrieves policy chunks before answering.&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;# src/agents/hr_policy_agent.py (excerpt)
agent = PromptAgentDefinition(
    model=model_deployment_name,          # e.g. gpt-5-mini
    instructions=HR_POLICY_INSTRUCTIONS,
    tools=[mcp_tool],                     # KB MCP endpoint
    tool_choice="required",               # require retrieval before answering
)&lt;/LI-CODE&gt;
&lt;P&gt;Invoke it through the OpenAI client the project hands you:&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;client = project.get_openai_client()
response = client.responses.create(
    input="How does PTO accrue for a new hire?",
    extra_body={"agent_reference": {"name": agent_name}},
)&lt;/LI-CODE&gt;
&lt;P&gt;&lt;STRONG&gt;What you get:&lt;/STRONG&gt; synthesized answers with grounding and inline [Policy XXXX - Title] citations, all from a single SDK call on a managed runtime. &lt;STRONG&gt;The trade-off:&lt;/STRONG&gt; synthesis takes longer. In the sample, answers take roughly 10-14 seconds versus 1-2 seconds for classic search. For policy explanations, that extra time can be worth it because the user gets a composed, grounded answer instead of a list of snippets.&lt;/P&gt;
&lt;H2&gt;Pattern C: Dual-tool routing for deterministic document locators&lt;/H2&gt;
&lt;P&gt;Some questions do not need an essay; they just need the right URL, fast. Pattern C lets Copilot Studio route per turn:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;"Where is the PTO policy?"&lt;/EM&gt; → POST /api/lookup, a deterministic endpoint with no LLM, roughly 1-2 seconds, returning the document URL verbatim in the answer body.&lt;/LI&gt;
&lt;LI&gt;&lt;EM&gt;"How many PTO hours do I accrue?"&lt;/EM&gt; → hand off to Pattern A or B for a synthesized answer.&lt;/LI&gt;
&lt;/UL&gt;
&lt;LI-CODE lang="json"&gt;POST /api/lookup
{ "query": "PTO policy" }
→ 200 OK
{ "policy_id": "12345", "title": "Types of Leave: Paid Time Off (PTO)",
  "blob_url": "https://.../12345-pto.pdf" }&lt;/LI-CODE&gt;
&lt;P&gt;Reach for Pattern C when native citations are not enough. For example, use it when you need fast locator responses, the URL printed directly in the answer body, deterministic and auditable output, or support for a source that is not citation-friendly. The endpoint lives at &lt;EM&gt;src/backend/main.py:/api/lookup&lt;/EM&gt;, with its contract in &lt;EM&gt;copilot/openapi-lookup-v2.json&lt;/EM&gt;.&lt;/P&gt;
&lt;H2&gt;Hosted Agent: the same agent on your own runtime&lt;/H2&gt;
&lt;P&gt;If you need to own the request loop, custom authentication, side-car services, or infrastructure that stays inside your boundary, run the agent yourself. The Hosted Agent is the self-hosted version of the same idea: a container built on &lt;A class="lia-external-url" href="https://learn.microsoft.com/agent-framework/overview/agent-framework-overview" target="_blank" rel="noopener"&gt;Microsoft Agent Framework&lt;/A&gt;&amp;nbsp;with &lt;EM&gt;FoundryChatClient&lt;/EM&gt;. It supports both classic and agentic retrieval through one environment variable:&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="width: 62.5926%; height: 184px; border-width: 1px;"&gt;&lt;tbody&gt;&lt;tr style="height: 39px;"&gt;&lt;td style="height: 39px;"&gt;
&lt;P&gt;&lt;STRONG&gt;RETRIEVAL_MODE&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 39px;"&gt;
&lt;P&gt;&lt;STRONG&gt;Strategy&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 39px;"&gt;
&lt;P&gt;&lt;STRONG&gt;Retrieval type&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height: 39px;"&gt;&lt;td style="height: 39px;"&gt;
&lt;P&gt;tool (default)&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 39px;"&gt;
&lt;P&gt;Custom @tool &lt;EM&gt;search_hr_policies&lt;/EM&gt; (hybrid + semantic)&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 39px;"&gt;
&lt;P&gt;Classic search&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height: 39px;"&gt;&lt;td style="height: 39px;"&gt;
&lt;P&gt;context-semantic&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 39px;"&gt;
&lt;P&gt;Built-in &lt;EM&gt;AzureAISearchContextProvider&lt;/EM&gt; before each turn&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 39px;"&gt;
&lt;P&gt;Classic search&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height: 67px;"&gt;&lt;td style="height: 67px;"&gt;
&lt;P&gt;context-agentic&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 67px;"&gt;
&lt;P&gt;&lt;EM&gt;AzureAISearchContextProvider&lt;/EM&gt; over &lt;EM&gt;hr-knowledge-base&lt;/EM&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 67px;"&gt;
&lt;P&gt;Agentic retrieval&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;The context-* modes use Agent Framework’s out-of-the-box RAG context provider. Retrieval runs automatically before each model call with standardized context and citation prompts, so the agent does not have to call a search tool explicitly. That gives the self-hosted path parity with the managed Foundry path across both retrieval types. Copilot Studio can still be the front door. Q3 in the decision tree is really about where the request loop runs, not who greets the user.&lt;/P&gt;
&lt;H2&gt;Choosing a pattern&lt;/H2&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Pattern&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Orchestrator&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Retrieval&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Latency (sample)&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Best for&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;A&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Copilot Studio&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Classic&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;~1-2 s&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Start here, native citations, no agent code&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;A2&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Copilot Studio → Foundry IQ&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Agentic&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;~2-4 s&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Agentic quality, no agent to maintain&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;B&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Foundry Agent Service&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Classic/agentic via MCP&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;~10-14 s&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Forced-grounding synthesis in Foundry&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;C&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Copilot Studio (router)&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;None for lookup&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;~1-2 s&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Deterministic, verbatim document locators&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Hosted&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Agent Framework container&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Classic + agentic&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;~10-14 s&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Self-hosted runtime, custom auth&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;A simple way to read the table: start at &lt;STRONG&gt;A&lt;/STRONG&gt;, move to &lt;STRONG&gt;A2&lt;/STRONG&gt; when you want agentic retrieval without operating an agent, choose &lt;STRONG&gt;B&lt;/STRONG&gt; when each answer needs to be synthesized and grounded in Foundry, add &lt;STRONG&gt;C&lt;/STRONG&gt; for high-volume locator traffic, and pick the &lt;STRONG&gt;Hosted Agent&lt;/STRONG&gt; when you need the runtime on your own infrastructure. These are not mutually exclusive. A mature agent often routes locator queries to &lt;STRONG&gt;C&lt;/STRONG&gt; and content questions to &lt;STRONG&gt;A2&lt;/STRONG&gt; or &lt;STRONG&gt;B&lt;/STRONG&gt;.&lt;/P&gt;
&lt;H2&gt;What's next?&lt;/H2&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Try it:&lt;/STRONG&gt; clone the sample and follow Steps 1-3 of the walkthrough to stand up Pattern A, provision &lt;EM&gt;hr-knowledge-base&lt;/EM&gt;, connect Copilot Studio, and ask a question in minutes.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Go agentic:&lt;/STRONG&gt; wire the same knowledge base into the Copilot Studio new agent experience via &lt;A class="lia-external-url" href="https://learn.microsoft.com/microsoft-copilot-studio/agents-experience/foundry-iq-connect" target="_blank" rel="noopener"&gt;Foundry IQ&lt;/A&gt; (Pattern A2) and compare answer quality side by side.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Learn more:&lt;/STRONG&gt; explore &lt;A class="lia-external-url" href="https://learn.microsoft.com/azure/search/search-agentic-retrieval-concept" target="_blank" rel="noopener"&gt;agentic retrieval in Azure AI Search&lt;/A&gt;, &lt;A class="lia-external-url" href="https://learn.microsoft.com/azure/ai-foundry/agents/concepts/what-is-foundry-iq" target="_blank" rel="noopener"&gt;Foundry IQ&lt;/A&gt;, and &lt;A class="lia-external-url" href="https://learn.microsoft.com/agent-framework/overview/agent-framework-overview" target="_blank" rel="noopener"&gt;Microsoft Agent Framework&lt;/A&gt;.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Adapt it:&lt;/STRONG&gt; swap the HR policy corpus for your own product docs, support runbooks, or internal knowledge source, then compare Pattern A, A2, and B against the same user questions.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Use the repo-doc map:&lt;/STRONG&gt; start with &lt;EM&gt;docs/RetrievalPatterns.md&lt;/EM&gt; for the decision model, &lt;EM&gt;docs/CopilotStudioIntegration.md&lt;/EM&gt; for Pattern A, &lt;EM&gt;docs/CopilotStudioHybridExample.md&lt;/EM&gt; for Pattern C, &lt;EM&gt;docs/FoundryAgentArchitecture.md&lt;/EM&gt; for Pattern B and Hosted Agent, and &lt;EM&gt;docs/DataPipelineAndTesting.md&lt;/EM&gt; for ingestion and validation.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;My recommendation: start simple, prove the index works, and move up the stack only when the use case needs it. Some questions need a trusted link. Others need a grounded explanation. A strong architecture supports both without forcing every request through the same path.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;References&lt;/H2&gt;
&lt;P&gt;&lt;STRONG&gt;Copilot Studio + Foundry IQ&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A class="lia-external-url" href="https://learn.microsoft.com/microsoft-copilot-studio/agents-experience/foundry-iq-connect" target="_blank" rel="noopener"&gt;Connect to Foundry IQ from an agent&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/ai-foundry/agents/concepts/foundry-iq-faq" target="_blank" rel="noopener"&gt;Foundry IQ FAQ&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Foundry IQ / knowledge layer&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/ai-foundry/agents/concepts/what-is-foundry-iq" target="_blank" rel="noopener"&gt;What is Foundry IQ?&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/foundry/agents/how-to/foundry-iq-connect" target="_blank" rel="noopener"&gt;Connect a Foundry IQ knowledge base to Foundry Agent Service&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Azure AI Search, retrieval&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/search/search-agentic-retrieval-concept" target="_blank" rel="noopener"&gt;Agentic retrieval overview&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/search/retrieval-augmented-generation-overview" target="_blank" rel="noopener"&gt;RAG and generative AI in Azure AI Search&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/search/search-what-is-azure-search" target="_blank" rel="noopener"&gt;Classic vs agentic search&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/search/agentic-retrieval-how-to-create-knowledge-base" target="_blank" rel="noopener"&gt;Create a knowledge base&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/search/agentic-knowledge-source-overview" target="_blank" rel="noopener"&gt;Create a knowledge source&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/search/hybrid-search-overview" target="_blank" rel="noopener"&gt;Hybrid search&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/search/semantic-search-overview" target="_blank" rel="noopener"&gt;Semantic ranking&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/search/search-get-started-agentic-retrieval" target="_blank" rel="noopener"&gt;Quickstart: agentic retrieval&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/search/agentic-retrieval-how-to-create-pipeline" target="_blank" rel="noopener"&gt;Tutorial: end-to-end agentic retrieval solution&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Microsoft Foundry Agent Service (Pattern B)&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/ai-foundry/agents/overview" target="_blank" rel="noopener"&gt;Foundry Agent Service overview&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Microsoft Agent Framework (Hosted Agent)&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/agent-framework/overview/agent-framework-overview" target="_blank" rel="noopener"&gt;Microsoft Agent Framework overview&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/agent-framework/agents/tools/hosted-mcp-tools" target="_blank" rel="noopener"&gt;Hosted MCP tools&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Governance&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/azure/well-architected/" target="_blank" rel="noopener"&gt;Azure Well-Architected Framework&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Related Microsoft Foundry blog posts&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/foundry-iq-is-now-in-copilot-studio-bring-your-enterprise-data-to-every-agent-co/4534635" target="_blank" rel="noopener"&gt;Foundry IQ is now in Copilot Studio&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/answers-you-can-trust-grounding-enterprise-agents-with-foundry-iq/4536594" target="_blank" rel="noopener"&gt;Answers You Can Trust: Grounding Enterprise Agents with Foundry IQ&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/foundry-iq-unlocking-ubiquitous-knowledge-for-agents/4470812" target="_blank" rel="noopener"&gt;Foundry IQ: Unlocking ubiquitous knowledge for agents&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;</description>
      <pubDate>Wed, 22 Jul 2026 18:00:00 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/grounding-copilot-studio-agents-with-azure-ai-search-and-foundry/ba-p/4539337</guid>
      <dc:creator>BrittanyPugh</dc:creator>
      <dc:date>2026-07-22T18:00:00Z</dc:date>
    </item>
    <item>
      <title>Design the Network Before You Deploy: Best Practices for Microsoft Foundry Standard Agents BYOVNet</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/design-the-network-before-you-deploy-best-practices-for/ba-p/4537860</link>
      <description>&lt;P&gt;Ask any enterprise team standing up Microsoft Foundry in production and you'll hear the same non-negotiable: the agent can't run on the open internet. The moment it touches proprietary data, internal APIs, or regulated workloads, security wants it inside the company's own virtual network — behind private endpoints, a central firewall, and controlled DNS. That configuration — a Foundry &lt;STRONG&gt;Standard&lt;/STRONG&gt;&amp;nbsp;Agent injected into a&amp;nbsp;&lt;STRONG&gt;Bring-Your-Own (BYO) VNet&lt;/STRONG&gt;&amp;nbsp;— is the topology most large organizations actually ship to production. It's also where first deployments quietly stall.&lt;/P&gt;
&lt;P&gt;The reason is counterintuitive. Deploying the agent is, in the end, just a Bicep or Terraform template — the easy 20%. The hard 80% is the network design you lock in&amp;nbsp;&lt;EM&gt;before&lt;/EM&gt;&amp;nbsp;you run it, and it's unforgiving in two ways the template isn't.&amp;nbsp;&lt;STRONG&gt;Several of the choices are irreversible:&lt;/STRONG&gt;&amp;nbsp;outbound network injection and the agent subnet can't be changed after deployment, and subnets can't be resized in place — a wrong call on day one means a redeploy, not a tweak. And&amp;nbsp;&lt;STRONG&gt;the real lead time is organizational, not technical:&lt;/STRONG&gt; firewall change requests, IP allocation from central IPAM, NSG approvals, and Private DNS ownership in a hub-and-spoke model each take days to weeks to clear. Discover a requirement late and you're blocked on a ticket, not a template.&lt;/P&gt;
&lt;P&gt;This guide is written to prevent that. It's for the people who own the groundwork — the&amp;nbsp;&lt;STRONG&gt;platform / landing-zone architect&lt;/STRONG&gt;&amp;nbsp;and the&amp;nbsp;&lt;STRONG&gt;network security team&lt;/STRONG&gt;, with the&amp;nbsp;&lt;STRONG&gt;AI platform lead&lt;/STRONG&gt; who runs the deployment as the second reader. The goal is simple: that you can walk into your first planning meeting already knowing every subnet, CIDR, DNS zone, NSG rule, and firewall FQDN you need to request. Get the subnet layout, the Private DNS design, and the firewall allow-list right, and the template becomes the formality it should be.&lt;/P&gt;
&lt;P&gt;Every enterprise conversation I have about Foundry Standard Agents in a Bring-Your-Own (BYO) VNet opens with the same handful of questions. They're the right questions — and each one is a design decision, not a troubleshooting step:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;How many subnets do I need, and what does each one look like?&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;EM&gt;What CIDR should I reserve for the agent subnet?&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;EM&gt;Which FQDNs must I allow on my central firewall?&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;EM&gt;Where do the Private DNS zones live?&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;EM&gt;And how do I prove it's all correct before the first agent call?&lt;/EM&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;The sections below answer each one as a decision you make up front. Get the subnet layout, the Private DNS design, and the firewall allow-list right, and the template becomes the formality it should be.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Scope: &lt;/STRONG&gt;Microsoft&amp;nbsp;Foundry &lt;STRONG&gt;Standard&lt;/STRONG&gt; setup (account + project + capability host) injected into a customer VNet, optionally fronted by API Management, optionally behind a hub-and-spoke Azure Firewall with central Private DNS.&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Who is this for?&lt;/STRONG&gt;&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="width: 100%; height: 138.286px; border-width: 1px;"&gt;&lt;tbody&gt;&lt;tr style="height: 34.5714px;"&gt;&lt;td style="height: 34.5714px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;STRONG&gt; &amp;nbsp; &amp;nbsp; Reader&lt;/STRONG&gt;&lt;/td&gt;&lt;td style="height: 34.5714px;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;STRONG&gt;&amp;nbsp; &amp;nbsp; What they own&lt;/STRONG&gt;&lt;/td&gt;&lt;td style="height: 34.5714px;"&gt;&amp;nbsp; &amp;nbsp;&lt;STRONG&gt;What they get from this guide?&lt;/STRONG&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height: 34.5714px;"&gt;&lt;td style="height: 34.5714px;"&gt;&lt;STRONG&gt;Cloud platform / landing-zone architect&lt;/STRONG&gt;&lt;/td&gt;&lt;td style="height: 34.5714px;"&gt;Subnets, IPAM, Private DNS, hub-and-spoke topology&lt;/td&gt;&lt;td style="height: 34.5714px;"&gt;The exact subnet, CIDR, and DNS design to request and provision&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height: 34.5714px;"&gt;&lt;td style="height: 34.5714px;"&gt;&lt;STRONG&gt;Network security lead&lt;/STRONG&gt;&lt;/td&gt;&lt;td style="height: 34.5714px;"&gt;NSGs, Azure Firewall policy, UDRs&lt;/td&gt;&lt;td style="height: 34.5714px;"&gt;The firewall allow-list and NSG rule set to approve in one pass&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height: 34.5714px;"&gt;&lt;td style="height: 34.5714px;"&gt;&lt;STRONG&gt;AI platform lead / solution architect&lt;/STRONG&gt;&lt;/td&gt;&lt;td style="height: 34.5714px;"&gt;The Foundry deployment itself&lt;/td&gt;&lt;td&gt;
&lt;P&gt;A complete, precise ask to hand the network team on day one&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;STRONG&gt;How to use this guide:&lt;/STRONG&gt; the &lt;A href="#community--1-X5b5dbe6e10207326136b717f5ece2e8633492cf" target="_blank" rel="noopener"&gt;pre-deploy checklist&lt;/A&gt; in section 7 &lt;EM&gt;is&lt;/EM&gt; the deliverable. Sections 1–6 are the reasoning behind each checkbox — read them once, then work from the checklist.&lt;/P&gt;
&lt;H4&gt;&lt;A class="lia-anchor" target="_blank" name="_Toc234004562"&gt;&lt;/A&gt;&lt;STRONG&gt;1. Co-locate everything in one region&lt;/STRONG&gt;&lt;/H4&gt;
&lt;P&gt;There is no &lt;EM&gt;hard&lt;/EM&gt; platform requirement forcing all the pieces of a Foundry Standard deployment to live in the same Azure region. But once you inject the agent runtime into your VNet, spreading resources across regions costs you two things you don't want to pay for:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Cross-region data-transfer charges&lt;/STRONG&gt; — if Foundry is in region A but Cosmos, Search, Storage, or your model endpoint sits in region B, every agent call traverses inter-region VNet peering, which is billed &lt;STRONG&gt;per GB in both directions&lt;/STRONG&gt;. Keep everything in one region and that traffic stays local — no inter-region peering, no per-GB data-transfer bill, and a materially lower cloud spend.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Latency&lt;/STRONG&gt; — agent runs are chatty (thread reads, tool calls, vector lookups, model calls). Adding 40–100 ms per hop across regions is felt immediately in user-facing responses.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Rule of thumb:&lt;/STRONG&gt; the Foundry account, project, capability host, model deployments, dependent stores (Cosmos, Storage, Search), APIM (if used), the VNet, and the jumpbox should all live in the same region. Use paired regions only for DR — not for day-1 architecture.&lt;/P&gt;
&lt;H4&gt;&lt;A class="lia-anchor" target="_blank" name="_Toc234004563"&gt;&lt;/A&gt;&lt;STRONG&gt;2. Subnet structure — plan the layout before you touch a template&lt;/STRONG&gt;&lt;/H4&gt;
&lt;BLOCKQUOTE&gt;
&lt;P data-line="37"&gt;&lt;STRONG&gt;Before you copy the table — your SKU and landing zone change the shape of it.&lt;/STRONG&gt; The layout below is the recommended pattern for production workload (Premium APIM + a jumpbox), but two choices materially move subnets in or out of it:&lt;/P&gt;
&lt;UL data-line="39"&gt;
&lt;LI data-line="39"&gt;&lt;STRONG&gt;APIM SKU drives whether you need one subnet or two.&lt;/STRONG&gt;&amp;nbsp;&lt;EM&gt;Standard v2&lt;/EM&gt;&amp;nbsp;uses&amp;nbsp;&lt;STRONG&gt;VNet integration&lt;/STRONG&gt;&amp;nbsp;for outbound and a separate&amp;nbsp;&lt;STRONG&gt;Private Endpoint&lt;/STRONG&gt; for inbound — two distinct subnets with two distinct roles (apim-outbound-subnet plus the inbound PE on pe-subnet).&amp;nbsp;&lt;EM&gt;Premium&lt;/EM&gt;&amp;nbsp;(classic) supports full&amp;nbsp;&lt;STRONG&gt;VNet injection&lt;/STRONG&gt;, where a single delegated subnet carries both ingress and egress — you get higher throughput, multi‑region, availability zones, and one less subnet to plan for, at a higher price point. Pick the SKU first; the subnet count follows.&lt;/LI&gt;
&lt;LI data-line="40"&gt;&lt;STRONG&gt;The jumpbox subnet is landing‑zone dependent.&lt;/STRONG&gt; If your enterprise landing zone already gives operators direct line of sight into the spoke — ExpressRoute, a site‑to‑site VPN — you don't need a dedicated jumpbox-subnet here at all. Add it when you're onboarding a partner team, remote contractors, or anyone who doesn't already have private routing into the VNet and needs a controlled entry point for nslookup / portal validation.&lt;/LI&gt;
&lt;/UL&gt;
&lt;/BLOCKQUOTE&gt;
&lt;P&gt;The most common mistake I see is treating the VNet as a single flat subnet. Foundry Standard + APIM has hard constraints that push you to at least four purpose-built subnets:&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table class="lia-background-color-16 lia-border-color-21" border="1" style="width: 100%; border-width: 1px;"&gt;&lt;thead&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Subnet&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Purpose&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Delegation&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Notes&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;agent-subnet&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Foundry capability-host injects NICs here for the agent runtime&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;&lt;STRONG&gt;Microsoft.App/environments&lt;/STRONG&gt; (required)&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Must be &lt;STRONG&gt;empty of Private Endpoints&lt;/STRONG&gt; — delegation and PE NICs cannot coexist&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;pe-subnet&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Private Endpoints for Cosmos, Storage, Search, Foundry account, &lt;STRONG&gt;and APIM inbound&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;None&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;PE subnets cannot be delegated&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;apim-outbound-subnet&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;APIM VNet integration — the egress path from APIM to your private backends&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;&lt;STRONG&gt;Microsoft.Web/serverFarms&lt;/STRONG&gt; (required)&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Dedicated to a single APIM instance; cannot be shared&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;jumpbox-subnet&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;VM(s) for RDP/SSH access, nslookup validation, private portal browsing&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;None&lt;/P&gt;
&lt;/td&gt;&lt;td class="lia-border-color-21"&gt;
&lt;P&gt;Keep it separate from pe-subnet — different NSG posture, different UDR needs, and you don't want VM churn eating PE address space&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;STRONG&gt;What about extra workloads in the same VNet?&lt;/STRONG&gt; The table above is the Foundry + APIM baseline. If you host anything else alongside — MCP servers, custom APIs, background workers — give each its own dedicated subnet. &lt;STRONG&gt;It cannot share agent-subnet&lt;/STRONG&gt; (exclusive to one Foundry account) or pe-subnet (can't be delegated), and its delegation depends on the host: Container Apps → Microsoft.App/environments (a &lt;EM&gt;separate&lt;/EM&gt; environment from Foundry's), Container Instances → Microsoft.ContainerInstance/containerGroups, App Service / Functions with VNet integration → Microsoft.Web/serverFarms, AKS / plain VMs → no delegation.&lt;/P&gt;
&lt;H5&gt;&lt;STRONG&gt;Recommended APIM topology — Premium v2, PE for inbound + integration for outbound&lt;/STRONG&gt;&lt;/H5&gt;
&lt;P&gt;APIM has several supported networking modes, but for a production Foundry setup where you need to isolate &lt;STRONG&gt;both&lt;/STRONG&gt; the inbound gateway &lt;EM&gt;and&lt;/EM&gt; outbound calls to private backends, the pattern that gives you the cleanest topology is:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;SKU: API Management Premium v2.&lt;/STRONG&gt; Premium v2 gives you availability zones, higher throughput, workspaces, dedicated compute, and the highest scale ceiling — things you want on the production path for an AI Gateway sitting in front of Foundry. Standard v2 supports the same networking model, but Premium v2 is what you deploy when this API surface is a first-class production dependency.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Inbound = Private Endpoint on &lt;/STRONG&gt;&lt;STRONG&gt;pe-subnet&lt;/STRONG&gt;&lt;STRONG&gt;.&lt;/STRONG&gt; Create a private endpoint for APIM against the Microsoft.ApiManagement/service Gateway sub-resource. This registers into privatelink.azure-api.net automatically and gives you a private inbound IP without any subnet delegation. Because PE subnets can't be delegated anyway, this is exactly where APIM's inbound belongs — next to your other PEs.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Outbound = VNet integration into &lt;/STRONG&gt;&lt;STRONG&gt;apim-outbound-subnet&lt;/STRONG&gt;&lt;STRONG&gt;.&lt;/STRONG&gt; Enable Premium v2 &lt;A href="https://learn.microsoft.com/en-us/azure/api-management/integrate-vnet-outbound" target="_blank" rel="noopener"&gt;VNet integration&lt;/A&gt; so APIM's calls to your backends leave through a dedicated subnet delegated to Microsoft.Web/serverFarms. From here, APIM reaches Foundry, Cosmos, an internal HR API, etc. via their PEs — traffic never touches the internet.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Why the delegations matter&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Microsoft.App/environments&lt;/STRONG&gt; on the agent subnet formally hands the subnet over to the Container Apps managed environment fabric that Foundry's capability-host runs on. Delegation grants the platform permission to &lt;EM&gt;provision and manage its own infrastructure&lt;/EM&gt; inside the subnet on your behalf (NICs, load balancer, health probes, required routing policies) and makes the subnet &lt;STRONG&gt;exclusive&lt;/STRONG&gt; to that service — no PEs, no VMs, no other workloads can share it. Without the delegation, capabilityHosts PUT fails subnet validation.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Microsoft.Web/serverFarms&lt;/STRONG&gt; on the APIM outbound subnet is required for Premium v2 (or Standard v2) VNet integration. The subnet is dedicated — a single APIM instance owns it and it cannot be shared with any other Azure resource. Also make sure the Microsoft.Web resource provider is registered in the subscription.&lt;/LI&gt;
&lt;LI&gt;Delegations are &lt;STRONG&gt;not fungible&lt;/STRONG&gt;: you cannot repurpose the agent subnet as a PE subnet later, because a subnet cannot simultaneously host delegated services &lt;EM&gt;and&lt;/EM&gt; Private Endpoints. And per official Foundry guidance, &lt;STRONG&gt;outbound network injection cannot be changed after deployment&lt;/STRONG&gt; — pick the agent subnet carefully because moving it later means redeploying Foundry.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Agent subnet sizing.&lt;/STRONG&gt; The &lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/azure/ai-services/agents/how-to/virtual-networks" target="_blank" rel="noopener"&gt;Foundry Agent Service networking doc&lt;/A&gt; is explicit on this: &lt;STRONG&gt;the recommended size of the delegated agent subnet is &lt;/STRONG&gt;&lt;STRONG&gt;/24&lt;/STRONG&gt;&lt;STRONG&gt; (256 addresses)&lt;/STRONG&gt;, precisely because the subnet is delegated to Microsoft.App/environments and the Container Apps runtime consumes IPs as it scales out. &lt;STRONG&gt;/27 is the API‑enforced hard floor and is fine for smaller, non‑production deployments &lt;/STRONG&gt;— PoCs, dev/test, or low‑traffic internal agents where you know the scale ceiling. Treat `/27` as a lower bound the platform accepts, not a size to deploy production with.&lt;/P&gt;
&lt;P&gt;On top of that, you &lt;STRONG&gt;cannot resize a subnet in place&lt;/STRONG&gt; — if you run out, moving is destructive. Provision /24 from day one; it costs you nothing extra and removes an entire class of future scaling incidents.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;APIM outbound subnet sizing.&lt;/STRONG&gt; Premium v2 VNet integration requires a minimum of /27 and recommends &lt;STRONG&gt;/24&lt;/STRONG&gt; for scale-out headroom — same rationale, err on the generous side.&lt;/P&gt;
&lt;H4&gt;&lt;A class="lia-anchor" target="_blank" name="_Toc234004564"&gt;&lt;/A&gt;&lt;STRONG&gt;3. Hub-and-spoke with Azure Firewall — model the traffic before you write rules&lt;/STRONG&gt;&lt;/H4&gt;
&lt;P&gt;If you sit behind a centralized Azure Firewall with a UDR forcing 0.0.0.0/0 through it, every hostname the runtime touches must be in your application rule collection. Before deploying, it helps to model the traffic in two buckets:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;In-VNet, service-to-service traffic&lt;/STRONG&gt; — Foundry runtime → Cosmos / Storage / Search / your model endpoint / APIM. Because you're deploying with &lt;STRONG&gt;private endpoints&lt;/STRONG&gt; in front of every one of those services, this traffic is &lt;STRONG&gt;outbound to a private IP inside the VNet&lt;/STRONG&gt;, not outbound to a public FQDN. It also &lt;STRONG&gt;does not traverse the firewall by default&lt;/STRONG&gt; — the /32 system route Azure injects for each PE beats your 0.0.0.0/0 UDR, so PE traffic goes straight to the PE NIC. Your NSG rules should reflect that: allow agent-subnet → pe-subnet on 443, and you're done for the data plane. No firewall application rule needed for it.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Outbound to Microsoft-managed control-plane FQDNs&lt;/STRONG&gt; — Entra token acquisition, managed identity, container image pulls, evaluations telemetry, etc. This is what the firewall application rule collection is really for.&lt;/LI&gt;
&lt;/OL&gt;
&lt;H5&gt;&lt;STRONG&gt;Source addresses to whitelist on the firewall&lt;/STRONG&gt;&lt;/H5&gt;
&lt;UL&gt;
&lt;LI&gt;agent-subnet — the runtime originates almost every control-plane call from here.&lt;/LI&gt;
&lt;LI&gt;jumpbox-subnet — if you provisioned a dedicated jumpbox-subnet to reach the platform for `nslookup`, portal browsing, and troubleshooting.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H5&gt;&lt;STRONG&gt;FQDNs — start with the documented baseline&lt;/STRONG&gt;&lt;/H5&gt;
&lt;P&gt;The &lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/azure/foundry/how-to/configure-private-link#firewall-allowlisting" target="_blank" rel="noopener"&gt;official Foundry private-link doc&lt;/A&gt; publishes this minimum allow-list for Foundry with virtual network injection:&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="width: 100%; height: 416.285px; border-width: 1px;"&gt;&lt;thead&gt;&lt;tr style="height: 38.5714px;"&gt;&lt;td style="height: 38.5714px;"&gt;
&lt;P&gt;Scenario&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 38.5714px;"&gt;
&lt;P&gt;FQDNs / Service Tag&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 38.5714px;"&gt;
&lt;P&gt;Why&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr style="height: 122.571px;"&gt;&lt;td style="height: 122.571px;"&gt;
&lt;P&gt;&lt;STRONG&gt;Agents&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 122.571px;"&gt;
&lt;P&gt;*.identity.azure.net, login.microsoftonline.com, *.login.microsoftonline.com, *.login.microsoft.com (or the AzureActiveDirectory service tag)&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 122.571px;"&gt;
&lt;P&gt;Required for the Azure Container App delegation that hosts the agent runtime — Entra + managed identity&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height: 216.571px;"&gt;&lt;td style="height: 216.571px;"&gt;
&lt;P&gt;&lt;STRONG&gt;Evaluations &amp;amp; Traces&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 216.571px;"&gt;
&lt;P&gt;AzureMachineLearning service tag, settings.sdk.monitor.azure.com&lt;/P&gt;
&lt;/td&gt;&lt;td style="height: 216.571px;"&gt;
&lt;P&gt;Evaluators catalog + shipping results to Application Insights&lt;/P&gt;
&lt;P&gt;Prefer the service tag over a raw `*.blob.core.windows.net` wildcard — it scopes egress to just the Microsoft‑managed storage endpoints Foundry actually needs, without opening every blob account in Azure.&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;Start there. If your setup is &lt;EM&gt;only&lt;/EM&gt; Foundry + PEs + a firewall, that list is usually enough.&lt;/P&gt;
&lt;H5&gt;&lt;STRONG&gt;FQDNs — additions you'll typically need in practice&lt;/STRONG&gt;&lt;/H5&gt;
&lt;P&gt;If you're also running APIM (Standard v2 outbound integration), pulling container images, or using Application Insights end-to-end, expect to add:&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;thead&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;Category&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;FQDNs&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;When you need it&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Azure Resource Manager&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;management.azure.com, *.management.azure.com&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Runtime ARM calls (role assignment reads, resource metadata)&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Microsoft Graph&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;graph.microsoft.com&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Directory / user context in some agent scenarios&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Container image pulls&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;mcr.microsoft.com, *.data.mcr.microsoft.com, *.azurecr.io&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Cap-host pulls its runtime image&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;APIM internal telemetry&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;*.prod.warm.ingest.monitor.core.windows.net, *.prod.hot.ingest.monitor.core.windows.net, *.prod.microsoftmetrics.com, azureprofiler.trafficmanager.net&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Only if firewall Deny logs show APIM's outbound subnet trying to reach Geneva/monitoring endpoints — in most Premium v2 setups this stays on the Microsoft backbone and never hits the firewall&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Application Insights ingestion&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;*.in.applicationinsights.azure.com, *.monitor.azure.com&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;If your app or APIM sends telemetry to App Insights&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;Note : Wildcards are the pragmatic starting point; PEs on the premium SKUs are the hardening step for regulated / high‑sensitivity environments where a broad IP pool on the firewall is a compliance finding. Prefer premium SKUs with dedicated Private Endpoints over wide wildcards on the firewall. Several services on this list only expose public multi‑tenant endpoints on their lower tiers, which is why you end up whitelisting broad wildcards like `*.data.mcr.microsoft.com`, `*.monitor.azure.com`, or `*.in.applicationinsights.azure.com` — each one opens a large pool of shared Microsoft IPs to your egress. The premium tiers give you a way out:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Why &lt;/STRONG&gt;&lt;STRONG&gt;*.blob.core.windows.net/AzureMachineLearning Service Tag&lt;/STRONG&gt;&lt;STRONG&gt;&amp;nbsp;shows up even when you don't use blob storage:&lt;/STRONG&gt; several Microsoft-managed services (App Insights, Foundry evaluators, Container Apps image cache) round-trip through their own storage accounts. The official allow-list already includes it for Evaluations &amp;amp; Traces.&lt;/P&gt;
&lt;H5&gt;&lt;STRONG&gt;Design for iteration&lt;/STRONG&gt;&lt;/H5&gt;
&lt;P&gt;Enable Azure Firewall diagnostic logs from day one and target a Log Analytics workspace. You'll want to filter Deny events by source subnet + target FQDN to close any remaining gaps in your allow-list — but you'll be iterating on a &lt;STRONG&gt;short&lt;/STRONG&gt; delta, not building the list from scratch.&lt;/P&gt;
&lt;H4&gt;&lt;A class="lia-anchor" target="_blank" name="_Toc234004565"&gt;&lt;/A&gt;&lt;STRONG&gt;4. Private DNS — the highest-value decision to get right first&lt;/STRONG&gt;&lt;/H4&gt;
&lt;P&gt;More BYO-VNet Foundry incidents trace back to DNS than to any other single component — which is exactly why it's worth designing first. Two rules will save you most of them:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Rule 1: Never have duplicate Private DNS zones&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;If privatelink.blob.core.windows.net exists in &lt;STRONG&gt;both&lt;/STRONG&gt; your hub and your spoke, VNet resolution becomes non-deterministic — you'll intermittently resolve to the wrong private IP (or worse, to 0.0.0.0). Pick one home for each zone and delete duplicates.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Rule 2: In a hub-and-spoke, PDZs belong in the hub&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Create each of the seven privatelink.* zones &lt;STRONG&gt;once&lt;/STRONG&gt;, in the hub.&lt;/LI&gt;
&lt;LI&gt;Set every spoke VNet's DNS servers to the firewall private IP (Azure Firewall with &lt;STRONG&gt;DNS Proxy enabled&lt;/STRONG&gt;). Spoke query → firewall DNS proxy → Azure DNS (168.63.129.16) resolved in the hub context → hub-linked PDZ → returns the PE IP. No PDZ link on the spoke is needed for this to work.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;The seven zones Foundry Standard needs&lt;/STRONG&gt;: privatelink.services.ai.azure.com, privatelink.openai.azure.com, privatelink.cognitiveservices.azure.com,&amp;nbsp;privatelink.search.windows.net, privatelink.blob.core.windows.net, privatelink.documents.azure.com,&amp;nbsp;privatelink.azure-api.net&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Force traffic through the firewall&lt;/STRONG&gt;: VNet peering alone will&amp;nbsp;&lt;STRONG&gt;not&lt;/STRONG&gt; send spoke egress through the hub firewall — Azure routes prefer the peering directly. You need a &lt;STRONG&gt;UDR&lt;/STRONG&gt; on every spoke subnet with a 0.0.0.0/0 route pointing at the firewall private IP. Without the UDR, your FQDN allow-list is enforced on nothing.&lt;/P&gt;
&lt;H4&gt;&lt;A class="lia-anchor" target="_blank" name="_Toc234004566"&gt;&lt;/A&gt;&lt;STRONG&gt;5. Network Security Groups — the minimum rule set&lt;/STRONG&gt;&lt;/H4&gt;
&lt;P&gt;NSGs are the layer where a single missing outbound rule silently blocks the data plane — everything provisions cleanly, but nothing talks. Think of NSGs in the same two-bucket model from section 3 — service-to-service inside the VNet, and outbound control plane.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Allow outbound HTTPS (TCP 443)&lt;/STRONG&gt; from agent-subnet and apim-outbound-subnet to the &lt;STRONG&gt;pe-subnet&lt;/STRONG&gt;&lt;STRONG&gt; CIDR&lt;/STRONG&gt; (or, if you prefer, to the relevant service tags — AzureCosmosDB, Storage.&amp;lt;region&amp;gt;, AzureCognitiveSearch, AzureAD). This covers the runtime's calls to Cosmos, Storage, Search, and the Foundry / model endpoints via their private endpoints.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Allow APIM's outbound dependencies&lt;/STRONG&gt; — at minimum outbound TCP 443 to the Storage and AzureKeyVault service tags from apim-outbound-subnet, per the &lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/azure/api-management/integrate-vnet-outbound#network-security-group" target="_blank" rel="noopener"&gt;APIM outbound integration NSG reference&lt;/A&gt;. Missing these is the classic "APIM went 'Failed' in the portal" symptom.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Allow RDP/SSH from the firewall subnet&lt;/STRONG&gt; (not from the internet) on the jumpbox-subnet, and use firewall DNAT to expose it — no public IPs on VMs.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Default-deny outbound to internet&lt;/STRONG&gt; on the agent, PE, and APIM subnets; let only the firewall route escape via UDR. This ensures every FQDN call goes through your allow-list, not around it.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H2&gt;&lt;A class="lia-anchor" target="_blank" name="_Toc234004567"&gt;&lt;/A&gt;&lt;/H2&gt;
&lt;H4&gt;&lt;A class="lia-anchor" target="_blank" name="_Toc234004568"&gt;&lt;/A&gt;&lt;STRONG&gt;6. Validate before you write a single line of agent code&lt;/STRONG&gt;&lt;/H4&gt;
&lt;P&gt;Before you call agents.create() from your app, prove the network is right. From your jumpbox:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;1. DNS resolves privately from the spoke&lt;/STRONG&gt;&lt;BR /&gt;nslookup &amp;lt;foundry-account&amp;gt;.services.ai.azure.com&lt;BR /&gt;nslookup &amp;lt;search-name&amp;gt;.search.windows.net&lt;BR /&gt;nslookup &amp;lt;cosmos-name&amp;gt;.documents.azure.com&lt;BR /&gt;nslookup &amp;lt;apim-name&amp;gt;.azure-api.net&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Each should return a 10.x / 192.168.x IP (your PE), not a public IP.&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;If the jumpbox resolves privately but the agent subnet does not, your PDZ VNet links or your UDR are wrong. The agent subnet must resolve the same private IPs as the jumpbox — otherwise the runtime will egress to public IPs and get 403'd by your PE-only firewall on Cosmos.&lt;/P&gt;
&lt;P&gt;The same source-IP principle applies to firewall rules: whatever subnets you validated from must be listed as sourceAddresses in the application rule collection, alongside every FQDN they need to reach.&lt;/P&gt;
&lt;H4&gt;&lt;A class="lia-anchor" target="_blank" name="_Toc234004569"&gt;&lt;/A&gt;&lt;STRONG&gt;7. A pre-deploy checklist&lt;/STRONG&gt;&lt;/H4&gt;
&lt;P&gt;Walk this list &lt;EM&gt;before&lt;/EM&gt; you kick off the deployment — every item is cheaper to fix now than after capabilityHosts PUT is in flight.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Agent subnet delegated to&amp;nbsp;Microsoft.App/environments — sized /24 per Microsoft's official recommendation (/27 is the API-enforced hard floor, not a target).&lt;/LI&gt;
&lt;LI&gt;Decided&amp;nbsp;whether agent tools run behind the VNet — and picked the matching template (standard vs. tools-behind-VNet) accordingly.&lt;/LI&gt;
&lt;LI&gt;APIM inbound is via a&amp;nbsp;Private Endpoint on pe-subnet and APIM outbound is via VNet integration into a dedicated apim-outbound-subnet delegated to Microsoft.Web/serverFarms, sized /24 (min /27).&lt;/LI&gt;
&lt;LI&gt;The privatelink.* PDZs (including privatelink.azure-api.net) exist&amp;nbsp;once (in the hub, if hub-and-spoke) and are linked to the hub VNet only; spokes resolve them via the firewall DNS proxy.&lt;/LI&gt;
&lt;LI&gt;Spoke VNet DNS =&amp;nbsp;firewall private IP; firewall policy has DNS proxy enabled.&lt;/LI&gt;
&lt;LI&gt;A UDR on every spoke subnet forces 0.0.0.0/0 → firewall.&lt;/LI&gt;
&lt;LI&gt;Firewall application rules include the documented Foundry baseline (§3) plus additions for your extras (container pulls, App Insights), with the agent and jumpbox subnets as source addresses. (Only add apim-outbound-subnet if Deny logs show traffic from it.)&lt;/LI&gt;
&lt;LI&gt;NSGs allow outbound 443 from agent + APIM outbound subnets to the PE subnet CIDR (or relevant service tags), and APIM's Storage / AzureKeyVault outbound rules per the APIM docs.&lt;/LI&gt;
&lt;LI&gt;nslookup from both jumpbox and agent subnet returns private IPs for Foundry, Cosmos, Storage, Search, APIM.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H4&gt;&lt;A class="lia-anchor" target="_blank" name="_Toc234004570"&gt;&lt;/A&gt;&lt;STRONG&gt;Closing thought — decide first, deploy second&lt;/STRONG&gt;&lt;/H4&gt;
&lt;P&gt;Foundry Standard on a BYO VNet isn't harder than any other network-isolated Azure workload. It's just the intersection of five product surfaces — Foundry, APIM, Cosmos, Search, and Storage — each with its own private-networking quirks. What makes it feel hard is deploying first and discovering the constraints second.&lt;/P&gt;
&lt;P&gt;Reverse that order and it's straightforward. Before you run a single template:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Lock the &lt;STRONG&gt;subnet layout and delegations&lt;/STRONG&gt; — the agent subnet is irreversible, so size it /24 from day one.&lt;/LI&gt;
&lt;LI&gt;Design &lt;STRONG&gt;Private DNS once, in the hub&lt;/STRONG&gt; , and force spoke egress through the firewall with UDRs.&lt;/LI&gt;
&lt;LI&gt;Assemble the &lt;STRONG&gt;firewall allow-list and NSG rules&lt;/STRONG&gt; as a change request your network team can approve in one pass.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Validate DNS from both the jumpbox and the agent subnet&lt;/STRONG&gt; before any agent code exists.&lt;/LI&gt;
&lt;LI&gt;Run the whole thing from the &lt;STRONG&gt;pre-deploy checklist&lt;/STRONG&gt; — that list is the deliverable; everything above is the reasoning behind it.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Get those right and the template is a formality. Get them wrong and you're redeploying. That's the whole reason to think network-first.&lt;/P&gt;
&lt;H4&gt;&lt;A class="lia-anchor" target="_blank" name="_Toc234004571"&gt;&lt;/A&gt;&lt;STRONG&gt;Where to go next&lt;/STRONG&gt;&lt;/H4&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Official Microsoft sample templates (Bicep + Terraform)&lt;/STRONG&gt; for the exact setup described here — the microsoft-foundry/foundry-samples repo, infrastructure/ folder: &lt;A class="lia-external-url" href="https://github.com/microsoft-foundry/foundry-samples/tree/main/infrastructure" target="_blank" rel="noopener"&gt;https://github.com/microsoft-foundry/foundry-samples/tree/main/infrastructure&lt;/A&gt;
&lt;UL&gt;
&lt;LI&gt;15-private-network-standard-agent-setup — Standard Agent with end-to-end network isolation (tools&amp;nbsp;&lt;STRONG&gt;not&lt;/STRONG&gt; behind the VNet).&lt;/LI&gt;
&lt;LI&gt;16-private-network-standard-agent-apim-setup — the APIM-fronted topology.&lt;/LI&gt;
&lt;LI&gt;19-private-network-agent-tools — use this when agent&amp;nbsp;&lt;STRONG&gt;tools&lt;/STRONG&gt; must also stay inside the VNet.&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Foundry Agent Service limits, supported tools, regions, and troubleshooting&lt;/STRONG&gt; — what's allowed, what isn't, which tools and models are supported, and how to handle limit/quota errors end to end: &lt;A href="https://learn.microsoft.com/en-us/azure/foundry/agents/concepts/limits-quotas-regions" target="_blank" rel="noopener"&gt;https://learn.microsoft.com/en-us/azure/foundry/agents/concepts/limits-quotas-regions&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Set up private networking for Foundry Agent Service&lt;/STRONG&gt; (Bicep / Terraform / azd walkthrough) and the companion &lt;EM&gt;Deep dive into Foundry Agent Service networking&lt;/EM&gt; for subnet sizing and IP allocation: &lt;A href="https://learn.microsoft.com/en-us/azure/foundry/how-to/configure-private-link?view=foundry-classic" target="_blank" rel="noopener"&gt;How to configure network isolation for Microsoft Foundry - Microsoft Foundry | Microsoft Learn&lt;/A&gt;, &lt;A href="https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/virtual-networks" target="_blank" rel="noopener"&gt;https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/virtual-networks&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;</description>
      <pubDate>Wed, 22 Jul 2026 16:00:00 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/design-the-network-before-you-deploy-best-practices-for/ba-p/4537860</guid>
      <dc:creator>Priya_Kedia</dc:creator>
      <dc:date>2026-07-22T16:00:00Z</dc:date>
    </item>
    <item>
      <title>Choosing the Right Starting Point for Enterprise AI Agents with Copilot Studio and Microsoft Foundry</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/choosing-the-right-starting-point-for-enterprise-ai-agents-with/ba-p/4535024</link>
      <description>&lt;H2&gt;Choosing the Right Starting Point for Enterprise AI Agents with Copilot Studio and Microsoft Foundry&lt;/H2&gt;
&lt;P&gt;Enterprise AI conversations often begin with a familiar question: &lt;STRONG&gt;Should this agent be built with Microsoft Copilot Studio or Microsoft Foundry?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;While the question is common, it can be misleading if it frames the platforms as competing choices. In practice, Copilot Studio and Microsoft Foundry serve different builders, development styles, and operating models. The more useful question is:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Which starting point best fits the team building the agent today while providing a path to scale as requirements evolve?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Some teams need a guided, low-code environment that accelerates delivery. Others need a code-first platform with greater control over architecture, deployment, security, and operations. The right choice depends less on the agent itself and more on who is building it, how it will be managed, and what level of control is required.&lt;/P&gt;
&lt;P&gt;This article provides a practical framework for evaluating &lt;STRONG&gt;Microsoft Copilot Studio&lt;/STRONG&gt; and &lt;STRONG&gt;Microsoft Foundry&lt;/STRONG&gt; when planning enterprise AI agents.&lt;/P&gt;
&lt;H2&gt;Start with the team and operating model&lt;/H2&gt;
&lt;P&gt;Before selecting a platform, architects should answer three questions:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;Who is building and maintaining the agent?&lt;/STRONG&gt;&lt;BR /&gt;Business users, IT admins, pro-makers, developers, architects, and AI engineers have different requirements and tools.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;How does the team work today?&lt;/STRONG&gt;&lt;BR /&gt;Do they prefer guided authoring experiences or software engineering practices such as source control, CI/CD, testing, and release management?&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;What level of control is required?&lt;/STRONG&gt;&lt;BR /&gt;Does the solution benefit from a managed experience, or does it require ownership of runtime, networking, telemetry, and deployment?&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;Agent classification remains useful:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;Knowledge agent&lt;/STRONG&gt;&lt;BR /&gt;Helps users find, summarize, and reason over trusted information.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Workflow agent&lt;/STRONG&gt;&lt;BR /&gt;Helps users complete business processes such as approvals, ticket creation, or status tracking.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Autonomous or multi-agent system&lt;/STRONG&gt;&lt;BR /&gt;Coordinates multiple tools, systems, models, or agents to complete more complex outcomes.&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;However, platform selection should consider more than complexity. Builder persona, authoring model, governance requirements, and operational ownership often have a bigger impact on long-term success.&lt;/P&gt;
&lt;H2&gt;Where Copilot Studio is a strong starting point&lt;/H2&gt;
&lt;P&gt;&lt;STRONG&gt;Microsoft Copilot Studio&lt;/STRONG&gt; is a strong starting point when organizations need to create agents quickly through a guided, low-code experience.&lt;/P&gt;
&lt;P&gt;It is especially useful for business users, IT admins, and pro-makers who want to build and improve agents without directly managing infrastructure.&lt;/P&gt;
&lt;P&gt;Choose Copilot Studio when the scenario requires:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Business-led or IT-led ownership&lt;/LI&gt;
&lt;LI&gt;Low-code or guided authoring&lt;/LI&gt;
&lt;LI&gt;Rapid time to value&lt;/LI&gt;
&lt;LI&gt;Microsoft 365 and Teams experiences&lt;/LI&gt;
&lt;LI&gt;Business process automation&lt;/LI&gt;
&lt;LI&gt;Managed deployment and operations&lt;/LI&gt;
&lt;LI&gt;Ongoing iteration by business stakeholders&lt;/LI&gt;
&lt;LI&gt;Minimal dependence on software engineering resources&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Typical examples include HR assistants, onboarding agents, policy assistants, employee self-service agents, and departmental workflow solutions.&lt;/P&gt;
&lt;H2&gt;Where Microsoft Foundry is a strong starting point&lt;/H2&gt;
&lt;P&gt;&lt;STRONG&gt;Microsoft Foundry&lt;/STRONG&gt; is a strong starting point when organizations need a code-first, Azure-native environment for building, deploying, and governing AI applications and agents.&lt;/P&gt;
&lt;P&gt;Foundry is especially relevant for developers, architects, and AI engineers who build agents as software products and require deeper ownership of architecture, deployment, evaluation, and operations.&lt;/P&gt;
&lt;P&gt;Choose Microsoft Foundry when the scenario requires:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Developer-led or architecture-led ownership&lt;/LI&gt;
&lt;LI&gt;Code-first development&lt;/LI&gt;
&lt;LI&gt;Custom orchestration and integrations&lt;/LI&gt;
&lt;LI&gt;Advanced model selection and lifecycle management&lt;/LI&gt;
&lt;LI&gt;Multi-agent or long-running workflows&lt;/LI&gt;
&lt;LI&gt;Advanced evaluation, tracing, and observability&lt;/LI&gt;
&lt;LI&gt;GitHub, Visual Studio Code, and DevOps integration&lt;/LI&gt;
&lt;LI&gt;Customer-controlled Azure environments&lt;/LI&gt;
&lt;LI&gt;Private networking and secure enterprise boundaries&lt;/LI&gt;
&lt;LI&gt;Data residency, compliance, and operational governance requirements&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;For teams that already build software through repositories, pull requests, automated testing, and deployment pipelines, Foundry is often the most natural starting point.&lt;/P&gt;
&lt;H2&gt;Copilot Studio and Foundry together&lt;/H2&gt;
&lt;P&gt;Most organizations eventually use both platforms.&lt;/P&gt;
&lt;P&gt;A common pattern is using Copilot Studio to provide a business-facing experience while Foundry powers custom orchestration, advanced reasoning, enterprise integrations, evaluation, or operational requirements.&lt;/P&gt;
&lt;P&gt;Rather than treating platform selection as a one-time decision, organizations can start where a team moves fastest today and expand as requirements mature.&lt;/P&gt;
&lt;H2&gt;Decision framework: Choose the right starting point&lt;/H2&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Decision Factor&lt;/th&gt;&lt;th&gt;Copilot Studio&lt;/th&gt;&lt;th&gt;Microsoft Foundry&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Primary builder&lt;/td&gt;&lt;td&gt;Business users, IT admins, pro-makers&lt;/td&gt;&lt;td&gt;Developers, architects, AI engineers&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Authoring model&lt;/td&gt;&lt;td&gt;Guided, low-code experiences&lt;/td&gt;&lt;td&gt;Code-first development&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Runtime ownership&lt;/td&gt;&lt;td&gt;Managed SaaS experience&lt;/td&gt;&lt;td&gt;Customer-controlled Azure resources&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Networking requirements&lt;/td&gt;&lt;td&gt;Managed environment&lt;/td&gt;&lt;td&gt;Private networking and secure boundaries&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Development lifecycle&lt;/td&gt;&lt;td&gt;Configuration-driven&lt;/td&gt;&lt;td&gt;Source control, CI/CD, automated testing&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Customization&lt;/td&gt;&lt;td&gt;Standard business workflows&lt;/td&gt;&lt;td&gt;Custom orchestration and integrations&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Observability&lt;/td&gt;&lt;td&gt;Basic monitoring needs&lt;/td&gt;&lt;td&gt;Advanced tracing and evaluation&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Best fit&lt;/td&gt;&lt;td&gt;Business-facing agents and employee experiences&lt;/td&gt;&lt;td&gt;Developer-led AI applications and advanced agent systems&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;H2&gt;Practical scenarios&lt;/H2&gt;
&lt;H3&gt;Scenario 1: HR policy assistant&lt;/H3&gt;
&lt;P&gt;An HR team needs an internal agent that answers questions about policies, benefits, onboarding, and leave processes using SharePoint content and internal documentation.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Recommended starting point: Copilot Studio&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;The ownership model is business-led, content changes frequently, and rapid deployment is valuable.&lt;/P&gt;
&lt;H3&gt;Scenario 2: IT helpdesk triage agent&lt;/H3&gt;
&lt;P&gt;An IT team needs an agent to answer support questions, create tickets, check ticket status, and escalate unresolved issues.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Recommended starting point: Copilot Studio or hybrid&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Copilot Studio works well for conversational experiences and workflow automation. If requirements expand into custom orchestration, advanced retrieval, or engineering-owned services, Foundry can extend the solution.&lt;/P&gt;
&lt;H3&gt;Scenario 3: Enterprise architecture advisor&lt;/H3&gt;
&lt;P&gt;An architecture team wants an agent that reviews requirements, recommends architecture patterns, generates design artifacts, and identifies risks.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Recommended starting point: Microsoft Foundry&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;This scenario requires structured outputs, reasoning, orchestration, evaluation, and integration into engineering workflows.&lt;/P&gt;
&lt;H3&gt;Scenario 4: Multi-agent claims processing system&lt;/H3&gt;
&lt;P&gt;An insurance organization wants to automate document understanding, fraud assessment, policy validation, customer communication, and escalation processes.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Recommended starting point: Microsoft Foundry, with Copilot Studio where user-facing experiences are required&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;The solution involves orchestration, monitoring, governance, and multiple interacting components that benefit from a code-first platform.&lt;/P&gt;
&lt;H2&gt;Interoperability and governance at scale&lt;/H2&gt;
&lt;P&gt;Enterprise AI programs rarely operate within a single platform. Agents need to interact with tools, workflows, business systems, and other agents across the organization.&lt;/P&gt;
&lt;P&gt;Architects should plan for interoperability across four layers:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Tools and connectors&lt;/STRONG&gt; – APIs, plugins, and enterprise systems.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Agents&lt;/STRONG&gt; – collaboration between specialized agents.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Workflows&lt;/STRONG&gt; – integration with business processes and automation.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Channels&lt;/STRONG&gt; – Microsoft 365, Teams, Copilot experiences, and custom applications.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Governance is equally important. Organizations should define ownership, identity controls, data boundaries, evaluation processes, monitoring, and lifecycle management before scaling agent adoption.&lt;/P&gt;
&lt;P&gt;Agent 365 and related governance capabilities can help organizations maintain visibility and oversight across agents built using Copilot Studio, Microsoft Foundry, and other Microsoft AI experiences.&lt;/P&gt;
&lt;H2&gt;Common mistakes to avoid&lt;/H2&gt;
&lt;H3&gt;Mistake 1: Treating Copilot Studio and Foundry as competing platforms&lt;/H3&gt;
&lt;P&gt;Most organizations use both over time. The key question is not which product wins, but which starting point best fits the team, operating model, and governance requirements.&lt;/P&gt;
&lt;H3&gt;Mistake 2: Choosing only based on agent complexity&lt;/H3&gt;
&lt;P&gt;Complexity matters, but it should not be the only factor. Builder persona, ownership model, deployment approach, and operational control requirements often have a greater impact on the platform decision.&lt;/P&gt;
&lt;H3&gt;Mistake 3: Delaying evaluation and governance&lt;/H3&gt;
&lt;P&gt;Enterprise AI agents require evaluation, monitoring, security, and governance from the beginning. Defining quality, safety, reliability, and operational metrics early reduces production risk.&lt;/P&gt;
&lt;LI-SPOILER label="Lessons Learned"&gt;
&lt;P&gt;Teams often begin by asking whether Copilot Studio or Microsoft Foundry is the better product. In practice, successful organizations focus less on platform competition and more on matching the right platform to the right team. Copilot Studio accelerates business-led experiences, while Microsoft Foundry enables developer-led AI engineering. The strongest strategy is creating a framework that allows both to evolve together as requirements mature.&lt;/P&gt;
&lt;/LI-SPOILER&gt;
&lt;H2&gt;Conclusion&lt;/H2&gt;
&lt;P&gt;Copilot Studio and Microsoft Foundry are complementary platforms that support different builder personas, development styles, and operating models.&lt;/P&gt;
&lt;P&gt;Copilot Studio is a strong starting point for business-led teams that need a managed, low-code experience and rapid time to value. Microsoft Foundry is a strong starting point for developers and architects who require code-first development, secure enterprise boundaries, advanced orchestration, and greater operational control.&lt;/P&gt;
&lt;P&gt;Rather than standardizing on a single platform, organizations should adopt a decision framework that helps each team start in the right place and evolve as requirements mature.&lt;/P&gt;
&lt;H2&gt;Next steps&lt;/H2&gt;
&lt;P&gt;If you are planning an enterprise AI initiative:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;Identify the primary builder persona&lt;/STRONG&gt; — business user, IT admin, pro-maker, developer, architect, or AI engineer.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Define the operating model&lt;/STRONG&gt; — guided authoring, low-code configuration, code-first engineering, or hybrid delivery.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Assess security, control, and governance requirements&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Plan evaluation and monitoring before production deployment&lt;/STRONG&gt;.&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;Then choose the starting point that best aligns with the team’s needs today while preserving flexibility to expand as the organization’s AI estate grows.&lt;/P&gt;</description>
      <pubDate>Tue, 21 Jul 2026 18:00:00 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/choosing-the-right-starting-point-for-enterprise-ai-agents-with/ba-p/4535024</guid>
      <dc:creator>PavanKalyanChilakalapalli</dc:creator>
      <dc:date>2026-07-21T18:00:00Z</dc:date>
    </item>
    <item>
      <title>Agents can learn with Memory in Microsoft Foundry Agent Service</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/agents-can-learn-with-memory-in-microsoft-foundry-agent-service/ba-p/4535431</link>
      <description>&lt;H3&gt;Recurring Failure&lt;/H3&gt;
&lt;P&gt;We are entrusting AI agents with an increasing range of tasks, from preparing briefs to scheduling meetings, and from filing tax returns to building and debugging production systems. While their capabilities continue to improve rapidly, the experience remains frustrating in a familiar way: the agent keeps making the same mistakes.&lt;/P&gt;
&lt;P&gt;A simple example: your agent runs python main.py and hits a ModuleNotFoundError because the project uses uv for dependency management. After several failed attempts, it discovers uv run python main.py works. But next week? Same error, same wasted cycles. With Procedural Memory, the agent learns once and remembers: "In uv-managed projects, always use uv run.&lt;/P&gt;
&lt;P&gt;This behavior is not an edge case. Agents rediscover workflows, repeat errors, and waste tokens and time because they do not learn from past experience.&lt;/P&gt;
&lt;H3&gt;Limits of Existing Memory&lt;/H3&gt;
&lt;P&gt;Existing memory systems persist information such as facts, user preferences, and conversation history. But it is not sufficient to distill what the agent should do in a given situation. As a result, agents struggle to execute workflows reliably, follow implicit constraints, or avoid repeating failures. The missing piece is not more information—it is procedural knowledge.&lt;/P&gt;
&lt;P&gt;Below is an example of learnings that a shopping assistant agent has acquired from past trajectories. It has two fields: Context and Action. Context defines the triggering condition when the learning is applicable, and Action specifies the action pattern that should be followed. When the agent later encounters a similar situation, this learning allows it to filter out unavailable options, reduce distraction, and prevent erroneous actions.&lt;/P&gt;
&lt;P&gt;{&lt;/P&gt;
&lt;P&gt;&amp;nbsp; "Context": "when a user wants to exchange a product for a different variant",&lt;/P&gt;
&lt;P&gt;&amp;nbsp; "Action":&amp;nbsp; "check variants for availability and only present variants that are currently available",&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;H3&gt;Uneven Learning Signal&lt;/H3&gt;
&lt;P&gt;Not all experiences are equally valuable for learning. As foundation models become more capable, many successful patterns simply reflect existing knowledge, while failures and near-failures are a richer source of improvement.&lt;/P&gt;
&lt;P&gt;These high-signal cases expose weaknesses in decision-making, such as incorrect assumptions, missed validations, implicit constraint violations, or premature termination. Prioritizing such experiences helps improve agent reliability rather than merely reinforcing behaviors the model already performs well.&lt;/P&gt;
&lt;H3&gt;Learning Without Labels&lt;/H3&gt;
&lt;P&gt;&lt;STRONG data-olk-copy-source="MessageBody"&gt;The research gap:&lt;/STRONG&gt;&amp;nbsp;Research has shown that agent skills can be distilled from past trajectories. However, bringing these approaches into production remains challenging.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Why production is different:&lt;/STRONG&gt; Unlike benchmarks with labeled trajectories, real-world learning signals are buried in action sequences, tool outputs, and user feedback—noisy, incomplete, and often unreliable.&lt;/P&gt;
&lt;H3&gt;Toward Procedural Memory&lt;/H3&gt;
&lt;P&gt;&lt;SPAN data-olk-copy-source="MessageBody"&gt;Memory in Foundry Agent Service (&lt;A href="https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/memory-usage?pivots=python" target="_blank"&gt;Create and Use Memory - Microsoft Foundry | Microsoft Learn&lt;/A&gt; - explore the documentation to get started) now supports procedural memory. It&lt;/SPAN&gt;&amp;nbsp;captures learning signals using LLM-as-a-judge, produces valuable and actionable learnings, and stores them in a database. When an agent comes across tasks that are similar to the context of a learning, the learning gets retrieved and injected into the working context of the agent, which guides the agent to perform the task more efficiently, reliably and accurately.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;img /&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;We conduct systematic analysis on &lt;A href="https://github.com/microsoft/STATE-Bench" target="_blank" rel="noopener"&gt;microsoft/STATE-Bench: Benchmark AI Agents on Enterprise Workflows&lt;/A&gt; (&lt;SPAN data-olk-copy-source="MessageBody"&gt;enterprise workflow tasks like customer support. See &lt;A class="lia-external-url" href="https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fopensource.microsoft.com%2Fblog%2F2026%2F05%2F19%2Fintroducing-state-bench-a-benchmark-for-ai-agent-memory%2F&amp;amp;data=05%7C02%7Cjianantang%40microsoft.com%7C3f956ddbbd90402bb9b908dee164f585%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C639196020896316029%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&amp;amp;sdata=kpjpD6s8aUXmqhttps://opensource.microsoft.com/blog/2026/05/19/introducing-state-bench-a-benchmark-for-ai-agent-memory/" data-auth="NotApplicable" data-linkindex="0" data-ogsc="" target="_blank"&gt;Introducing STATE-Bench: A benchmark for AI agent memory | Microsoft Open Source Blog&lt;/A&gt; for more information.)&amp;nbsp;&lt;/SPAN&gt;and &lt;A href="https://github.com/sierra-research/tau2-bench" target="_blank" rel="noopener"&gt;sierra-research/tau2-bench: τ-Bench: A Benchmark for Tool-Agent-User Interaction in Real-World Domains (&lt;SPAN data-olk-copy-source="MessageBody"&gt;tool-agent-user interactions in domains like retail and airline support)&lt;/SPAN&gt;&lt;/A&gt;. Results show &lt;SPAN data-olk-copy-source="MessageBody"&gt;consistent improvements across benchmarks.&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;thead&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;Benchmark&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Metric&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Without PM&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;With PM&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Δ&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;STATE-Bench&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Pass¹&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;53.3%&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;58.3%&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;+5.0%&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;STATE-Bench&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Pass⁵&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;32.7%&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;37.3%&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;+4.6%&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;Tau-Bench&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Pass¹&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;75.1%&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;79.8%&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;+4.7%&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;Tau-Bench&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Pass⁵&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;49.1%&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;55.4%&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;+6.3%&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;col style="width: 20.00%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;PM stands for procedural memory.&lt;/LI&gt;
&lt;LI&gt;Pass¹: The average success rate across tasks, where each task is attempted up to 5 times. It measures best-effort capability — can the agent eventually solve the task?&lt;/LI&gt;
&lt;LI&gt;Pass⁵: The percentage of tasks that succeed consistently across all 5 attempts. It measures stability and reliability — can the agent solve the task consistently?&lt;/LI&gt;
&lt;/UL&gt;
&lt;H3&gt;Future Directions&lt;/H3&gt;
&lt;OL&gt;
&lt;LI&gt;Learning from Population-Level Patterns&lt;/LI&gt;
&lt;/OL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;Individual trajectories are often noisy and unreliable. By aggregating and analyzing similar trajectories, systems can identify consistently effective behaviors and uncover recurring failure modes, enabling more robust and generalizable learning.&lt;/P&gt;
&lt;OL start="2"&gt;
&lt;LI&gt;Memory Promotion, Demotion, and Continuous Feedback&lt;/LI&gt;
&lt;/OL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;Procedural memories should evolve with changing environments rather than remain static. Continuous feedback can promote useful memories, demote outdated ones, and keep the memory base aligned with current workflows and user needs.&lt;/P&gt;
&lt;OL start="3"&gt;
&lt;LI&gt;Procedural Memory Consolidation&lt;/LI&gt;
&lt;/OL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;As memories accumulate, redundancy and fragmentation can degrade retrieval quality. Consolidating similar memories into higher-level abstractions reduces noise and transforms accumulated experiences into reusable behavioral knowledge.&lt;/P&gt;
&lt;P data-olk-copy-source="MessageBody"&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3 data-olk-copy-source="MessageBody"&gt;Get Started with Foundry Memory&lt;/H3&gt;
&lt;P&gt;Ready to give your agents persistent procedural memory?&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Try it now:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;- &lt;A href="https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/memory-usage?pivots=python" target="_blank" rel="noopener"&gt;Create and Use Memory - Microsoft Foundry | Microsoft Learn&lt;/A&gt; Get started with Foundry Memory documentation&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;-&amp;nbsp;&lt;A href="https://learn.microsoft.com/en-us/python/api/azure-ai-projects/azure.ai.projects.operations.betamemorystoresoperations?view=azure-python-preview" target="_blank" rel="noopener"&gt;azure.ai.projects.operations.BetaMemoryStoresOperations class | Microsoft Learn&lt;/A&gt; Explore the Foundry Memory API reference.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Go deeper:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;- &lt;A href="https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2FSTATE-Bench&amp;amp;data=05%7C02%7Cjianantang%40microsoft.com%7C87d9224f21df499177ea08deddee2fc4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C639192212232805094%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&amp;amp;sdata=kl4eSxXw7HBYsWn49ScbyujZEBc8AxIDXy5X4cBcKCo%3D&amp;amp;reserved=0" target="_blank" rel="noopener" data-auth="NotApplicable" data-linkindex="2" data-ogsc=""&gt;Browse the STATE-Bench repository&lt;/A&gt; to test your own agents.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Join the conversation:&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;- Keep the conversation going in&amp;nbsp;&lt;SPAN data-ogsc="rgb(17, 94, 163)"&gt;&lt;A class="lia-external-url" href="https://github.com/orgs/microsoft-foundry/discussions" data-auth="NotApplicable" data-linkindex="1" data-ogsc="rgb(17, 94, 163)" target="_blank"&gt;Microsoft Foundry on GitHub&amp;nbsp;&lt;/A&gt;&lt;/SPAN&gt;and&amp;nbsp;&lt;SPAN data-ogsc="rgb(17, 94, 163)"&gt;&lt;A class="lia-external-url" href="https://discord.gg/microsoftfoundry" data-auth="NotApplicable" data-linkindex="2" data-ogsc="rgb(17, 94, 163)" target="_blank"&gt;Discord Channel&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;- Follow [&lt;A href="https://ai.azure.com/home" target="_blank" rel="noopener"&gt;Microsoft Foundry&lt;/A&gt;]&lt;SPAN data-olk-copy-source="MessageBody"&gt;&amp;nbsp;@MicrosoftFoundry for updates on Foundry Memory GA&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;Have questions? Drop them in the comments below—we'd love to hear how you're thinking about agent memory in your workflows.'&lt;/P&gt;</description>
      <pubDate>Thu, 16 Jul 2026 16:00:00 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/agents-can-learn-with-memory-in-microsoft-foundry-agent-service/ba-p/4535431</guid>
      <dc:creator>jianant</dc:creator>
      <dc:date>2026-07-16T16:00:00Z</dc:date>
    </item>
    <item>
      <title>Choose the right speech and voice model</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/choose-the-right-speech-and-voice-model/ba-p/4533856</link>
      <description>&lt;H1 data-line="0"&gt;Choose the right speech and voice model in Microsoft Foundry&lt;/H1&gt;
&lt;P data-line="2"&gt;The practical approach to selecting the right model is simple: do not ask which speech model is best. Ask what the speech system must guarantee. Once you know whether the job is conversation, translation, transcription, diarization, synthesis, or managed voice-agent orchestration, the model choice becomes much clearer.&lt;/P&gt;
&lt;P data-line="4"&gt;Choosing the wrong speech model usually does not fail in a benchmark. It fails in production: a customer interrupts and the agent keeps talking, a meeting transcript has no speaker labels, a translation workflow adds too much delay, or a text-to-speech pipeline sounds good but cannot use the voice your product needs.&lt;/P&gt;
&lt;P data-line="6"&gt;Microsoft Foundry now gives builders several speech and voice paths across Azure OpenAI, Voice Live API, Azure Speech in Foundry Tools, and Microsoft AI (MAI) speech models. This guide helps you choose the right surface for the job before you commit to region, quota, pricing, or architecture assumptions.&lt;/P&gt;
&lt;H2 data-line="8"&gt;TL;DR: pick by job, not by model name&lt;/H2&gt;
&lt;UL data-line="10"&gt;
&lt;LI data-line="10"&gt;Use&amp;nbsp;&lt;STRONG&gt;Azure OpenAI Realtime API&lt;/STRONG&gt;&amp;nbsp;when you want direct, model-native speech-to-speech control over WebSocket, WebRTC, or SIP.&lt;/LI&gt;
&lt;LI data-line="11"&gt;Use&amp;nbsp;&lt;STRONG&gt;Voice Live API&lt;/STRONG&gt;&amp;nbsp;when you want a managed voice-agent stack with speech recognition, model reasoning, text-to-speech, turn detection, interruption handling, voices, tools, and optional avatars.&lt;/LI&gt;
&lt;LI data-line="12"&gt;Use&amp;nbsp;&lt;STRONG&gt;Azure Speech realtime or batch speech-to-text (STT)&lt;/STRONG&gt;&amp;nbsp;when the transcript is the artifact of record.&lt;/LI&gt;
&lt;LI data-line="13"&gt;Use&amp;nbsp;&lt;STRONG&gt;a diarize or Azure Speech batch&lt;/STRONG&gt;&amp;nbsp;when speaker labels matter (Who said what).&lt;/LI&gt;
&lt;LI data-line="14"&gt;Use&amp;nbsp;&lt;STRONG&gt;Azure Speech TTS, Custom Neural Voice,&amp;nbsp;gpt-4o-mini-tts, or&amp;nbsp;MAI-Voice-2&lt;/STRONG&gt;&amp;nbsp;when voice quality, identity, language coverage, or long-form narration matters.&lt;/LI&gt;
&lt;LI data-line="15"&gt;Use&amp;nbsp;&lt;STRONG&gt;mai-transcribe-1.5&lt;/STRONG&gt;&amp;nbsp;when world-class, low-cost multilingual STT with phrase/entity biasing is useful and diarization is not required.&lt;/LI&gt;
&lt;LI data-line="16"&gt;Validate region, deployment type, lifecycle, quota, and price in your tenant before treating any model choice as final.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H2 data-line="18"&gt;A quick glossary&lt;/H2&gt;
&lt;UL data-line="20"&gt;
&lt;LI data-line="20"&gt;&lt;STRONG&gt;STT&lt;/STRONG&gt;: speech-to-text, also called transcription.&lt;/LI&gt;
&lt;LI data-line="21"&gt;&lt;STRONG&gt;TTS&lt;/STRONG&gt;: text-to-speech, also called speech synthesis.&lt;/LI&gt;
&lt;LI data-line="22"&gt;&lt;STRONG&gt;VAD&lt;/STRONG&gt;: voice activity detection, used to decide when a speaker has started or stopped talking.&lt;/LI&gt;
&lt;LI data-line="23"&gt;&lt;STRONG&gt;SIP&lt;/STRONG&gt;: Session Initiation Protocol, commonly used for telephony integration.&lt;/LI&gt;
&lt;LI data-line="24"&gt;&lt;STRONG&gt;PTU&lt;/STRONG&gt;: provisioned throughput units, a reserved-capacity deployment option where supported.&lt;/LI&gt;
&lt;/UL&gt;
&lt;img /&gt;
&lt;H2 data-line="26"&gt;Start with the user experience&lt;/H2&gt;
&lt;P data-line="28"&gt;The first decision is not which model is smartest. It is what the system must produce and how fast it must respond.&lt;/P&gt;
&lt;P data-line="30"&gt;If a user speaks to an agent and expects the agent to listen, reason, be interrupted, and speak back in real time, you are building a speech-to-speech system. Choose between direct Azure OpenAI Realtime API and managed Voice Live API.&lt;/P&gt;
&lt;P data-line="32"&gt;If a user uploads or records audio and needs a transcript, you are building STT. Use transcription APIs or Azure Speech batch, not a conversational voice model.&lt;/P&gt;
&lt;P data-line="34"&gt;If text goes in and speech comes out, you are building TTS. Use a TTS surface, not a speech-to-speech model.&lt;/P&gt;
&lt;P data-line="36"&gt;If speech must be translated while the speaker is still talking, you are building live speech translation. That is different from file translation to English with Whisper.&lt;/P&gt;
&lt;P data-line="38"&gt;If the app can wait for a normal request/response turn, turn-based audio chat is often simpler than a realtime session.&lt;/P&gt;
&lt;H2 data-line="38"&gt;Scenario map&lt;/H2&gt;
&lt;H3 data-line="40"&gt;Interactive experiences&lt;/H3&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Scenario&lt;/th&gt;&lt;th&gt;Start with&lt;/th&gt;&lt;th&gt;Use when&lt;/th&gt;&lt;th&gt;Watch for&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Turn-based audio chat&lt;/td&gt;&lt;td&gt;gpt-audio,&amp;nbsp;gpt-audio-mini,&amp;nbsp;gpt-audio-1.5&lt;/td&gt;&lt;td&gt;The user records or sends audio, then waits for a response&lt;/td&gt;&lt;td&gt;No live barge-in; app owns turns and playback. Not ideal for real-time and latency sensitive scenarios&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Composable voice chatbot&lt;/td&gt;&lt;td&gt;Azure Speech STT + Azure OpenAI or Foundry model + Azure Speech TTS&lt;/td&gt;&lt;td&gt;You want separate control over transcript, reasoning, and voice&lt;/td&gt;&lt;td&gt;More orchestration; app owns interruption and latency&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Direct realtime voice agent&lt;/td&gt;&lt;td&gt;gpt-realtime,&amp;nbsp;gpt-realtime-mini,&amp;nbsp;gpt-realtime-1.5,&amp;nbsp;gpt-realtime-2&lt;/td&gt;&lt;td&gt;You want model-native speech-to-speech over WebSocket, WebRTC, or SIP. Low latency, fast results.&lt;/td&gt;&lt;td&gt;Persistent session; app owns session behavior&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Managed realtime voice agent&lt;/td&gt;&lt;td&gt;Voice Live API&lt;/td&gt;&lt;td&gt;You want STT, model reasoning, TTS, turn detection, voices, tools, and avatars in one surface. Advanced features like; noise reduction, enhanced turn detection&lt;/td&gt;&lt;td&gt;Separate quota/pricing; requires persistent WebSocket or WebRTC session; SIP not directly supported. Not ideal for strict word for word speech&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Live translation&lt;/td&gt;&lt;td&gt;gpt-realtime-translate&amp;nbsp;or Azure Speech Translation&lt;/td&gt;&lt;td&gt;The speaker is still talking while translation happens&lt;/td&gt;&lt;td&gt;Use openai/v1/realtime/translations?model=gpt-realtime-translate&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Live captions&lt;/td&gt;&lt;td&gt;gpt-realtime-whisper&amp;nbsp;or Azure Speech realtime STT&lt;/td&gt;&lt;td&gt;You need source-language text during a live session, streaming transcription&lt;/td&gt;&lt;td&gt;Not a durable diarized transcript by itself&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;H3 data-line="51"&gt;Speech artifacts and workflows&lt;/H3&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Scenario&lt;/th&gt;&lt;th&gt;Start with&lt;/th&gt;&lt;th&gt;Use when&lt;/th&gt;&lt;th&gt;Watch for&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;File transcription&lt;/td&gt;&lt;td&gt;gpt-4o-transcribe,&amp;nbsp;gpt-4o-mini-transcribe,&amp;nbsp;whisper,&amp;nbsp;mai-transcribe-1.5&lt;/td&gt;&lt;td&gt;Audio is uploaded or bounded&lt;/td&gt;&lt;td&gt;File-size limits, preview status, diarization needs&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Diarization&lt;/td&gt;&lt;td&gt;gpt-4o-transcribe-diarize&amp;nbsp;or Azure Speech batch&lt;/td&gt;&lt;td&gt;Speaker labels matter&lt;/td&gt;&lt;td&gt;Not a Realtime API model; long files often fit batch better&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Domain-specific STT&lt;/td&gt;&lt;td&gt;Azure Speech realtime STT or custom speech&lt;/td&gt;&lt;td&gt;Domain terms, accents, language detection, or punctuation matter&lt;/td&gt;&lt;td&gt;Feature support varies by region and API&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Text-to-speech&lt;/td&gt;&lt;td&gt;gpt-4o-mini-tts,&amp;nbsp;tts,&amp;nbsp;tts-hd, Azure Speech TTS&lt;/td&gt;&lt;td&gt;Input is text and output is speech&lt;/td&gt;&lt;td&gt;TTS capabilities vary significantly across OpenAI TTS, Azure Speech TTS,&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Branded or expressive voice&lt;/td&gt;&lt;td&gt;Azure Speech neural/HD voices, Custom Neural Voice,&amp;nbsp;MAI-Voice-2&lt;/td&gt;&lt;td&gt;Voice identity, style, pronunciation, or long-form narration matters&lt;/td&gt;&lt;td&gt;Custom voice and voice prompting require access controls and consent&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Privacy-sensitive or on-prem speech&lt;/td&gt;&lt;td&gt;Azure Speech batch storage and Speech containers&lt;/td&gt;&lt;td&gt;Data retention, local processing, or compliance dominates&lt;/td&gt;&lt;td&gt;Verify container support, pricing, and compliance scope&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;col style="width: 25.00%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;H2 data-line="62"&gt;How the main surfaces work&lt;/H2&gt;
&lt;H3 data-line="64"&gt;Azure OpenAI Realtime API: direct model-native voice&lt;/H3&gt;
&lt;P data-line="66"&gt;Use the Azure OpenAI Realtime API when you want low-latency speech-to-speech and your app can manage the live session. The GA WebSocket path is:&lt;/P&gt;
&lt;LI-CODE lang=""&gt;wss://{resource}.openai.azure.com/openai/v1/realtime?model={deployment}&lt;/LI-CODE&gt;
&lt;P data-line="72"&gt;WebRTC uses /openai/v1/realtime/client_secrets and /openai/v1/realtime/calls. SIP call control uses /openai/v1/realtime/calls/{call_id}/.... Do not add date-based api-version parameters to the GA /openai/v1/realtime path. The Realtime API supports up to 32,000 input tokens and 4,096 output tokens.&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Connection method&lt;/th&gt;&lt;th&gt;Use case&lt;/th&gt;&lt;th&gt;Latency&lt;/th&gt;&lt;th&gt;Best for&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;WebRTC&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Client-side applications&lt;/td&gt;&lt;td&gt;~100 ms&lt;/td&gt;&lt;td&gt;Web apps, mobile apps, browser-based experiences&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;WebSocket&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Server-to-server&lt;/td&gt;&lt;td&gt;~200 ms&lt;/td&gt;&lt;td&gt;Backend services, batch processing, custom middleware&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;SIP&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Telephony integration&lt;/td&gt;&lt;td&gt;Varies&lt;/td&gt;&lt;td&gt;Call centers, IVR systems, phone-based applications&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P data-line="83"&gt;Choose realtime path when you need tight control over audio buffering, session state, function calls, and telephony. Choose Voice Live instead when you want Azure Speech voices, semantic turn detection, custom speech, custom voice, avatar output, or broader model selection without wiring those pieces yourself.&lt;/P&gt;
&lt;H3 data-line="87"&gt;Voice Live API: managed voice agents&lt;/H3&gt;
&lt;P data-line="89"&gt;Voice Live API is the managed speech-to-speech surface in Azure Speech in Foundry Tools. It combines STT, model reasoning, TTS, turn detection, interruption handling, noise suppression, echo cancellation, voices, avatars, and function calling behind one realtime interface.&lt;/P&gt;
&lt;P data-line="91"&gt;The WebSocket endpoint shape is:&lt;/P&gt;
&lt;LI-CODE lang=""&gt;wss://{resource}.services.ai.azure.com/voice-live/realtime?api-version=2026-04-10&amp;amp;model={model}&lt;/LI-CODE&gt;
&lt;P data-line="97"&gt;Older resources can use:&lt;/P&gt;
&lt;LI-CODE lang=""&gt;wss://{resource}.cognitiveservices.azure.com/voice-live/realtime?api-version=2026-04-10&amp;amp;model={model&lt;/LI-CODE&gt;
&lt;P data-line="103"&gt;Voice Live can also connect to Microsoft Foundry Agent Service with&amp;nbsp;agent_id&amp;nbsp;and&amp;nbsp;project_id&amp;nbsp;parameters. Microsoft Entra authentication is recommended. API keys are also supported.&lt;/P&gt;
&lt;P data-line="105"&gt;A typical Voice Live session starts with&amp;nbsp;session.update:&lt;/P&gt;
&lt;LI-CODE lang=""&gt;{
  "type": "session.update",
  "session": {
    "instructions": "You are a concise customer support voice agent.",
    "modalities": ["text", "audio"],
    "turn_detection": {
      "type": "azure_semantic_vad",
      "silence_duration_ms": 500,
      "interrupt_response": true
    },
    "input_audio_noise_reduction": { "type": "azure_deep_noise_suppression" },
    "input_audio_echo_cancellation": { "type": "server_echo_cancellation" },
    "voice": {
      "name": "en-US-AvaNeural",
      "type": "azure-standard"
    }
  }
}&lt;/LI-CODE&gt;
&lt;P data-line="128"&gt;Voice Live is useful for contact centers, automotive assistants, accessibility experiences, public-service agents, learning companions, and any app where conversation quality depends on turn-taking as much as model intelligence.&lt;/P&gt;
&lt;P data-line="130"&gt;Voice Live supports a broad model set: GPT-Realtime, GPT-4o, GPT-4.1, GPT-5 family models, Phi preview models,&amp;nbsp;azure-realtime, Agent Service, and BYOM patterns.&lt;/P&gt;
&lt;P data-line="132"&gt;Key tradeoffs:&lt;/P&gt;
&lt;UL data-line="134"&gt;
&lt;LI data-line="134"&gt;Voice Live has separate quota and pricing from Azure OpenAI deployment tables.&lt;/LI&gt;
&lt;LI data-line="135"&gt;Pricing is tiered by selected model: Pro, Basic, and Lite.&lt;/LI&gt;
&lt;LI data-line="136"&gt;Custom speech, custom voice, and avatar features can add training, hosting, or usage charges.&lt;/LI&gt;
&lt;LI data-line="137"&gt;Custom voice and avatar access can be limited or approval-gated.&lt;/LI&gt;
&lt;LI data-line="138"&gt;WebRTC support is preview.&lt;/LI&gt;
&lt;LI data-line="139"&gt;SIP is documented for Azure OpenAI Realtime API, but not directly supported in Voice Live, yet.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H3 data-line="141"&gt;Azure Speech: the production speech service layer&lt;/H3&gt;
&lt;P data-line="143"&gt;Azure Speech in Foundry Tools is more than a model list. It is a service layer for realtime STT, batch STT, TTS, translation, custom speech, custom voice, privacy controls, and containers.&lt;/P&gt;
&lt;P data-line="145"&gt;Use Azure Speech when the speech artifact matters: a durable transcript, a brand voice, a tuned recognizer, a controlled storage boundary, or a Speech SDK workflow.&lt;/P&gt;
&lt;P data-line="147"&gt;For STT, Azure Speech supports realtime streaming and batch patterns. It can also support capabilities such as language detection, phrase hints, custom speech models, punctuation, capitalization, keyword spotting, pronunciation assessment, and diarization. Exact diarization limits and feature combinations should be verified in the current Speech docs for the selected API and region.&lt;/P&gt;
&lt;P data-line="149"&gt;For TTS, Azure Speech is the broader production path for voice catalog depth, locale coverage, pronunciation control, and branded voice. Custom Neural Voice lets teams create a unique voice under limited-access controls.&lt;/P&gt;
&lt;P data-line="151"&gt;For privacy-sensitive workloads, Azure Speech can help define the data boundary. Batch jobs can use customer-controlled Azure Storage for input and output. Speech containers can support customer-managed or on-premises processing for supported features. Validate the exact feature, container image, compliance scope, and region before making regulated production commitments.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;img /&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;
&lt;H2 data-line="151"&gt;Model and surface quick reference&lt;/H2&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Model or surface&lt;/th&gt;&lt;th&gt;What it is&lt;/th&gt;&lt;th&gt;Best use&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Azure Speech realtime STT&lt;/td&gt;&lt;td&gt;Speech service streaming STT&lt;/td&gt;&lt;td&gt;Live captions and tuned recognition&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Azure Speech batch transcription&lt;/td&gt;&lt;td&gt;Speech service async STT&lt;/td&gt;&lt;td&gt;Large files, durable transcripts, timestamps, diarization workflows&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Azure Speech Translation&lt;/td&gt;&lt;td&gt;Speech service translation&lt;/td&gt;&lt;td&gt;Speech-to-text or speech-to-speech translation workflows&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Azure Speech TTS / Custom Neural Voice / HD voices&lt;/td&gt;&lt;td&gt;Speech service synthesis&lt;/td&gt;&lt;td&gt;Branded voices, broad locales, long-form assets&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Speech containers&lt;/td&gt;&lt;td&gt;Customer-managed Speech runtime&lt;/td&gt;&lt;td&gt;On-premises or controlled-boundary processing where supported&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;mai-transcribe-1.5&lt;/td&gt;&lt;td&gt;Microsoft AI multilingual STT&lt;/td&gt;&lt;td&gt;Top-tier STT with phrase/entity biasing and style options (mai-transcribe-1&amp;nbsp;is the earlier version)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;MAI-Voice-2&lt;/td&gt;&lt;td&gt;Microsoft AI expressive multilingual TTS&lt;/td&gt;&lt;td&gt;Long-form, expressive, or voice-prompted speech where preview terms fit. (MAI-Voice-1&amp;nbsp;is the earlier version)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;MAI-Voice-2-Flash&lt;/td&gt;&lt;td&gt;Roadmap/watch item&lt;/td&gt;&lt;td&gt;Design production low-latency TTS around it after SKU, endpoint, price, and regions are public&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;H2 data-line="164"&gt;&lt;BR /&gt;Capability Matrix&lt;/H2&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Model name&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;th&gt;Good for&lt;/th&gt;&lt;th&gt;Example use cases&lt;/th&gt;&lt;th&gt;Input types&lt;/th&gt;&lt;th&gt;Output types&lt;/th&gt;&lt;th&gt;Limitations&lt;/th&gt;&lt;th&gt;Max request tokens&lt;/th&gt;&lt;th&gt;Pricing&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;mai-transcribe-1.5&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Microsoft AI (MAI) first-party speech-to-text model in the&amp;nbsp;&lt;STRONG&gt;Azure Speech LLM Speech API&lt;/STRONG&gt;&amp;nbsp;(Foundry Tools) —&amp;nbsp;&lt;EM&gt;not&lt;/EM&gt;&amp;nbsp;an Azure OpenAI model. Multilingual transcription model with entity biasing for names, brands, and industry terms; supports 43 languages and excels in noisy environments.&lt;/td&gt;&lt;td&gt;High-accuracy multilingual batch transcription where domain-term biasing and readable output matter; efficient long-audio STT.&lt;/td&gt;&lt;td&gt;Meeting/call transcription, media &amp;amp; podcast transcription, multilingual voice-note transcription, domain (medical/legal/brand) STT via phrase lists.&lt;/td&gt;&lt;td&gt;Audio file &amp;lt; 300 MB (WAV, MP3, FLAC; ~up to 2 hrs); optional&amp;nbsp;phraseList,&amp;nbsp;locales,&amp;nbsp;transcribeStyle.&lt;/td&gt;&lt;td&gt;Text transcript (readability-optimized or verbatim).&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;Public preview&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;file-based — input limited to&amp;nbsp;&lt;STRONG&gt;&amp;lt; 300 MB&lt;/STRONG&gt;&amp;nbsp;per file (~2 hrs); token limit will be published.&lt;/td&gt;&lt;td&gt;$0.36 / hour&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-4o-mini-tts&lt;/STRONG&gt;&amp;nbsp;(2025-12-15)&lt;/td&gt;&lt;td&gt;TTS model powered by GPT-4o mini with voice-style guidance; newer snapshot of&amp;nbsp;gpt-4o-mini-tts.&lt;/td&gt;&lt;td&gt;Newer instruction-controlled speech (styled delivery).&lt;/td&gt;&lt;td&gt;Styled speech, assistant voice, narration.&lt;/td&gt;&lt;td&gt;Text (+ natural-language style "instructions").&lt;/td&gt;&lt;td&gt;Audio (mp3, wav, opus, aac, flac, pcm).&lt;/td&gt;&lt;td&gt;not a transcription/chat model.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;4,096 characters&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Global: text input $0.60, audio output $12.00; Data Zone: text input $0.66, audio output $13.20; Regional: text input $0.66–$0.792, audio output $13.20–$15.84 ( / 1M tokens)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-4o-mini-tts&lt;/STRONG&gt;&amp;nbsp;(2025-03-20)&lt;/td&gt;&lt;td&gt;Small, fast,&amp;nbsp;&lt;EM&gt;steerable&lt;/EM&gt;&amp;nbsp;text-to-speech model powered by GPT-4o mini (Azure OpenAI / OpenAI) — you can instruct not just what is said but how (tone, emotion, accent, pace).&lt;/td&gt;&lt;td&gt;Low-cost, expressive, controllable speech generation at scale; developer-friendly TTS with voice-style prompting; branded/styled speech assets when natural-language style instructions help.&lt;/td&gt;&lt;td&gt;Voiceovers and narration, spoken replies in voice agents, read-aloud/accessibility, IVR prompts, customer-service audio; branded speech-asset pipeline (style-controlled).&lt;/td&gt;&lt;td&gt;Text (+ natural-language style "instructions").&lt;/td&gt;&lt;td&gt;Audio (mp3, wav, opus, aac, flac, pcm).&lt;/td&gt;&lt;td&gt;Not a transcription/chat model; no verbatim-synthesis guarantee&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;4,096 characters&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Global: text input $0.60, audio output $12.00; Data Zone: text input $0.66, audio output $13.20; Regional: text input $0.66–$0.792, audio output $13.20–$15.84 ( / 1M tokens)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-audio&lt;/STRONG&gt;&amp;nbsp;(2025-08-28)&lt;/td&gt;&lt;td&gt;Audio-capable GPT chat model for turn-based spoken conversation over Chat Completions (not the full-duplex Realtime API); accepts and returns audio and/or text.&lt;/td&gt;&lt;td&gt;Asynchronous/turn-based voice chat and audio generation without building a realtime session.&lt;/td&gt;&lt;td&gt;Voice Q&amp;amp;A bots, audio analysis + spoken summary, spoken-language tutoring, request/response IVR; audiobook generation.&lt;/td&gt;&lt;td&gt;Text + audio.&lt;/td&gt;&lt;td&gt;Text + audio.&lt;/td&gt;&lt;td&gt;Not the Realtime API —&amp;nbsp;&lt;STRONG&gt;no live barge-in/interruption&lt;/STRONG&gt;; turn-based latency; ~20 MB audio-file limit in quickstart; use Chat Completions (not Responses) for audio chat.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;128,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;16,384&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;Text input $2.50, text output $10.00; audio input $40.00, audio output $80.00 / 1M tokens&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-audio-mini&lt;/STRONG&gt;&amp;nbsp;(2025-10-06)&lt;/td&gt;&lt;td&gt;Smaller, ~3× cheaper sibling of&amp;nbsp;gpt-audio&amp;nbsp;for turn-based audio chat; trades some capability for lower cost/latency.&lt;/td&gt;&lt;td&gt;High-volume or cost-sensitive turn-based audio chat; simplest path for a voice-enabled chat feature — user records audio, submits it, and gets an audio answer after a normal turn (simpler than a realtime session).&lt;/td&gt;&lt;td&gt;Large-scale voice bots, budget audio Q&amp;amp;A, lightweight spoken assistants; audio generation.&lt;/td&gt;&lt;td&gt;Text + audio.&lt;/td&gt;&lt;td&gt;Text + audio.&lt;/td&gt;&lt;td&gt;Same non-Realtime constraints as&amp;nbsp;gpt-audio; lower capability; do not use this path if users expect live interruption/barge-in; older mini snapshot&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;128,000&lt;/STRONG&gt;&amp;nbsp;context (gpt-audio family); ~&lt;STRONG&gt;16,384&lt;/STRONG&gt;&amp;nbsp;output&lt;/td&gt;&lt;td&gt;Text input $0.60, text output $2.40; audio input $10.00, audio output $20.00 / 1M tokens&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-4o-audio-preview&lt;/STRONG&gt;&amp;nbsp;(2024-12-17)&lt;/td&gt;&lt;td&gt;Preview GPT-4o-family audio model for audio and text generation (turn-based, over Chat Completions).&lt;/td&gt;&lt;td&gt;Higher-quality turn-based audio chat.&lt;/td&gt;&lt;td&gt;Voice Q&amp;amp;A, spoken assistant responses, audio understanding, audio response generation.&lt;/td&gt;&lt;td&gt;Text, audio, text + audio; no image/video.&lt;/td&gt;&lt;td&gt;Text, audio, text + audio; no image/video.&lt;/td&gt;&lt;td&gt;Preview; not strict STT/TTS only; not ideal for batch transcripts, diarization, or low-latency interruption; structured outputs, fine-tuning, and predicted outputs not supported.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;128,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;16,384&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;Global: text input $2.50, text output $10, audio input $40, audio output $80 (/1M Tokens)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-4o-mini-audio-preview&lt;/STRONG&gt;&amp;nbsp;(2024-12-17)&lt;/td&gt;&lt;td&gt;Preview audio model for audio and text generation (smaller/lower-cost, turn-based).&lt;/td&gt;&lt;td&gt;Lower-cost/faster turn-based audio chat.&lt;/td&gt;&lt;td&gt;Audio Q&amp;amp;A, short voice assistant replies, app-generated spoken responses.&lt;/td&gt;&lt;td&gt;Text, audio, text + audio; no image/video.&lt;/td&gt;&lt;td&gt;Text, audio, text + audio; no image/video.&lt;/td&gt;&lt;td&gt;Preview; not optimized for live barge-in.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;128,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;16,384&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;Global: text input $0.15, text output $0.60, audio input $10, audio output $20 (/1M Tokens)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-audio-1.5&lt;/STRONG&gt;&amp;nbsp;(2026-02-23)&lt;/td&gt;&lt;td&gt;Newer generation of the audio chat model with native audio-in/audio-out over Chat Completions; improved quality over&amp;nbsp;gpt-audio.&lt;/td&gt;&lt;td&gt;Higher-quality turn-based multimodal (audio + text) chat and audio generation; good starting point for a voice-enabled chat feature (record → submit → audio reply after a normal turn).&lt;/td&gt;&lt;td&gt;Voice assistants, audio summarization, turn-based spoken translation, audio chat with tool/function calling; more natural audio output; audio generation.&lt;/td&gt;&lt;td&gt;Text + audio.&lt;/td&gt;&lt;td&gt;Text + audio.&lt;/td&gt;&lt;td&gt;Turn-based (not Realtime — no live barge-in); higher audio-token pricing; not for experiences that require live interruption.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;128,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;16,384&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;Text input $2.50, text output $10.00; audio input $32.00, audio output $64.00 / 1M tokens&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-realtime&lt;/STRONG&gt;&amp;nbsp;(2025-08-28)&lt;/td&gt;&lt;td&gt;GA speech-to-speech Realtime model for low-latency, full-duplex voice over WebSocket/WebRTC/SIP (/openai/v1/realtime); native audio in and out.&lt;/td&gt;&lt;td&gt;Production real-time voice agents needing natural, low-latency, interruptible conversation; general direct realtime speech-to-speech.&lt;/td&gt;&lt;td&gt;Live customer-support voice agents, real-time assistants, telephony bots (SIP), interactive voice experiences; contact-center agents (directly or as a Voice Live model).&lt;/td&gt;&lt;td&gt;Audio + text (image where supported).&lt;/td&gt;&lt;td&gt;Audio + text.&lt;/td&gt;&lt;td&gt;Requires a persistent realtime session and app-side orchestration; fewer composition options than managed Voice Live; not a strict transcript/TTS tool; do not use a speech-to-speech model as the meeting source-of-record transcript.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;32,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;4,096&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;Global: text input $4.00, cached text input $0.40, text output $16.00; audio input $32.00, cached audio input $0.40, audio output $64.00; image input $5.00, cached image input $0.50 / 1M tokens&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-realtime-mini&lt;/STRONG&gt;&amp;nbsp;(2025-10-06)&lt;/td&gt;&lt;td&gt;Cost-efficient sibling of&amp;nbsp;gpt-realtime&amp;nbsp;for low-latency speech-to-speech; cheaper per token.&lt;/td&gt;&lt;td&gt;High-volume or cost-sensitive real-time voice agents; lower-cost realtime voice experiences.&lt;/td&gt;&lt;td&gt;Scaled voice bots, lightweight realtime assistants, cost-sensitive live caption-and-respond flows; low-latency voice streaming.&lt;/td&gt;&lt;td&gt;Audio + text (image where supported).&lt;/td&gt;&lt;td&gt;Audio + text.&lt;/td&gt;&lt;td&gt;Lower capability than&amp;nbsp;gpt-realtime; realtime session orchestration still required; older mini snapshot&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;32,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;4,096&lt;/STRONG&gt;&amp;nbsp;output tokens&lt;/td&gt;&lt;td&gt;Global: text input $0.60, cached text input $0.06, text output $2.40; audio input $10.00, cached audio input $0.30, audio output $20.00; image input $0.80, cached image input $0.08/ 1M tokens&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-realtime-mini&lt;/STRONG&gt;&amp;nbsp;(2025-12-15)&lt;/td&gt;&lt;td&gt;Cost-efficient sibling of&amp;nbsp;gpt-realtime&amp;nbsp;for low-latency speech-to-speech; newer snapshot with quality updates.&lt;/td&gt;&lt;td&gt;Lower-cost realtime voice with newer quality updates.&lt;/td&gt;&lt;td&gt;Voice agents needing lower cost and latency; low-latency voice streaming.&lt;/td&gt;&lt;td&gt;Audio + text (image where supported).&lt;/td&gt;&lt;td&gt;Audio + text.&lt;/td&gt;&lt;td&gt;Requires persistent realtime session; realtime orchestration required.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;32,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;4,096&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;gpt-realtime-mini-2025-12-15 Global: text input $0.60, cached text input $0.06, text output $2.40; audio input $10.00, cached audio input $0.30, audio output $20.00; image input $0.80, cached image input $0.08 / 1M tokens&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-realtime-1.5&lt;/STRONG&gt;&amp;nbsp;(2026-02-23)&lt;/td&gt;&lt;td&gt;Realtime speech-to-speech model variant (production/GA) with audio/text (and image) input and audio/text output over WebRTC/WebSocket/SIP.&lt;/td&gt;&lt;td&gt;Production real-time voice agents needing enterprise governance (RBAC, logging, policy); newer full realtime voice experiences; newer direct realtime voice.&lt;/td&gt;&lt;td&gt;Enterprise voice assistants, live support, real-time translation apps, telephony agents; conversational agents, tool-driven voice flows.&lt;/td&gt;&lt;td&gt;Audio + text + image (input).&lt;/td&gt;&lt;td&gt;Audio + text.&lt;/td&gt;&lt;td&gt;Realtime session/orchestration required; function calling supported but (per one source) structured outputs / fine-tuning not, do not use as the source-of-record transcript.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;32,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;4,096&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;Global: text input $4.00, cached text input $0.40, text output $16.00; audio input $32.00, cached audio input $0.40, audio output $64.00; image input $5.00, cached image input $0.50 / 1M tokens&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-realtime-2&lt;/STRONG&gt;&amp;nbsp;(2026-05-07)&lt;/td&gt;&lt;td&gt;Speech-to-speech Realtime model&amp;nbsp;&lt;STRONG&gt;with built-in reasoning&lt;/STRONG&gt;&amp;nbsp;(adjustable&amp;nbsp;reasoning.effort) and response phases (commentary&amp;nbsp;preamble vs&amp;nbsp;final_answer); audio in → audio out.&lt;/td&gt;&lt;td&gt;Real-time voice needing stronger instruction-following/reasoning and lower&amp;nbsp;&lt;EM&gt;perceived&lt;/EM&gt;&amp;nbsp;latency via preambles; route complex resolution here when deeper multi-step reasoning matters (e.g., escalations in a multilingual support flow); complex voice support, multi-step voice assistants.&lt;/td&gt;&lt;td&gt;Complex voice agents/copilots, reasoning-heavy support flows, tool-announcing voice assistants.&lt;/td&gt;&lt;td&gt;Audio, text, image.&lt;/td&gt;&lt;td&gt;Audio, text (multi-item responses with&amp;nbsp;commentary&amp;nbsp;+&amp;nbsp;final_answer&amp;nbsp;phases).&lt;/td&gt;&lt;td&gt;**Public preview; stricter instruction-following may need prompt rephrasing; some features may be constrained; do not use as the source-of-record transcript&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;256,000&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Global: audio input $32.00, cached audio input $0.40, audio output $64.00; text input $4.00, cached text input $0.40, text output $24.00; image input $5.00, cached image input $0.50 / 1M tokens&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-realtime-translate&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Purpose-built model for&amp;nbsp;&lt;STRONG&gt;continuous, real-time audio translation&lt;/STRONG&gt;&amp;nbsp;—(Different languages) processes live streams without chunking and emits translated speech + transcript as speech unfolds. Global Standard in Foundry.&lt;/td&gt;&lt;td&gt;Minimal-latency live translation that keeps pace with the speaker; multilingual customer support with live translated speech plus a translated transcript.&lt;/td&gt;&lt;td&gt;Live multilingual events/conferences/broadcasts, cross-language support calls, multilingual voice interfaces, live media localization, international meetings; multilingual customer support (route complex resolution to&amp;nbsp;gpt-realtime-2&amp;nbsp;when deeper reasoning matters).&lt;/td&gt;&lt;td&gt;Audio (live stream).&lt;/td&gt;&lt;td&gt;Translated speech (audio) + translated transcript (text) in the target language.&lt;/td&gt;&lt;td&gt;Realtime API only; Azure exposes no distinct specialized endpoint path (uses generic Realtime); pair with&amp;nbsp;gpt-realtime-whisper&amp;nbsp;for source captions (or Azure Speech realtime STT for the source transcript); for durable compliance transcripts/diarization/word-level timestamps use Azure Speech batch&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;32,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;4,096&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;$2.04 / hour; equivalently $0.034 / minute&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-realtime-whisper&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Streaming transcription model that converts live audio to text in real time (Same languages); runs in parallel with speech-to-speech/translation models. Global Standard in Foundry.&lt;/td&gt;&lt;td&gt;Low-latency live captions/subtitles and source-language transcript during live audio; source transcript to run alongside&amp;nbsp;gpt-realtime-translate&amp;nbsp;in multilingual support (Azure Speech realtime STT is an alternative).&lt;/td&gt;&lt;td&gt;Live event captioning, compliance/quality monitoring transcripts, live-stream analytics, source captions paired with&amp;nbsp;gpt-realtime-translate; live meeting captions.&lt;/td&gt;&lt;td&gt;Audio (live stream).&lt;/td&gt;&lt;td&gt;Text (streaming transcript).&lt;/td&gt;&lt;td&gt;Text only (not diarization/file STT); Realtime API only; for the durable meeting transcript use Azure Speech batch (large files, diarization, word-level timestamps).&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;32,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;4,096&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;$1.02 / hour; equivalently $0.017 / minute; distinct from plain whisper-1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-4o-transcribe&lt;/STRONG&gt;&amp;nbsp;(2025-03-20)&lt;/td&gt;&lt;td&gt;Preview GPT-4o-based speech-to-text model for high-accuracy file and request transcription via&amp;nbsp;/audio/transcriptions.&lt;/td&gt;&lt;td&gt;Accurate prerecorded/file transcription with GPT-4o quality.&lt;/td&gt;&lt;td&gt;Meeting/interview transcription, media transcription, voice-note transcription, transcripts feeding downstream LLMs; captions; analysis.&lt;/td&gt;&lt;td&gt;Audio (+ optional text prompt).&lt;/td&gt;&lt;td&gt;Text transcript.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;Preview&lt;/STRONG&gt;; file-based (not live speech-to-speech); ~25 MB file limit; no diarization; not for deterministic word-for-word synthesis; for regulated/on-prem needs, start from the data boundary — consider Azure Speech batch (customer-controlled storage) or Speech containers.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;16,000&lt;/STRONG&gt;&amp;nbsp;context /&amp;nbsp;&lt;STRONG&gt;2,000&lt;/STRONG&gt;&amp;nbsp;output tokens; request also bounded by&amp;nbsp;&lt;STRONG&gt;~25 MB&lt;/STRONG&gt;&amp;nbsp;audio file.&lt;/td&gt;&lt;td&gt;Global: audio input $6.00, text input $2.50, text output $10.00; Data Zone: audio input $6.60, text input $2.75, text output $11.00; Regional: audio input $6.60–$7.92, text input $2.75–$3.30, text output $11.00–$13.20 ( / 1M tokens). Docs equivalent: $0.36 / hour&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-4o-mini-transcribe&lt;/STRONG&gt;&amp;nbsp;(2025-03-20)&lt;/td&gt;&lt;td&gt;Preview smaller, faster, lower-cost GPT-4o transcription model for file/request STT.&lt;/td&gt;&lt;td&gt;Budget / high-throughput file transcription where speed and cost matter.&lt;/td&gt;&lt;td&gt;Bulk transcription, budget live-caption input, voice-note transcription, cost-sensitive STT pipelines.&lt;/td&gt;&lt;td&gt;Audio (+ optional text prompt).&lt;/td&gt;&lt;td&gt;Text transcript.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;Preview&lt;/STRONG&gt;; file-based; ~25 MB file limit; lower accuracy than full&amp;nbsp;gpt-4o-transcribe; no diarization.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;16,000&lt;/STRONG&gt;&amp;nbsp;context /&amp;nbsp;&lt;STRONG&gt;2,000&lt;/STRONG&gt;&amp;nbsp;output tokens; request also bounded by&amp;nbsp;&lt;STRONG&gt;~25 MB&lt;/STRONG&gt;&amp;nbsp;audio file.&lt;/td&gt;&lt;td&gt;Global: audio input $3.00, text input $1.25, text output $5.00; Data Zone: audio input $3.30, text input $1.375, text output $5.50; Regional: audio input $3.30–$3.96, text input $1.375–$1.65, text output $5.50–$6.60 / 1M tokens. Docs equivalent: $0.18 / hour&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-4o-mini-transcribe&lt;/STRONG&gt;&amp;nbsp;(2025-12-15)&lt;/td&gt;&lt;td&gt;Preview STT model powered by GPT-4o mini with improved transcription accuracy and robustness (newer snapshot).&lt;/td&gt;&lt;td&gt;Faster, lower-cost STT.&lt;/td&gt;&lt;td&gt;Captions, transcripts, high-volume audio files.&lt;/td&gt;&lt;td&gt;Audio (+ optional text prompt).&lt;/td&gt;&lt;td&gt;Text transcript.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;Preview&lt;/STRONG&gt;; ~25 MB file limit; no diarization.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;16,000&lt;/STRONG&gt;&amp;nbsp;context /&amp;nbsp;&lt;STRONG&gt;2,000&lt;/STRONG&gt;&amp;nbsp;output tokens; request also bounded by&amp;nbsp;&lt;STRONG&gt;~25 MB&lt;/STRONG&gt;&amp;nbsp;audio file.&lt;/td&gt;&lt;td&gt;Global: audio input $3.00, text input $1.25, text output $5.00; Data Zone: audio input $3.30, text input $1.375, text output $5.50; Regional: audio input $3.30–$3.96, text input $1.375–$1.65, text output $5.50–$6.60 / 1M tokens. Docs equivalent: $0.18 / hour&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;whisper&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;General-purpose STT model via Azure OpenAI for multilingual transcription and English translation (/audio/transcriptions,&amp;nbsp;/audio/translations).&lt;/td&gt;&lt;td&gt;Robust multilingual transcription and non-English → English translation of prerecorded audio.&lt;/td&gt;&lt;td&gt;Multilingual transcription (~100 languages), translating foreign-language audio to English text, subtitle generation, batch STT.&lt;/td&gt;&lt;td&gt;Audio file.&lt;/td&gt;&lt;td&gt;Text (transcript; or English translation).&lt;/td&gt;&lt;td&gt;25 MB file limit; no Azure OpenAI diarization; processes ~30-sec windows; legacy Standard/Regional deployment; no speaker labels; for diarization/word-level timestamps or durable/regulated transcripts, use Azure Speech batch or&amp;nbsp;gpt-4o-transcribe-diarize.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;25 MB&lt;/STRONG&gt;&amp;nbsp;file limit per request&lt;/td&gt;&lt;td&gt;whisper-1: $0.36 / hour; Retail plain Whisper Global: $0.36 / hour; Regional: $0.396–$0.4752 / hour. Keep separate from gpt-realtime-whisper&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-4o-transcribe-diarize&lt;/STRONG&gt;&amp;nbsp;(2025-10-15)&lt;/td&gt;&lt;td&gt;Preview GPT-4o transcription model that adds&amp;nbsp;&lt;STRONG&gt;speaker diarization&lt;/STRONG&gt;&amp;nbsp;— a transcript with speaker-attributed segments (Speaker 1/2…). Request/file-based.&lt;/td&gt;&lt;td&gt;File transcription where "who said what" matters; meeting transcript/minutes for bounded files when its limits fit.&lt;/td&gt;&lt;td&gt;Meeting minutes with speakers, interview/podcast transcripts, call-center QA, multi-party conversation analysis.&lt;/td&gt;&lt;td&gt;Audio file.&lt;/td&gt;&lt;td&gt;Text transcript with speaker-labeled segments (speaker metadata).&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;Preview&lt;/STRONG&gt;; (not Realtime API; no realtime/streaming diarization); generic speaker labels; best with few, clear speakers;&amp;nbsp;&lt;STRONG&gt;no prompts, logprobs, or timestamp granularities&lt;/STRONG&gt;; ~25 MB file limit; for large files or word-level timestamps use Azure Speech batch instead.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;~25 MB&lt;/STRONG&gt;&amp;nbsp;file limit; underlying text context up to 128K but bounded by file limits.&lt;/td&gt;&lt;td&gt;Text input $2.50, text output $10.00; audio input $6.00, audio output N/A / 1M tokens&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;tts&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Azure OpenAI's standard (preview) text-to-speech deployment name (OpenAI analog:&amp;nbsp;tts-1); converts text to natural speech, optimized for speed.&lt;/td&gt;&lt;td&gt;General-purpose, real-time-friendly TTS at standard quality.&lt;/td&gt;&lt;td&gt;Voiceovers, spoken responses, narration, accessibility read-aloud; IVR prompts, short assistant replies, notifications.&lt;/td&gt;&lt;td&gt;Text.&lt;/td&gt;&lt;td&gt;Audio (mp3, opus, aac, flac, wav, pcm).&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;Preview&lt;/STRONG&gt;; legacy path; standard (non-HD) quality; legacy Standard/Regional deployment; 4,096-char input; fewer newer style controls&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;4,096 characters&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;$15.00 / 1M characters&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;tts-hd&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;HD variant (preview) of the Azure OpenAI TTS deployment (OpenAI analog:&amp;nbsp;tts-1-hd) — higher-quality, more natural speech, optimized for quality, slightly higher latency.&lt;/td&gt;&lt;td&gt;Higher-fidelity narration / branded audio where quality outweighs latency; for true branded voice identity, language coverage, or long-form quality, consider Azure Speech Custom Neural Voice, HD voices, or MAI-Voice-2.&lt;/td&gt;&lt;td&gt;Audiobooks, premium voiceovers, high-quality narration, brand voice assets; polished customer-facing audio.&lt;/td&gt;&lt;td&gt;Text.&lt;/td&gt;&lt;td&gt;Audio (mp3, opus, aac, flac, wav, pcm).&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;Preview&lt;/STRONG&gt;; slower and costlier than speed-optimized TTS; legacy Standard/Regional; 4,096-char input.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;4,096 characters&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;$30.00 / 1M characters&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-4o-realtime-preview&lt;/STRONG&gt;&amp;nbsp;(2025-06-03)&lt;/td&gt;&lt;td&gt;Preview GPT-4o realtime model for low-latency speech-in/speech-out conversations;&amp;nbsp;&lt;STRONG&gt;superseded by the GA&amp;nbsp;gpt-realtime&amp;nbsp;family&lt;/STRONG&gt;&amp;nbsp;and on the retirement path.&lt;/td&gt;&lt;td&gt;Legacy/preview realtime voice agents — new work should use&amp;nbsp;gpt-realtime&amp;nbsp;(GA).&lt;/td&gt;&lt;td&gt;Live support agents, voice assistants, realtime translators, WebRTC apps, WebSocket audio flows, SIP/telephony demos.&lt;/td&gt;&lt;td&gt;Audio, text, image (through Realtime conversation items).&lt;/td&gt;&lt;td&gt;Audio + text (transcript/events).&lt;/td&gt;&lt;td&gt;superseded by&amp;nbsp;gpt-realtime&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;32,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;4,096&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;TBD&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-4o-realtime-preview&lt;/STRONG&gt;&amp;nbsp;(2024-12-17)&lt;/td&gt;&lt;td&gt;Preview GPT-4o realtime model for low-latency speech-in/speech-out conversations (older snapshot).&lt;/td&gt;&lt;td&gt;Early realtime voice prototypes.&lt;/td&gt;&lt;td&gt;Voice agents, live assistants, WebRTC/WebSocket audio flows.&lt;/td&gt;&lt;td&gt;Audio, text, image (through Realtime conversation items).&lt;/td&gt;&lt;td&gt;Audio + text (transcript/events).&lt;/td&gt;&lt;td&gt;Preview/legacy-watch; older preview snapshot; not recommended for production and does not follow the standard Azure OpenAI lifecycle; superseded by&amp;nbsp;gpt-realtime&amp;nbsp;GA.&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;16,000&lt;/STRONG&gt;&amp;nbsp;context; up to&amp;nbsp;&lt;STRONG&gt;4,096&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;Global: text input $5.00, text output $20.00, audio input $40.00, audio output $80.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;gpt-4o-mini-realtime-preview&lt;/STRONG&gt;&amp;nbsp;(2024-12-17)&lt;/td&gt;&lt;td&gt;Smaller preview GPT-4o realtime model for cost / lower-latency audio processing.&lt;/td&gt;&lt;td&gt;Lower-cost preview voice-agent experiments.&lt;/td&gt;&lt;td&gt;Simple voice assistants, prototypes, browser/mobile realtime audio.&lt;/td&gt;&lt;td&gt;Audio, text, image (through Realtime conversation items).&lt;/td&gt;&lt;td&gt;Audio + text (transcript/events).&lt;/td&gt;&lt;td&gt;128,000 input / 4,096 output, but Realtime API docs say 32,000 input / 4,096 output&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;32,000&lt;/STRONG&gt;&amp;nbsp;context (operational; model table lists 128,000); up to&amp;nbsp;&lt;STRONG&gt;4,096&lt;/STRONG&gt;&amp;nbsp;output tokens.&lt;/td&gt;&lt;td&gt;Global: text input $0.60, text output $2.40, audio input $10.00, audio output $20.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;MAI-Voice-2&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Microsoft AI (MAI) expressive multilingual TTS; 18+ languages.&lt;/td&gt;&lt;td&gt;Long-form, expressive, or voice-prompted speech.&lt;/td&gt;&lt;td&gt;Long-form content, emotion/style speech, multi-speaker scenarios, approved voice prompting, branded/expressive voice assets where voice identity, style, pronunciation, or long-form narration matters.&lt;/td&gt;&lt;td&gt;Text; approved voice prompting/reference clips (5–60 seconds recommended).&lt;/td&gt;&lt;td&gt;Audio.&lt;/td&gt;&lt;td&gt;Preview terms; custom voice and voice prompting require access controls&lt;/td&gt;&lt;td&gt;5–60 second recommended reference clips for voice prompting.&lt;/td&gt;&lt;td&gt;$22.00 / 1M characters.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;MAI-Voice-2-Flash&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Ultra-low-latency / low-cost TTS&lt;/td&gt;&lt;td&gt;Faster/lower-cost speech use cases Speech / TTS — real-time variant&lt;/td&gt;&lt;td&gt;Future low-latency TTS planning.&lt;/td&gt;&lt;td&gt;Not found.&lt;/td&gt;&lt;td&gt;Not found.&lt;/td&gt;&lt;td&gt;SKU, endpoint, price, and regions are TBA&lt;/td&gt;&lt;td&gt;TBA&lt;/td&gt;&lt;td&gt;Lower cost than MAI-Voice-2 but not announced yet&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;H2 data-line="198"&gt;Transcription, diarization, and captions&lt;/H2&gt;
&lt;P data-line="200"&gt;For files, use&amp;nbsp;/audio/transcriptions&amp;nbsp;rather than a speech-to-speech model. The core Azure OpenAI choices are&amp;nbsp;whisper,&amp;nbsp;gpt-4o-transcribe,&amp;nbsp;gpt-4o-mini-transcribe, and&amp;nbsp;gpt-4o-transcribe-diarize.&lt;/P&gt;
&lt;P data-line="202"&gt;Use&amp;nbsp;gpt-4o-transcribe&amp;nbsp;when accuracy matters most, and&amp;nbsp;gpt-4o-mini-transcribe&amp;nbsp;when cost matters more. Use&amp;nbsp;gpt-4o-transcribe-diarize&amp;nbsp;when a bounded file needs speaker-aware output. It is not a Realtime API model.&lt;/P&gt;
&lt;P data-line="204"&gt;Use Azure Speech batch when files are long, files exceed synchronous limits, word-level timestamps matter, or mature diarization workflows are required. This is also the right place to evaluate customer-controlled storage and retention.&lt;/P&gt;
&lt;P data-line="206"&gt;Use&amp;nbsp;gpt-realtime-whisper&amp;nbsp;or Azure Speech realtime STT for live captions. Use Azure Speech realtime STT when the product needs phrase hints, custom speech tuning, language detection, punctuation, or other Speech service features.&lt;/P&gt;
&lt;P data-line="208"&gt;Use&amp;nbsp;mai-transcribe-1.5&amp;nbsp;when preview multilingual STT with phrase/entity biasing is useful and diarization is not required. Current research records 43 languages, WAV/MP3/FLAC input under 300 MB, optional language forcing, phrase lists, and a&amp;nbsp;transcribeStyle&amp;nbsp;choice for readable or verbatim output.&lt;/P&gt;
&lt;H2 data-line="210"&gt;Text-to-speech and voice assets&lt;/H2&gt;
&lt;P data-line="212"&gt;If text goes in and speech comes out, start with a TTS surface.&lt;/P&gt;
&lt;P data-line="214"&gt;Use&amp;nbsp;gpt-4o-mini-tts&amp;nbsp;when style instructions are important. It supports instructions for accent, emotion, intonation, speed, and similar output qualities. OpenAI docs list voices such as&amp;nbsp;alloy,&amp;nbsp;ash,&amp;nbsp;ballad,&amp;nbsp;coral,&amp;nbsp;echo,&amp;nbsp;fable,&amp;nbsp;nova,&amp;nbsp;onyx,&amp;nbsp;sage,&amp;nbsp;shimmer,&amp;nbsp;verse,&amp;nbsp;marin, and&amp;nbsp;cedar.&lt;/P&gt;
&lt;P data-line="216"&gt;Use legacy&amp;nbsp;tts&amp;nbsp;and&amp;nbsp;tts-hd&amp;nbsp;only with care.&lt;/P&gt;
&lt;P data-line="218"&gt;Use Azure Speech TTS or Custom Neural Voice when voice identity, broad locale support, pronunciation control, or brand voice matters. Use Voice Live when speech output is part of a realtime agent. Use&amp;nbsp;MAI-Voice-2&amp;nbsp;when expressive quality, long-form content, emotion/style, multi-speaker scenarios, or approved voice prompting matter more than ultra-low latency.&lt;/P&gt;
&lt;P data-line="220"&gt;MAI-Voice-2&amp;nbsp;has 18+ languages and 5-60 second recommended reference clips.&lt;/P&gt;
&lt;P data-line="222"&gt;For enterprise design, validate five things in the target tenant: region, deployment type, lifecycle, quota, and price. For Azure Speech features, also validate privacy posture, storage ownership, container support, and compliance scope.&lt;/P&gt;
&lt;H2 data-line="224"&gt;Practical architecture patterns&lt;/H2&gt;
&lt;H3 data-line="226"&gt;Multilingual customer support&lt;/H3&gt;
&lt;P data-line="228"&gt;Use&amp;nbsp;gpt-realtime-translate&amp;nbsp;for live translated speech and translated transcript. Run&amp;nbsp;gpt-realtime-whisper&amp;nbsp;or Azure Speech realtime STT when you also need the original source transcript. Route complex resolution to&amp;nbsp;gpt-realtime-2&amp;nbsp;when deeper reasoning matters. Use Azure Speech batch for durable compliance transcripts, diarization, or word-level timestamps.&lt;/P&gt;
&lt;P data-line="230"&gt;Choose Voice Live when the agent needs managed turn detection, noise suppression, echo cancellation, Azure Speech voices, custom voice, function calling, or avatar output in one surface.&lt;/P&gt;
&lt;H3 data-line="232"&gt;Contact-center voice agent&lt;/H3&gt;
&lt;P data-line="234"&gt;Use Voice Live API with GPT-Realtime, GPT-4o, GPT-4.1, GPT-5 family, Phi, or&amp;nbsp;azure-realtime&amp;nbsp;models. Configure semantic VAD, barge-in, noise suppression, echo cancellation, voice output, and tool calls for account lookup or workflow actions.&lt;/P&gt;
&lt;P data-line="236"&gt;Use WebSocket for server-to-server integration. Evaluate WebRTC preview for browser or mobile client audio. Validate default quota, model tier, custom voice/avatar access, and region.&lt;/P&gt;
&lt;H3 data-line="238"&gt;Meeting transcript and summary&lt;/H3&gt;
&lt;P data-line="240"&gt;Do not use a speech-to-speech model as the source of record. For live captions, use&amp;nbsp;gpt-realtime-whisper&amp;nbsp;or Azure Speech realtime STT. For the durable transcript, use Azure Speech batch when files are large, diarization is needed, or word-level timestamps matter. Use&amp;nbsp;gpt-4o-transcribe-diarize&amp;nbsp;for bounded files when its limits fit.&lt;/P&gt;
&lt;H3 data-line="242"&gt;Voice-enabled chat feature&lt;/H3&gt;
&lt;P data-line="244"&gt;If the user records audio, submits it, and receives an audio answer after a normal turn, start with&amp;nbsp;gpt-audio-mini&amp;nbsp;or&amp;nbsp;gpt-audio-1.5. It is simpler than a realtime session. Do not use this path if users expect live interruption.&lt;/P&gt;
&lt;H3 data-line="246"&gt;Branded speech asset pipeline&lt;/H3&gt;
&lt;P data-line="248"&gt;Use&amp;nbsp;gpt-4o-mini-tts&amp;nbsp;when style instructions are useful. Use Azure Speech TTS, Custom Neural Voice, HD voices, or&amp;nbsp;MAI-Voice-2&amp;nbsp;when voice identity, language coverage, pronunciation control, or long-form quality matters. Validate consent, access controls, voice availability, and pricing before launch.&lt;/P&gt;
&lt;H3 data-line="250"&gt;Regulated transcript or on-prem speech&lt;/H3&gt;
&lt;P data-line="252"&gt;Start from the data boundary, not the model name. Azure Speech batch can keep input and output files in customer-controlled Azure Storage. Speech containers can support customer-managed or on-premises processing for supported features. Validate container availability, feature coverage, region, pricing, and compliance scope.&lt;/P&gt;
&lt;H2 data-line="254"&gt;Next steps&lt;/H2&gt;
&lt;P data-line="256"&gt;If you are choosing a speech architecture now:&lt;/P&gt;
&lt;OL data-line="258"&gt;
&lt;LI data-line="258"&gt;&lt;STRONG&gt;Prototype the transport first.&lt;/STRONG&gt;&amp;nbsp;Build the smallest WebSocket, WebRTC, Speech SDK streaming, REST transcription, TTS, container, or batch proof of concept that matches the user interaction.&lt;/LI&gt;
&lt;LI data-line="259"&gt;&lt;STRONG&gt;Validate availability in your tenant.&lt;/STRONG&gt;&amp;nbsp;Check model region, deployment type, lifecycle, quota, price, resource type, and compliance posture.&lt;/LI&gt;
&lt;LI data-line="260"&gt;&lt;STRONG&gt;Test the failure mode that matters.&lt;/STRONG&gt;&amp;nbsp;For voice agents, test interruption and noisy audio. For transcripts, test diarization and timestamps. For TTS, test pronunciation, voice identity, and long-form quality.&lt;/LI&gt;
&lt;/OL&gt;
&lt;H2 data-line="262"&gt;Source-of-truth docs&lt;/H2&gt;
&lt;UL data-line="264"&gt;
&lt;LI data-line="264"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/foundry/openai/how-to/realtime-audio" data-href="https://learn.microsoft.com/en-us/azure/foundry/openai/how-to/realtime-audio" target="_blank"&gt;Use the GPT Realtime API for speech and audio&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="265"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/voice-live" data-href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/voice-live" target="_blank"&gt;Voice Live API overview&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="266"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/voice-live-how-to" data-href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/voice-live-how-to" target="_blank"&gt;How to use the Voice Live API&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="267"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/voice-live-language-support" data-href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/voice-live-language-support" target="_blank"&gt;Voice Live language support&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="268"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/voice-live-webrtc" data-href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/voice-live-webrtc" target="_blank"&gt;Voice Live WebRTC preview&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="269"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/foundry/openai/audio-completions-quickstart" data-href="https://learn.microsoft.com/en-us/azure/foundry/openai/audio-completions-quickstart" target="_blank"&gt;Azure OpenAI audio generation quickstart&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="270"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/foundry/openai/reference" data-href="https://learn.microsoft.com/en-us/azure/foundry/openai/reference" target="_blank"&gt;Azure OpenAI REST API reference&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="271"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/foundry/openai/whisper-quickstart" data-href="https://learn.microsoft.com/en-us/azure/foundry/openai/whisper-quickstart" target="_blank"&gt;Azure OpenAI Whisper quickstart&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="272"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/batch-transcription-create" data-href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/batch-transcription-create" target="_blank"&gt;Create a batch transcription&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="273"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/speech-translation" data-href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/speech-translation" target="_blank"&gt;Speech translation overview&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="274"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/mai-transcribe" data-href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/mai-transcribe" target="_blank"&gt;MAI-Transcribe in LLM Speech API&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="275"&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/mai-voices" data-href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/mai-voices" target="_blank"&gt;MAI-Voice&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="276"&gt;&lt;A href="https://azure.microsoft.com/en-us/pricing/details/cognitive-services/openai-service/" data-href="https://azure.microsoft.com/en-us/pricing/details/cognitive-services/openai-service/" target="_blank"&gt;Azure OpenAI pricing&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;H2 data-line="278"&gt;Get started&lt;/H2&gt;
&lt;UL data-line="280"&gt;
&lt;LI data-line="280"&gt;&lt;A href="https://playground.microsoft.ai/" data-href="https://playground.microsoft.ai/" target="_blank"&gt;MAI Playground | Microsoft AI&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="281"&gt;&lt;A href="https://ai.azure.com/" data-href="https://ai.azure.com/" target="_blank"&gt;Foundry | Microsoft Foundry&lt;/A&gt;&lt;/LI&gt;
&lt;LI data-line="282"&gt;&lt;A href="https://speech.microsoft.com/portal" data-href="https://speech.microsoft.com/portal" target="_blank"&gt;Spech Studio | Legacy Portal&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;</description>
      <pubDate>Thu, 16 Jul 2026 14:00:00 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/choose-the-right-speech-and-voice-model/ba-p/4533856</guid>
      <dc:creator>Anil_Korkut</dc:creator>
      <dc:date>2026-07-16T14:00:00Z</dc:date>
    </item>
    <item>
      <title>Answers You Can Trust: Grounding Enterprise Agents with Foundry IQ</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/answers-you-can-trust-grounding-enterprise-agents-with-foundry/ba-p/4536594</link>
      <description>&lt;P&gt;Enterprise AI has a trust problem, and it is not about fluency. A model will answer almost any question with confidence, whether or not it actually knows. The moment a legal or support team catches it inventing a policy that does not exist, they stop trusting it for anything that matters. What makes an enterprise agent useful is not how well it writes. It is whether every answer comes from your own knowledge and shows where it came from.&lt;/P&gt;
&lt;P&gt;That shifts the hard part of the work from the model to the grounding, and the industry now treats it that way. The trajectory is clear: by 2030, &lt;A href="https://www.gartner.com/en/newsroom/press-releases/2026-03-11-gartner-announces-top-predictions-for-data-and-analytics-in-2026" target="_blank"&gt;universal semantic layers will be treated as critical infrastructure&lt;/A&gt;, alongside data platforms and cybersecurity. The shared, governed layer of meaning that lets an agent answer in your business terms is moving from nice-to-have to non-negotiable foundation. The differentiator is no longer the base model. It is how well the system is grounded in what only your organization knows, and how tightly that grounding is governed.&lt;/P&gt;
&lt;H2&gt;Why Ungrounded AI Fails Enterprises&lt;/H2&gt;
&lt;P&gt;A raw model answers from a fixed snapshot of public text. That is fine for general knowledge and useless for your policies, your contracts, and your product specifics, none of which were in its training data. Ask it something particular to your business and it still answers, just from the nearest pattern it has seen. That is how you get a confident paragraph citing a policy you never wrote.&lt;/P&gt;
&lt;P&gt;The failure has three parts, and they compound. Coverage: the model does not have your internal knowledge, so instead of admitting the gap it answers from its training and hallucinates, a fluent, confident paragraph that happens to be wrong. Traceability: even when it happens to be right, nothing points to a source, so no one can verify it and no auditor will accept it. Permissions: a system that pools every document into one searchable pile will surface a salary letter or an unreleased contract to whoever asks, because the model has no idea who is on the other side.&lt;/P&gt;
&lt;P&gt;Grounding fixes all three at once, and it is more than pasting documents into a prompt. Done properly it means retrieving the right passages from your live corpus, answering only from them, showing the citation, and enforcing each user's permissions at the moment of retrieval.&lt;/P&gt;
&lt;H2&gt;What Grounding Actually Takes&lt;/H2&gt;
&lt;P&gt;Fixing all three takes a dedicated knowledge layer, the part of the system that retrieves the right passages from your content and hands the model only what it can cite. &lt;A class="lia-external-url" href="https://aka.ms/gpt-rag" target="_blank"&gt;GPT-RAG&lt;/A&gt; is an open-source solution accelerator you deploy in your own Azure subscription, and its knowledge layer is Microsoft Foundry IQ. When a user asks a question, the agent does not recall an answer from training. It runs agentic retrieval over your own content.&lt;/P&gt;
&lt;P&gt;Agentic retrieval breaks the question into parts, searches your sources in parallel, reranks the candidates for relevance, and answers only from the passages that come back, each carrying a citation. That is what separates it from a basic search-and-stuff pipeline, and it is what makes an answer both grounded and verifiable.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;img&gt;&lt;EM&gt;One question becomes focused subqueries, runs in parallel across your sources, and is reranked so the model answers only from the top cited passages&lt;/EM&gt;&lt;/img&gt;
&lt;H2&gt;A Concrete Example: One Question, One Cited Answer&lt;/H2&gt;
&lt;P&gt;Take the question straight from the demo. A signed-in user opens the agent and asks: “In which model year did VW introduce the electronic fuel injection system?”&lt;/P&gt;
&lt;P&gt;A large model might guess this correctly from something it read on the public web, and that guess is exactly the dependency we want to remove. In the demo the answer lives in a specific engineering document we control, and the whole point is that the agent answers from that document rather than from whatever the model happens to remember. So instead of guessing, it retrieves the relevant passage and composes a short, direct answer: VW introduced the system on its 1975 models. Next to the answer sits a blue citation, vw-fuel-system.pdf, the exact source the answer was built from.&lt;/P&gt;
&lt;P&gt;Two things happened there that a plain search box cannot do. The answer is grounded, so it comes from your document rather than the model's memory, and it is cited, so the reader can open the source document behind it and confirm it. It is also permission-aware: retrieval ran as that specific user, so the document was only in play because they were allowed to see it. Change the user and the same question can return a different set of sources, or none, with no special prompting.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;div data-video-id="https://www.youtube.com/watch?v=Gi_i8rDuT-Y&amp;amp;vq=hd1080/1783963116869" data-video-remote-vid="https://www.youtube.com/watch?v=Gi_i8rDuT-Y&amp;amp;vq=hd1080/1783963116869" class="lia-video-container lia-media-is-center lia-media-size-large"&gt;&lt;iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FGi_i8rDuT-Y%3Ffeature%3Doembed&amp;amp;display_name=YouTube&amp;amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DGi_i8rDuT-Y&amp;amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FGi_i8rDuT-Y%2Fhqdefault.jpg&amp;amp;type=text%2Fhtml&amp;amp;schema=youtube" allowfullscreen="" style="max-width: 100%"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;P&gt;&lt;EM&gt;One question, answered end to end, grounded in the source and shown with its citation.&lt;/EM&gt;&lt;/P&gt;
&lt;H2&gt;What Foundry IQ Actually Does&lt;/H2&gt;
&lt;P&gt;Foundry IQ is the knowledge layer that sits behind your agents. Instead of every application building and maintaining its own retrieval stack, the chunking, the indexing, and a separate connector for each source, you define a Knowledge Base once and reuse it. It runs on Azure AI Search, and Microsoft ships it as a first-party, SLA-backed retrieval service, so you inherit a supported engine rather than hand-rolled plumbing. As of Build 2026, Foundry IQ knowledge bases are generally available.&lt;/P&gt;
&lt;P&gt;A Knowledge Base connects one or more &lt;A href="https://learn.microsoft.com/en-us/azure/search/agentic-knowledge-source-overview" target="_blank"&gt;knowledge sources&lt;/A&gt;, and those sources come in two flavors. Indexed sources are your content pre-processed into a searchable index. Point the Knowledge Base at your corpus, the files in Blob Storage and the content indexed in AI Search, and that corpus becomes the ground truth the agent answers from. Remote sources are live systems the Knowledge Base queries at retrieval time instead of indexing up front. Because sources are configuration and not code, extending what the agent knows is a matter of connecting another source, not rebuilding the app.&lt;/P&gt;
&lt;P&gt;Those remote sources go beyond documents. The same Knowledge Base can connect a Fabric ontology that captures how your business entities relate, Fabric data agents that answer from live systems, and Work IQ for a person's Microsoft 365 context, so structured, up-to-the-minute signals ground the agent alongside your indexed files.&lt;/P&gt;
&lt;P&gt;When you are ready to wire this up yourself, GPT-RAG's &lt;A href="https://azure.github.io/GPT-RAG/howto_grounding_overview/" target="_blank"&gt;grounding sources overview&lt;/A&gt; is the operator guide. It walks through each supported source kind and the concrete steps to enable it on your Knowledge Base.&lt;/P&gt;
&lt;P&gt;The intelligence is in how it retrieves. Basic retrieval throws your raw question at a single index and hopes the top hits are relevant. Agentic retrieval treats the question as a task: it decomposes a complex query, searches the sources in parallel, reranks the candidates by relevance, and hands the model a focused, well-ordered set of passages to work from. Microsoft continues to ship quality improvements to this path, and it is the layer that turns “the model said so” into “here is the source.”&lt;/P&gt;
&lt;P&gt;Permissions are enforced at query time. The agent forwards the signed-in user's identity to retrieval as an on-behalf-of token, so the Knowledge Base trims results to what that person is allowed to see before the model receives anything. This is document-level security enforced on the retrieval side, not a filter the model could quietly skip. Two people can ask the identical question and get answers built from two correctly scoped views of the same corpus.&lt;/P&gt;
&lt;H2&gt;Beyond Documents: Where Work IQ and Fabric IQ Fit&lt;/H2&gt;
&lt;P&gt;Foundry IQ is one member of a family that Microsoft groups under Microsoft IQ, its intelligence layer for connecting knowledge to agents. Three grounding domains matter for an enterprise agent, because they answer three different kinds of question. The split is what separates an agent that knows “what is our refund policy” from one that also knows “what is on my calendar” and “what did we sell last quarter.”&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Foundry IQ&lt;/STRONG&gt; grounds on your authoritative content: the policies, product documentation, and reference material you curate into a corpus. It is the shared organizational source of truth, and it is what the demo above runs on.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Work IQ&lt;/STRONG&gt; grounds on how your people actually work. It reaches into Microsoft 365, the mail, meetings, chats, files, and the org graph, to answer questions about a person's own work, like “what meetings do I have about Project Falcon” or “who owns the billing integration.” Every result is trimmed to what that signed-in user is already permitted to see.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Fabric IQ&lt;/STRONG&gt; grounds on the state of the business. It sits over governed analytics in Microsoft Fabric and OneLake and answers questions about your numbers and your business entities, like “what were Q3 sales by region” or “how is Contoso related to Shipment 8842.” The answer comes back tied to a live semantic model, not a spreadsheet someone exported last month.&lt;/P&gt;
&lt;P&gt;These are complementary, not competing, and you have more than one way to bring them into your agent. The choice comes down to how tightly a domain needs to sit inside your Knowledge Base retrieval.&lt;/P&gt;
&lt;P&gt;Reach for the Foundry IQ path when you want one grounded answer that fuses everything at once. Along with your documents, a Knowledge Base can connect a Fabric ontology, Fabric data agents, and Work IQ as additional knowledge sources. The agent then makes a single retrieval call across content, structured business context, live systems, and a person's Microsoft 365 work, all with the same citations and on-behalf-of security. This is the right default when documents are the anchor and the other signals should co-retrieve with them.&lt;/P&gt;
&lt;P&gt;Reach for Fabric IQ as a tool call when analytics is a separate question, not part of the same retrieval. Fabric IQ is a first-party grounding tool inside the Microsoft Foundry Agent Service. The agent decides to invoke it when the user asks something quantitative, and it queries governed analytics in OneLake alongside what the Knowledge Base returns. Use this when the analytics answer stands on its own and shouldn't be blended into every document lookup.&lt;/P&gt;
&lt;P&gt;Reach for Work IQ via Agent-to-Agent (A2A) when you want to delegate a task rather than pull raw context. The agent hands off a natural-language request like “summarize my recent emails about Project Contoso,” and Work IQ handles retrieval, reasoning, and response synthesis against the user's Microsoft 365 data on their behalf. Use this when Work IQ's own reasoning over M365 is the answer you want, not just its retrieved snippets.&lt;/P&gt;
&lt;P&gt;Foundry IQ stays the central knowledge layer for your content. Fabric IQ and Work IQ (both in public preview) extend that with analytics and workplace context when a use case calls for it, and you can still point Foundry IQ at a single source when that is all you need.&lt;/P&gt;
&lt;H2&gt;The Azure Services Doing the Work&lt;/H2&gt;
&lt;P&gt;Underneath the interface, GPT-RAG is the orchestrator. It owns the whole flow: it authenticates the user, forwards their identity to retrieval, calls the Foundry IQ Knowledge Base, and shapes the grounded, cited answer that comes back. It leans on a few Azure services to do this, and one of them does most of the retrieval work.&lt;/P&gt;
&lt;P&gt;Azure AI Search hosts the Foundry IQ Knowledge Base. It holds the connection to your sources, runs agentic retrieval, enforces per-user permissions on the query, and returns passages with the metadata that becomes citations. The grounding story rests on this component.&lt;/P&gt;
&lt;P&gt;The orchestrator is the coordinator. It takes the user's question and identity, acquires the on-behalf-of token, and calls the retrieve API. The passages that come back become the only material the model is allowed to answer from, and each one carries a source label that turns into a clickable citation. It then calls a chat model through a Microsoft Foundry endpoint to compose the final answer from those passages and nothing else.&lt;/P&gt;
&lt;P&gt;Microsoft Entra ID is what makes the security real rather than cosmetic. People sign in, and their identity is what flows through the on-behalf-of token into retrieval, so document-level trimming runs against a real principal. The application itself runs on Azure Container Apps, with its dependencies reached over the network rather than exposed to the public internet.&lt;/P&gt;
&lt;img&gt;&lt;EM&gt;One retrieval path: GPT-RAG on Container Apps, the Foundry IQ Knowledge Base on Azure AI Search, and the IQ knowledge sources it grounds on&lt;/EM&gt;&lt;/img&gt;
&lt;H2&gt;Built for the Enterprise&lt;/H2&gt;
&lt;P&gt;A grounded answer is worth little if the system holding your most sensitive content is not one your security team will approve. That is where most demos quietly stop.&lt;/P&gt;
&lt;P&gt;GPT-RAG is built to deploy on the &lt;A href="https://aka.ms/ai-lz" target="_blank"&gt;Azure AI Landing Zone&lt;/A&gt;, Microsoft's reference architecture for AI workloads under a Zero Trust posture.&lt;/P&gt;
&lt;P&gt;Every dependency, from AI Search and Microsoft Foundry to storage, is reached through a private endpoint inside a virtual network. Public traffic enters through a gateway with a web application firewall, and outbound traffic is forced through a firewall. Nothing talks to the public internet unless you deliberately allow it.&lt;/P&gt;
&lt;P&gt;Pair that network isolation with document-level security at retrieval and you get the property enterprises actually need: the perimeter is locked down, and even inside it, every answer still respects the permissions your files already carry.&lt;/P&gt;
&lt;H2&gt;Try It Yourself&lt;/H2&gt;
&lt;P&gt;Getting a grounded agent running is a single azd up. The command provisions the Azure resources, deploys the orchestrator and the UI, and hands you a working agent. Point the Knowledge Base at your own documents, sign in, and ask your first question. For production, deploy GPT-RAG on the Azure AI Landing Zone for the network-isolated topology. The&amp;nbsp;&lt;A href="https://azure.github.io/GPT-RAG/deploy/" target="_blank"&gt;deployment guide&lt;/A&gt; has the preflight checks and the step-by-step, from a basic deployment to the network-isolated one.&lt;/P&gt;
&lt;H2&gt;From a Cited Answer to a Trusted Agent&lt;/H2&gt;
&lt;P&gt;The payoff is not a single impressive answer. It is what changes when trust stops depending on the model's confidence and starts depending on evidence. When every answer arrives grounded in your content, cited to its source, and scoped to the person asking, the agent moves out of the demo category and into the small set of systems a compliance team can approve. Foundry IQ makes that shift possible, and Work IQ and Fabric IQ extend it from your documents to your work and your numbers.&lt;/P&gt;
&lt;P&gt;Deploy GPT-RAG, point it at your corpus, and ask it something only your data can answer.&lt;/P&gt;
&lt;H2&gt;References&lt;/H2&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="https://github.com/Azure/GPT-RAG" target="_blank"&gt;GPT-RAG solution accelerator&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://devblogs.microsoft.com/foundry/whats-new-in-microsoft-foundry-build-2026/" target="_blank"&gt;What's new in Microsoft Foundry, Build 2026&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/foundry/agents/concepts/what-is-foundry-iq" target="_blank"&gt;What is Foundry IQ&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/search/search-agentic-retrieval-concept" target="_blank"&gt;Agentic retrieval in Azure AI Search&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/en-us/microsoft-iq/" target="_blank"&gt;Microsoft IQ&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/en-us/microsoft-365/copilot/extensibility/work-iq/" target="_blank"&gt;Work IQ&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://learn.microsoft.com/en-us/fabric/iq/overview" target="_blank"&gt;Fabric IQ overview&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://aka.ms/ai-lz" target="_blank"&gt;Azure AI Landing Zone&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="https://www.gartner.com/en/newsroom/press-releases/2026-03-11-gartner-announces-top-predictions-for-data-and-analytics-in-2026" target="_blank"&gt;Gartner, “Top Predictions for Data and Analytics in 2026” (March 11, 2026)&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;</description>
      <pubDate>Wed, 15 Jul 2026 20:00:00 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/answers-you-can-trust-grounding-enterprise-agents-with-foundry/ba-p/4536594</guid>
      <dc:creator>Paulo_Lacerda</dc:creator>
      <dc:date>2026-07-15T20:00:00Z</dc:date>
    </item>
    <item>
      <title>Implementing Multi‑Agent Orchestration in Microsoft Copilot Studio</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/implementing-multi-agent-orchestration-in-microsoft-copilot/ba-p/4494717</link>
      <description>&lt;P&gt;As organizations move beyond simple Q&amp;amp;A copilots, a common challenge quickly emerges: single agents struggle to handle multi-step, cross-domain scenarios. In our work with customers using Microsoft Copilot Studio, this shows up when copilots are expected to combine reasoning, real-time data, and domain-specific rules, such as troubleshooting workflows, aggregating system insights, or synthesizing information from multiple business areas.&lt;/P&gt;
&lt;P&gt;Multi-agent orchestration addresses this challenge by allowing copilots to delegate work to specialized agents while keeping a single decision layer. In this post, we’ll share a practical orchestrator–specialist pattern implemented in Microsoft Copilot Studio, based on real customer engagements. We’ll walk through how the architecture works, why teams adopt it, and how to validate agent collaboration using built-in tools like the Activity Map.&lt;/P&gt;
&lt;H3&gt;Why Multi‑Agent Orchestration Matters&lt;/H3&gt;
&lt;P&gt;Teams typically adopt orchestrator patterns in Copilot Studio because they want:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Composability&lt;/STRONG&gt; — break down complex tasks into smaller, specialized agents (finance, HR, ITSM, etc.)&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Governance&lt;/STRONG&gt; — each specialist agent is owned by its respective domain team, enabling safer lifecycle management&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Reusability&lt;/STRONG&gt; — specialist agents can be consumed by multiple copilots without re-creating logic&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Observability &amp;amp; control&lt;/STRONG&gt; — the orchestrator acts as a single decision layer, with activity maps showing which agent was invoked&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Enterprise scalability&lt;/STRONG&gt; — enables teams to scale to dozens of agents while maintaining consistent guardrails&lt;/LI&gt;
&lt;/UL&gt;
&lt;H3&gt;How the Architecture Works&lt;/H3&gt;
&lt;P&gt;A typical multi‑agent setup in Copilot Studio uses:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;One orchestrator agent&lt;/STRONG&gt;: Routes user intent and synthesizes final answers&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Multiple specialist agents&lt;/STRONG&gt;: Each provides a single domain capability&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Agent Actions&lt;/STRONG&gt;: The mechanism that allows one agent to call another cleanly&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;In our demo:&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Role&lt;/th&gt;&lt;th&gt;Agent&lt;/th&gt;&lt;th&gt;Responsibility&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Orchestrator&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;Life Assistant Agent&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Intent classification, routing, synthesis&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Specialist&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;Weather Agent&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Weather lookup, forecast, location-specific data&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Specialist&lt;/td&gt;&lt;td&gt;&lt;STRONG&gt;Travel Assistant Agent&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Trip suggestions, planning, transportation info&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;H3&gt;Step 1 - Create Specialized Agents ("Skills")&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Weather Agent&lt;/STRONG&gt;
&lt;OL&gt;
&lt;LI&gt;Open your&amp;nbsp;&lt;STRONG&gt;Copilot Studio&lt;/STRONG&gt; agent&lt;/LI&gt;
&lt;LI&gt;Go to the&amp;nbsp;&lt;STRONG&gt;Knowledge&lt;/STRONG&gt;&amp;nbsp;tab&lt;/LI&gt;
&lt;LI&gt;Select&amp;nbsp;&lt;STRONG&gt;Add knowledge&lt;/STRONG&gt;, choose &lt;STRONG&gt;Public websites&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;img /&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;4. Provide the website url which is used to query the weather information(ex - www.weather.com/)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;5. Provide the description accordingly&lt;/P&gt;
&lt;img /&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Note:&lt;/STRONG&gt; You can add more websites if required.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Travel Assistant Agent&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; The setup steps of this agent is similar to the Weather agent and the only difference is that we need to provide traveling related websites which is used to provide trip suggestions, planning and transportation info.&lt;/P&gt;
&lt;img /&gt;
&lt;H3&gt;Step 2 - Create Orchestrator Agent&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Life Assistant Agent&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;OL&gt;
&lt;LI&gt;Open your&amp;nbsp;&lt;STRONG&gt;Copilot Studio&lt;/STRONG&gt; agent&lt;/LI&gt;
&lt;LI&gt;Go to the &lt;STRONG&gt;Agents &lt;/STRONG&gt;tab&lt;/LI&gt;
&lt;LI&gt;Select &lt;STRONG&gt;Add an agent&lt;/STRONG&gt;, choose the agent created in &lt;STRONG&gt;step 1&lt;/STRONG&gt;&lt;/LI&gt;
&lt;LI&gt;Provide the&lt;STRONG&gt; name &lt;/STRONG&gt;and &lt;STRONG&gt;description&lt;/STRONG&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;/LI&gt;
&lt;/OL&gt;
&lt;img /&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 5. Follow same above steps to add another agent&lt;/P&gt;
&lt;img /&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;6. In the overview page add instructions of how to intelligently delegates tasks to its specialist sub‑agents&lt;/P&gt;
&lt;img /&gt;
&lt;H3&gt;Step 3 - Test Steps (End-to-End Validation)&lt;/H3&gt;
&lt;P&gt;Open the&amp;nbsp;&lt;STRONG&gt;Test copilot&lt;/STRONG&gt; pane and ask for suggestions for your travelling destination, such as:&lt;/P&gt;
&lt;P&gt;"I will travel to Beijing this weekend, provide me the travelling plan based on the weather forecast"&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Expected result:&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;The Life Assistant acknowledges it needs weather + travel insights&lt;/LI&gt;
&lt;LI&gt;Activity Map shows your orchestrator routing correctly before calling any sub‑agents&lt;/LI&gt;
&lt;LI&gt;Weather data appears in the Life Assistant’s intermediate reasoning&lt;/LI&gt;
&lt;LI&gt;Travel recommendations reflect weather conditions&lt;/LI&gt;
&lt;/OL&gt;
&lt;img /&gt;
&lt;H3&gt;Conclusion&lt;/H3&gt;
&lt;P&gt;Multi-agent orchestration in Microsoft Copilot Studio offers a practical way to build copilots that can reason, route, and collaborate across domains without becoming difficult to govern. By separating responsibilities between an orchestrator agent and domain-owned specialist agents, teams can scale functionality while maintaining clear ownership, reuse, and operational visibility.&lt;/P&gt;
&lt;P&gt;From an enterprise perspective, this pattern mirrors how organizations already work: domain teams manage their expertise, while a central orchestration layer ensures consistent behavior and policy enforcement. For makers and developers, it demonstrates how far you can go using Copilot Studio’s native agent and action model without custom orchestration codes required. As copilots take on more complex, real-world scenarios, this architecture becomes a strong foundation rather than an advanced option.&lt;/P&gt;
&lt;H3&gt;Acknowledgements&lt;/H3&gt;
&lt;P&gt;We extend our sincere appreciation to the broader Cloud Accelerate Factory GCR team for their valuable contributions, insights, and close collaboration in validating this pattern across multiple customer engagements. Special thanks go to our AI Architects— Dr. &lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="1681544" data-lia-user-login="HeZhang" class="lia-mention lia-mention-user"&gt;HeZhang​&lt;/a&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt; Dr. &lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="3058861" data-lia-user-login="LongyuQi" class="lia-mention lia-mention-user"&gt;LongyuQi​&lt;/a&gt;&amp;nbsp;, &amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="3371390" data-lia-user-login="JasonShao" class="lia-mention lia-mention-user"&gt;JasonShao​&lt;/a&gt;&amp;nbsp;, and &lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="3365512" data-lia-user-login="EthanTseng" class="lia-mention lia-mention-user"&gt;EthanTseng​&lt;/a&gt;&amp;nbsp;—as well as our PM partners, &lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="3354256" data-lia-user-login="RayneJin" class="lia-mention lia-mention-user"&gt;RayneJin​&lt;/a&gt;&amp;nbsp; and &lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="3365543" data-lia-user-login="EmmaWang" class="lia-mention lia-mention-user"&gt;EmmaWang​&lt;/a&gt;. Their thoughtful feedback and extensive field experience were instrumental in shaping and refining this guide.&lt;/P&gt;
&lt;H3&gt;Next steps&lt;/H3&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/authoring-add-other-agents" target="_blank" rel="noopener"&gt;Add other agents overview&lt;/A&gt;.&lt;/LI&gt;
&lt;LI&gt;&lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/guidance/multi-agent-patterns" target="_blank" rel="noopener"&gt;Multi-agent orchestration patterns and best practices&lt;/A&gt;.&lt;/LI&gt;
&lt;/UL&gt;</description>
      <pubDate>Wed, 15 Jul 2026 18:35:54 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/implementing-multi-agent-orchestration-in-microsoft-copilot/ba-p/4494717</guid>
      <dc:creator>LeoMa</dc:creator>
      <dc:date>2026-07-15T18:35:54Z</dc:date>
    </item>
    <item>
      <title>Microsoft Foundry Model Deployment Pricing Update</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/microsoft-foundry-model-deployment-pricing-update/ba-p/4535385</link>
      <description>&lt;P&gt;&lt;SPAN data-olk-copy-source="MessageBody"&gt;Running AI workloads in specific regions—whether for compliance, latency, or data residency—now comes with more options and clearer pricing. Starting September 1, 2026, Microsoft Foundry is updating pricing for EU Data Zone and Regional deployments outside the US, while also launching a new&lt;/SPAN&gt;&amp;nbsp;&lt;U&gt;&lt;A href="http://aka.ms/FoundryAgentsRun" target="_blank" rel="noopener"&gt;APAC Data Zone&lt;/A&gt;&lt;/U&gt;&lt;SPAN data-olk-copy-source="MessageBody"&gt;&amp;nbsp;to serve customers across Asia-Pacific.&lt;/SPAN&gt; &lt;SPAN data-olk-copy-source="MessageBody"&gt;Foundry continues to expand your options across cost, performance, and data residency. Because delivering AI within a specific geography at high availability costs more than a shared global pool, the updated pricing reflects both that investment and the compliance value these options provide.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-olk-copy-source="MessageBody"&gt;&lt;STRONG data-olk-copy-source="MessageBody"&gt;TL;DR key changes:&lt;/STRONG&gt; Global pricing stays the same. EU Data Zone increases 9% above Global. Regional deployments outside the US increase to 7-16% above Global. New APAC Data Zone launches at 20% above Global. Changes apply September 1, 2026&lt;/SPAN&gt;&lt;/P&gt;
&lt;H1&gt;&lt;STRONG&gt;Pricing Update starting September 1, 2026&lt;/STRONG&gt;&lt;/H1&gt;
&lt;P&gt;Running AI in a specific geography or country, at high availability, costs more than running in a shared global pool. To reflect that, pricing for Data Zone and Regional deployments outside of the United States is increasing on September 1, 2026*. Global pricing stays the same and remains your most cost-efficient choice.&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;U&gt;Table 1: Pricing Update starting September 1, 2026&lt;/U&gt;&lt;/H2&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Deployment&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Price vs. Global&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;What’s changing&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;Global&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Same&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;No change&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;APAC Data Zone (new)&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;20% higher&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Newly available&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;EU Data Zone&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;20% higher&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Increasing by 9%&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;US Data Zone&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;10% higher&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;No change&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;Regional — US&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;10% higher&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;No change&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;Regional — outside the US&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;25% – 50% higher&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Increasing by 7%-16% &lt;BR /&gt;depending on you region&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;H2&gt;&lt;U&gt;Table 2: Regional pricing effective September 1, 2026 (price relative to Global**)&amp;nbsp;&lt;/U&gt;&lt;/H2&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;New price vs. Global&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;Regions&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;+25%&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Australia, India, Indonesia***, Malaysia***, New Zealand***&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;+30%&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Austria***, Belgium***, Canada, Denmark***, Germany, Italy, Mexico, Poland, South Africa, Spain, Sweden, Switzerland, UAE&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;+35%&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Japan, Korea, Taiwan***&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;+40%&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;France, Hong Kong, Israel***, Norway, Qatar, UK&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;+50%&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;Brazil, EU North, EU West, Singapore&amp;nbsp;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 50.00%" /&gt;&lt;col style="width: 50.00%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;EM&gt;*How the change applies:&lt;/EM&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;Standard (pay as you go): the planned premiums apply only to models launched on or after September 1, 2026. Customers who stay on their current models see no price increase; the higher EU Data Zone and Regional premiums apply only when they move to a model launched on or after September 1, 2026. &lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;EM&gt;Provisioned Throughput (PTU): the increase applies to all customers with EU Data Zone or Regional PTUs outside of the US.&lt;/EM&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;P&gt;For PTU, prices relative to Global are for monthly and yearly reservations. Hourly PTU prices relative to Global might differ.&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;EM&gt;**&lt;/EM&gt; &lt;EM&gt;For Data Zone and Regional deployments, price premiums are relative to Global pricing. Please see &lt;/EM&gt;&lt;A href="https://azure.microsoft.com/en-us/products/ai-foundry/models/openai/#pricing" target="_blank" rel="noopener"&gt;&lt;EM&gt;Azure pricing page&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt; for most current rates.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;***Newly available regions at this price (no prior rate).&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;For exact, current rates by model and deployment type, see the &lt;/EM&gt;&lt;A href="https://azure.microsoft.com/en-us/products/ai-foundry/models/openai/#pricing" target="_blank" rel="noopener"&gt;&lt;EM&gt;Azure pricing page&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;. &lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;Learn more about Foundry model deployment types and regions &lt;/EM&gt;&lt;A href="https://learn.microsoft.com/en-us/azure/foundry/concepts/deployments-overview" target="_blank" rel="noopener"&gt;&lt;EM&gt;here&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;.&amp;nbsp;&lt;/EM&gt;&lt;/P&gt;
&lt;H1&gt;&lt;STRONG&gt;More Options across cost, performance, and data residency &lt;/STRONG&gt;&lt;/H1&gt;
&lt;P&gt;Foundry’s core differentiator is choice. Foundry aims to be your platform of choice providing a single suite of offers that span not only models, performance tiers but also data processing requirements. This enables you to have control over your data all within the same, common code.&lt;/P&gt;
&lt;P&gt;Here is where your requests can run:&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Global&lt;/STRONG&gt; — processing runs wherever Microsoft’s global infrastructure has capacity, built for agility and cost-efficiency.&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Data Zone (US, EU, and now &lt;A href="http://aka.ms/FoundryAgentsRun" target="_blank" rel="noopener"&gt;APAC&lt;/A&gt; &lt;/STRONG&gt;— processing stays within the selected geography to support regional data residency requirements.&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Regional&lt;/STRONG&gt; — processing stays in-country for the strictest requirements.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;How you run is a differentiator too. Choose &lt;STRONG&gt;Standard&lt;/STRONG&gt; for flexible, agile, and economical scaling, &lt;STRONG&gt;Priority Processing &lt;/STRONG&gt;for low-latency real-time apps, &lt;STRONG&gt;Provisioned Throughput&lt;/STRONG&gt; (PTU) for predictable performance at scale, or &lt;STRONG&gt;Batch &lt;/STRONG&gt;for high-volume jobs at the lowest cost of the four options. You can mix and match per workload.&amp;nbsp;The &lt;A href="https://www.youtube.com/watch?v=eCS00D0UHdo" target="_blank" rel="noopener"&gt;instant model deployment experience&lt;/A&gt; is designed to reduce the setups friction so developers can go from model selection to first inference faster.&lt;/P&gt;
&lt;P&gt;Foundry also keeps getting more efficient. &lt;STRONG&gt;&lt;A href="https://www.youtube.com/watch?v=_HrL3TubGbI" target="_blank" rel="noopener"&gt;The model router in Foundry Models&lt;/A&gt;&lt;/STRONG&gt; matches each request to the most appropriate model, balancing quality, latency, and cost. &lt;A href="https://learn.microsoft.com/en-us/azure/foundry/openai/how-to/prompt-caching" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;Prompt Caching&lt;/STRONG&gt;&lt;/A&gt; cuts redundant computation for recurring and long context interactions. &lt;A href="https://learn.microsoft.com/en-us/azure/foundry/openai/how-to/spillover-traffic-management?tabs=portal" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;PTU Spillover&lt;/STRONG&gt;&lt;/A&gt; and &lt;A href="https://www.youtube.com/watch?v=tYD_NYaHik4" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;quota optimization&lt;/STRONG&gt;&lt;/A&gt; preserve service continuity through usage spikes. Together, these capabilities are designed to improve token efficiency, reduce compute cost, and shift more tuning into the platform rather than manual work.&lt;/P&gt;
&lt;P&gt;Learn &lt;A href="https://www.youtube.com/watch?v=U1f3aXZMyVQ" target="_blank" rel="noopener"&gt;how to optimize model deployment and performance in Microsoft Foundry&lt;/A&gt;.&lt;/P&gt;
&lt;H1&gt;&lt;STRONG&gt;Choosing where AI processing happens&lt;/STRONG&gt;&lt;/H1&gt;
&lt;P&gt;Where your AI requests are processed can affect both latency and compliance. Many organizations have data residency requirements that shape where they can run AI. Data Zone and Regional deployments let you keep processing within a chosen geography or country while using the same models and tooling available elsewhere on Azure. You remain responsible for determining whether a given configuration meets your regulatory obligations; Foundry provides deployment options that can support those requirements.&lt;/P&gt;
&lt;P&gt;As Hongsoo Kim, Chief Data and AI Officer at Toss, put it, Foundry keeps &lt;EM&gt;“data processing regionally anchored while accessing advanced AI models at scale”- &lt;/EM&gt;giving the confidence to &lt;EM&gt;“accelerate AI innovation responsibly.”&lt;/EM&gt;&amp;nbsp;&lt;/P&gt;
&lt;H1&gt;&lt;STRONG&gt;Build your next AI workload on Foundry&amp;nbsp;&lt;/STRONG&gt;&lt;/H1&gt;
&lt;P&gt;Whatever the workload calls for — lowest cost, low latency, an SLA, or strict data residency — there’s a Foundry deployment that fits. &lt;STRONG&gt;Start building today in &lt;/STRONG&gt;&lt;A href="https://ai.azure.com/catalog" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;Microsoft Foundry&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt;.&lt;/STRONG&gt; For more information about deployment types in Microsoft Foundry, please&lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/azure/foundry/concepts/deployments-overview" target="_blank"&gt; read the learn documentation.&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/azure/foundry/concepts/deployments-overview" target="_blank"&gt;&amp;nbsp;&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Jul 2026 17:38:10 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/microsoft-foundry-model-deployment-pricing-update/ba-p/4535385</guid>
      <dc:creator>Chris Hoder</dc:creator>
      <dc:date>2026-07-27T17:38:10Z</dc:date>
    </item>
    <item>
      <title>Frontier Tuning - A shift from classic fine-tuning</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/frontier-tuning-a-shift-from-classic-fine-tuning/ba-p/4526001</link>
      <description>&lt;P&gt;Your AI agents are burning through tokens and budget because they're relearning your business context on every single task. Frontier Tuning changes that equation. Instead of injecting thousands of context tokens at runtime, you teach the model your workflows once, and it learns from your organization's data. Here's how this new approach to post-training, announced at Build 2026, can make your agentic systems both smarter and cheaper to run.&lt;/P&gt;
&lt;H6&gt;&lt;STRONG&gt;Why the guidance is shifting: The economics have changed&lt;/STRONG&gt;&lt;/H6&gt;
&lt;P&gt;Traditional guidance has previously steered AI practitioners to reserve fine-tuning for very specific domain workflows. Before jumping straight to fine-tuning a model, the best practice was to first exhausting prompt engineering, RAG approaches, and context engineering. Historically, fine-tuning's training and hosting costs were more expensive than they were worth, and fine-tuning was often overkill.&lt;/P&gt;
&lt;P&gt;However, for agentic workflows, generic models don't understand a customer's terminology or task sequences, so RAG injects the context without teaching behavior every time at runtime. For complex workflows that require thousands of tokens per task, injecting context at runtime adds up quickly.. Now, the economics have inverted, so by tuning models to be task, organization, and line-of-business specific, performance and efficiency improve. Fine-tuning now can be a cost-reduction lever depending on token consumption. When your models are Frontier Tuned with your data, their performance naturally enables less token consumption through more optimal task solving.&lt;/P&gt;
&lt;P&gt;In summary:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Before&lt;/STRONG&gt;: Fine-tuning training and inference costs were usually not justified when RAG and context engineering could provide strong results&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Now&lt;/STRONG&gt;: For high-volume agentic workflows, tuning costs are often cheaper than repeated context injection&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Result&lt;/STRONG&gt;: Frontier tuning becomes both a cost-reduction lever and a performance add&lt;/LI&gt;
&lt;/UL&gt;
&lt;H6&gt;&lt;STRONG&gt;Reinforcement fine-tuning vs. classic fine-tuning&lt;/STRONG&gt;&lt;/H6&gt;
&lt;P&gt;There is now massive value in learning process and workflows in our agentic systems. Reinforcement learning is based on a rewards system, and when we apply Reinforcement Fine-Tuning (RFT), we reward model behavior for landing the correct sequence in an agentic workflow (think tool calls within traces). Historically, Reinforcement Learning excels at sequence and process-based scenarios. For example, think game-playing with complex games like GO or Chess. The system understands the current state and determines the next most optimal move based on that state. Now extend this concept to agentic workflows, where the agent has the current context (or state) and determines the next most optimal move (tool call, action, etc.) based on it's context. This is a shift from our former method to apply Supervised Fine-Tuning (SFT) with supervised data (i.e. ground truth labeled data of inputs and good outputs). With classic fine-tuning, we are only enabling the model to understand strong token outputs given a user prompt based on that labeled data, without considering an optimal sequence of actions that RFT enables our models to learn.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="width: 67.407407%; border-width: 1px;"&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&amp;nbsp;&lt;/th&gt;&lt;th&gt;Supervised Fine-Tuning (SFT)&lt;/th&gt;&lt;th&gt;Reinforcement Fine-Tuning (RFT)&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;Learns from&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Labeled input/output pairs&lt;/td&gt;&lt;td&gt;Traces of actions and outcomes&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;Optimizes for&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Correct outputs&lt;/td&gt;&lt;td&gt;Optimal action sequences&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;Best for&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Single-turn Q&amp;amp;A, classification&lt;/td&gt;&lt;td&gt;Multi-step agentic workflows&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;STRONG&gt;Analogy&lt;/STRONG&gt;&lt;/td&gt;&lt;td&gt;Determining correct answers&lt;/td&gt;&lt;td&gt;Learning to play chess&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 21.703297%" /&gt;&lt;col style="width: 37.225275%" /&gt;&lt;col style="width: 40.934066%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;H6&gt;&lt;STRONG&gt;Example: Customer Service Agent Optimization&lt;/STRONG&gt;&lt;/H6&gt;
&lt;P&gt;Consider a customer service agent that handles refund requests. Without tuning, each interaction requires injecting your refund policy (500 tokens), product catalog context (1,200 tokens), and customer history patterns (800 tokens) - roughly 2,500 tokens per request. At 10,000 daily requests, that's 25M context tokens monthly.&lt;/P&gt;
&lt;P&gt;With Frontier Tuning, the model learns your refund workflows from historical traces. It knows when to check inventory, when to escalate, and how to apply your specific policies. Context injection drops to ~400 tokens per request for customer-specific details only, which is an 84% reduction in token consumption.&lt;/P&gt;
&lt;H6&gt;&lt;STRONG&gt;When to Frontier Tune?&amp;nbsp;&lt;/STRONG&gt;&lt;/H6&gt;
&lt;P&gt;Consider Frontier Tuning when:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;You have workflow data&lt;/STRONG&gt;: Traces of tool calls, decisions, and evaluation signals from your agentic systems&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;You can define success&lt;/STRONG&gt;: Clear evaluation rubrics for what optimal task completion looks like&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;The economics make sense&lt;/STRONG&gt;: Your token consumption is high enough that tuning costs less than repeated inference&lt;/LI&gt;
&lt;/UL&gt;
&lt;H6&gt;&lt;STRONG&gt;Get Started with Frontier Tuning&lt;/STRONG&gt;&lt;/H6&gt;
&lt;P&gt;Ready to explore Frontier Tuning for your agentic workflows?&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Explore the fundamentals&lt;/STRONG&gt;:&amp;nbsp;&lt;A class="lia-external-url" href="https://microsoft.ai/models/microsoft-frontier-tuning/" target="_blank" rel="noopener" data-outlook-id="28219190-cd12-4cd5-bfbb-2daea51381cd"&gt;Microsoft Frontier Tuning&lt;/A&gt; - understand the technical capabilities and how it works&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Nominate your use case&lt;/STRONG&gt;:&amp;nbsp;&lt;A class="lia-external-url" href="http://aka.ms/frontiertuning" target="_blank" rel="noopener" data-outlook-id="e994e854-6e11-46f4-8af2-814c44d8d140"&gt;Request early access&lt;/A&gt; - tell us about your agentic workflow and nominate it for the preview&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Check out the MAI Blog&lt;/STRONG&gt;: &lt;A class="lia-external-url" href="https://microsoft.ai/blog/" target="_blank" rel="noopener"&gt;Microsoft AI Blog&lt;/A&gt; - get the latest news, stories, and perspectives from Microsoft AI&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Experiment with the MAI models&lt;/STRONG&gt;: &lt;A class="lia-external-url" href="https://playground.microsoft.ai/chat" target="_blank" rel="noopener"&gt;Microsoft AI Model Playground&lt;/A&gt; - explore the models without a subscription&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG style="font-style: var(--lia-blog-font-style); font-family: var(--lia-blog-font-family); font-size: var(--lia-bs-font-size-base);"&gt;Not sure if Frontier Tuning is right for you?&lt;/STRONG&gt;&lt;SPAN style="font-style: var(--lia-blog-font-style); font-family: var(--lia-blog-font-family); font-size: var(--lia-bs-font-size-base);"&gt; Start by instrumenting your agentic workflows to capture traces. You'll need this data regardless, and it will help you assess whether the economics make sense for your scenario.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;Authored by the Americas Markets and Industries Office of the CTO&lt;/EM&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 09 Jul 2026 16:00:00 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/frontier-tuning-a-shift-from-classic-fine-tuning/ba-p/4526001</guid>
      <dc:creator>Laurentran</dc:creator>
      <dc:date>2026-07-09T16:00:00Z</dc:date>
    </item>
    <item>
      <title>Monitoring &amp; Observability in Microsoft Foundry

Part 2: Configuration and Operations</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/monitoring-observability-in-microsoft-foundry-part-2/ba-p/4532674</link>
      <description>&lt;P&gt;&lt;A class="lia-internal-link lia-internal-url lia-internal-url-content-type-blog" href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/monitoring--observability-in-microsoft-foundry/4517250" target="_blank" rel="noopener" data-lia-auto-title="Part 1" data-lia-auto-title-active="0"&gt;Part 1&lt;/A&gt; of this series made the case that AI observability is not just another dashboard problem. Once an agent is in production, the question is no longer&amp;nbsp;can it respond; the question is whether it continues to respond&amp;nbsp;accurately, safely, efficiently, and consistently&amp;nbsp;as models evolve, prompts change, retrieval indexes drift, and real-world traffic exposes edge cases you never saw in test. That is why Microsoft Foundry’s observability story is built around three connected disciplines &lt;STRONG&gt;evaluation, monitoring, and tracing&lt;/STRONG&gt; rather than traditional uptime metrics alone.&lt;/P&gt;
&lt;P&gt;This article is the practical half of that story. It stays in the&amp;nbsp;Foundry (new)&amp;nbsp;experience throughout and focuses on the configuration and operational patterns that actually matter once you are moving agents toward production:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;connecting&amp;nbsp;Application Insights&lt;/LI&gt;
&lt;LI&gt;enabling&amp;nbsp;continuous evaluation&lt;/LI&gt;
&lt;LI&gt;reading the&amp;nbsp;monitoring dashboard&amp;nbsp;like an operator&lt;/LI&gt;
&lt;LI&gt;using&amp;nbsp;traces&amp;nbsp;to debug quality regressions&lt;/LI&gt;
&lt;LI&gt;wiring&amp;nbsp;alerts&amp;nbsp;into Azure Monitor&lt;/LI&gt;
&lt;LI&gt;adding&amp;nbsp;quality gates&amp;nbsp;to CI/CD&lt;/LI&gt;
&lt;LI&gt;enforcing&amp;nbsp;guardrails and compliance&lt;/LI&gt;
&lt;LI&gt;integrating&amp;nbsp;Defender for Cloud&amp;nbsp;and&amp;nbsp;Microsoft Purview and keeping a close eye on&amp;nbsp;cost, quota, and token usage&amp;nbsp;across the estate.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Portal note:&lt;/STRONG&gt;&amp;nbsp;Everything below assumes the&amp;nbsp;Foundry (new)&amp;nbsp;portal. If you are not seeing&amp;nbsp;&lt;STRONG&gt;Build&lt;/STRONG&gt;,&amp;nbsp;&lt;STRONG&gt;Operate&lt;/STRONG&gt;, and&amp;nbsp;&lt;STRONG&gt;Admin&lt;/STRONG&gt; in the current navigation, stop and switch to the new experience before you begin.&lt;/P&gt;
&lt;H3&gt;Start with the telemetry backbone: connect Application Insights&lt;/H3&gt;
&lt;P&gt;Every meaningful observability workflow in Foundry starts with one dependency:&amp;nbsp;Azure Monitor Application Insights. It is the storage and correlation layer for the telemetry that powers monitoring, tracing, and the production-facing quality views. If you skip this step, the rest of the experience becomes partial at best and invisible at worst.&lt;/P&gt;
&lt;P&gt;In the current portal experience, the cleanest place to verify that your project is wired correctly is&amp;nbsp;&lt;STRONG&gt;Operate &amp;gt; Admin &amp;gt; Connected resources&lt;/STRONG&gt;. That is where you confirm whether an&amp;nbsp;&lt;STRONG&gt;Application Insights&lt;/STRONG&gt;&amp;nbsp;resource is already attached to the project, and where you add one if it is missing. Some agent-specific experiences also surface connection entry points elsewhere, but&amp;nbsp;&lt;STRONG&gt;Connected resources&lt;/STRONG&gt;&amp;nbsp;is the most reliable control-plane view when you want to validate the configuration before you go any further.&lt;/P&gt;
&lt;P&gt;In practice, the setup is straightforward. Open your project, go to&amp;nbsp;&lt;STRONG&gt;Operate &amp;gt; Admin&lt;/STRONG&gt;, select&amp;nbsp;your &lt;STRONG&gt;Project&lt;/STRONG&gt;, look for the tab &lt;STRONG&gt;Connected resources&lt;/STRONG&gt;, and verify that an&amp;nbsp;&lt;STRONG&gt;Application Insights&lt;/STRONG&gt; resource is present. If not, add one there and keep it in the same region as the rest of your project resources where possible. Once that connection exists, Foundry has a place to emit and correlate the telemetry that the rest of this article depends on.&lt;/P&gt;
&lt;img /&gt;
&lt;P&gt;One operational detail is worth calling out early: the people who will investigate traces or query logs later need access to the monitoring resources themselves. In other words, connecting the resource is only half the job; the second half is making sure the operations or engineering team can actually read what Foundry writes there.&lt;/P&gt;
&lt;H3&gt;From connection to continuous evaluation&lt;/H3&gt;
&lt;P&gt;&lt;A class="lia-internal-link lia-internal-url lia-internal-url-content-type-blog" href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/monitoring--observability-in-microsoft-foundry/4517250" target="_blank" rel="noopener" data-lia-auto-title="Part 1" data-lia-auto-title-active="0"&gt;Part 1&lt;/A&gt; described evaluation has to move from an occasional pre-release ritual to an always-on production discipline. The portal now supports that model directly: once your project is connected, you can turn on&amp;nbsp;&lt;STRONG&gt;continuous evaluation&lt;/STRONG&gt;&amp;nbsp;so sampled production traffic is scored over time instead of only during offline test runs.&lt;/P&gt;
&lt;P&gt;The natural entry point is the agent’s monitoring surface. Open&amp;nbsp;&lt;STRONG&gt;Build &amp;gt; Agents&lt;/STRONG&gt;, select the agent you want to operate, and then go to&amp;nbsp;&lt;STRONG&gt;Monitor&lt;/STRONG&gt;. This is where the platform brings together operational metrics and evaluation signals for the agent you actually care about, rather than forcing you to jump between disconnected tools. If your tenant has the built-in assistant enabled,&amp;nbsp;&lt;STRONG&gt;Ask AI (Preview)&lt;/STRONG&gt;&amp;nbsp;can also summarize what the dashboard is showing and highlight abnormal behavior for the time range you have selected.&lt;/P&gt;
&lt;P&gt;When you open the monitor settings, you are not just flipping a switch, you are deciding what “good” means for your workload. For a general conversational agent, the right starting point is usually&amp;nbsp;&lt;STRONG&gt;coherence&lt;/STRONG&gt;&amp;nbsp;and&amp;nbsp;&lt;STRONG&gt;relevance&lt;/STRONG&gt;. For a RAG-heavy agent,&amp;nbsp;&lt;STRONG&gt;groundedness&lt;/STRONG&gt;&amp;nbsp;and&amp;nbsp;&lt;STRONG&gt;retrieval quality&lt;/STRONG&gt; quickly become non-negotiable because they separate model behavior problems from retrieval problems. For safety or policy sensitive workloads, the relevant safety dimensions belong in the first wave as well, not as an afterthought once you have shipped.&lt;/P&gt;
&lt;P&gt;The portal also forces a real-world tradeoff that &lt;A class="lia-internal-link lia-internal-url lia-internal-url-content-type-blog" href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/monitoring--observability-in-microsoft-foundry/4517250" target="_blank" rel="noopener" data-lia-auto-title="Part 1" data-lia-auto-title-active="0"&gt;Part 1&lt;/A&gt; already warned about: sampling. Continuous evaluation is valuable precisely because it runs on live traffic, but it is not free. A sensible production posture is to begin with a modest sample, see how noisy or stable the results are in your environment, and then raise or lower the rate based on risk, volume, and budget.&lt;/P&gt;
&lt;img /&gt;
&lt;P&gt;One practical point that often gets missed: if you are enabling continuous evaluation against production traffic, the project’s managed identity must have the permissions required to execute those evaluation calls.&lt;/P&gt;
&lt;H3&gt;Read the dashboard like an operator, not a tourist&lt;/H3&gt;
&lt;P&gt;The&amp;nbsp;&lt;STRONG&gt;Agent Monitoring Dashboard&lt;/STRONG&gt;&amp;nbsp;is easy to mistake for a status page. It is more useful than that. Used well, it becomes the place where you correlate&amp;nbsp;quality,&amp;nbsp;latency,&amp;nbsp;failures,&amp;nbsp;token consumption, and if you have the right workflows enabled, safety findings&amp;nbsp;in one operational view backed by Azure Monitor data.&lt;/P&gt;
&lt;P&gt;That matters because production AI rarely fails in a single dimension. A rise in latency might be harmless if quality stays steady and the cause is obvious. A flat latency curve can still hide a serious regression if&amp;nbsp;&lt;STRONG&gt;groundedness&lt;/STRONG&gt;&amp;nbsp;or&amp;nbsp;&lt;STRONG&gt;retrieval quality&lt;/STRONG&gt;&amp;nbsp;starts slipping. Token usage can expose cost drift long before a finance alert ever fires. The dashboard is valuable precisely because it puts those signals side by side so you can see whether the problem is quality-only, operations-only, or a combination of both.&lt;/P&gt;
&lt;P&gt;In the current portal, you can reach that view from&amp;nbsp;&lt;STRONG&gt;Build &amp;gt; Agents &amp;gt; Monitor&lt;/STRONG&gt;&amp;nbsp;for agent-centric investigation, and from&amp;nbsp;&lt;STRONG&gt;Operate &amp;gt; Overview&lt;/STRONG&gt;&amp;nbsp;when you want a broader control-plane perspective across the subscription. Microsoft’s current documentation for&amp;nbsp;&lt;STRONG&gt;Ask AI (Preview)&lt;/STRONG&gt;&amp;nbsp;explicitly points to both of those surfaces:&amp;nbsp;&lt;STRONG&gt;Build &amp;gt; Models or Agents &amp;gt; Monitor&lt;/STRONG&gt;&amp;nbsp;for workload-specific analysis and&amp;nbsp;&lt;STRONG&gt;Operate &amp;gt; Overview&lt;/STRONG&gt;&amp;nbsp;for estate-level analysis.&lt;/P&gt;
&lt;P&gt;This is also where the most useful operator habit emerges: use metrics to spot the problem, but do not stop there. A low groundedness score or a rising error rate should trigger a trace investigation, not just a dashboard screenshot for later discussion. The dashboard is the front door, not the full diagnosis.&lt;/P&gt;
&lt;img /&gt;
&lt;H3&gt;When a score drops, tracing tells you why&lt;/H3&gt;
&lt;P&gt;Monitoring tells you something is changing.&amp;nbsp;&lt;STRONG&gt;Tracing&lt;/STRONG&gt;&amp;nbsp;tells you what actually happened inside a run. That distinction is what turns observability into an operational system rather than a collection of charts. Microsoft’s tracing model is built on&amp;nbsp;&lt;STRONG&gt;OpenTelemetry&lt;/STRONG&gt;, and the goal is not simply to log a request, it is to capture the execution path across model calls, tool invocations, retrieval steps, orchestration decisions, and the timings and tokens associated with each stage.&lt;/P&gt;
&lt;P&gt;For Foundry-managed experiences, a good portion of that visibility is available once the telemetry backbone is connected. For&amp;nbsp;custom agents&amp;nbsp;and mixed stacks, the current guidance puts the emphasis on making sure the agent is registered and observable from the control plane, then sending standards-based telemetry into the same monitoring backend. Operationally, that means Foundry becomes the builder-facing surface while Azure Monitor remains the store, query, and correlation layer underneath.&lt;/P&gt;
&lt;P&gt;The most important technical correction to many older tracing examples is the authentication and wiring model. The current guidance favors using the Application Insights connection string instead of older configurations that relied on the instrumentation key as a standalone setting, and the cleanest Python example today uses the&amp;nbsp;&lt;STRONG&gt;AzureAIOpenTelemetryTracer&lt;/STRONG&gt; from the LangChain integration path with that connection string explicitly provided.&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;from langchain.agents import create_agent
from langchain_azure_ai.callbacks.tracers import AzureAIOpenTelemetryTracer
 
application_insights_connection_string = "..."
 
tracer = AzureAIOpenTelemetryTracer(
    connection_string=application_insights_connection_string,
    enable_content_recording=True,
)
 
def get_weather(city: str) -&amp;gt; str:
    """Get weather for a given city."""
    return f"It's always sunny in {city}!"
 
agent = create_agent(
    model="openai:gpt-5.1",
    tools=[get_weather],
    system_prompt="You are a helpful assistant",
).with_config({"callbacks": [tracer]})&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For teams using other frameworks, the broader principle is the same even if the code differs: emit &lt;STRONG&gt;OpenTelemetry&lt;/STRONG&gt;&amp;nbsp;spans and send them to the&amp;nbsp;&lt;STRONG&gt;Application Insights&lt;/STRONG&gt; resource already attached to your Foundry project. That keeps traces, quality signals, and operational telemetry in the same backend instead of fragmenting them across different tools and teams.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;img /&gt;
&lt;P&gt;There is one operational caution here that should never be buried in a footnote: traces can capture prompts, responses, tool arguments, and other sensitive runtime content. In enterprise environments, trace retention, RBAC, and content hygiene matter just as much as trace completeness. If your prompts or tool payloads can contain secrets or personal data, fix that before you scale tracing, not after.&lt;/P&gt;
&lt;H3&gt;Use Foundry to discover issues, and Azure Monitor to operationalize them&lt;/H3&gt;
&lt;P&gt;Foundry is an excellent place to&amp;nbsp;see&amp;nbsp;that something is wrong. Azure Monitor is where you should generally&amp;nbsp;act&amp;nbsp;on it. That distinction creates a durable operating model because it keeps AI-specific insight in the portal while letting SRE and platform teams use the same alerting, routing, and automation surfaces they already trust for the rest of their workloads.&lt;/P&gt;
&lt;P&gt;A practical alerting strategy does not start with every possible metric. It starts with a short list of conditions that justify operator intervention. For most agents, that means some combination of:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;sustained&amp;nbsp;latency&amp;nbsp;increases,&lt;/LI&gt;
&lt;LI&gt;run failure&amp;nbsp;spikes,&lt;/LI&gt;
&lt;LI&gt;abnormal&amp;nbsp;token consumption,&lt;/LI&gt;
&lt;LI&gt;and material drops in&amp;nbsp;quality or safety signals&amp;nbsp;that represent user-visible risk.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Foundry’s own monitoring surfaces can help you decide which thresholds matter, but the production-grade enforcement usually belongs in&amp;nbsp;&lt;STRONG&gt;Azure Monitor alerts&lt;/STRONG&gt;&amp;nbsp;and&amp;nbsp;&lt;STRONG&gt;action groups&lt;/STRONG&gt;&amp;nbsp;attached to the connected Application Insights resource. That is the pattern Microsoft’s observability guidance consistently points toward: the portal helps you understand the signal, while Azure Monitor helps you route and automate the response.&lt;/P&gt;
&lt;H3&gt;CI/CD quality gates: make quality a release decision&lt;/H3&gt;
&lt;P&gt;The real test of whether observability is part of engineering culture is whether it shows up in CI/CD. If evaluation only happens after deployment, it is already too late for many regressions. The better pattern is simple: run a repeatable evaluation set during the build or release process, publish the results, and fail the promotion if the thresholds that matter to the business are missed. That is how you turn “quality” from a conversation into a gate.&lt;/P&gt;
&lt;P&gt;Because task and action names can change over time, the most durable approach for publication is not to hard-code a potentially short-lived marketplace extension name. Instead, keep the pipeline pattern stable and call your evaluation script explicitly. That gives readers something they can implement regardless of whether they use GitHub Actions or Azure DevOps and regardless of how the surrounding wrapper evolves.&lt;/P&gt;
&lt;P&gt;A simple GitHub Actions pattern looks like this:&lt;/P&gt;
&lt;LI-CODE lang="yaml"&gt;name: foundry-evaluation-gate
 
on:
  pull_request:
  push:
    branches: [ main ]
 
permissions:
  id-token: write
  contents: read
 
jobs:
  evaluate:
    runs-on: ubuntu-latest
 
    steps:
      - uses: actions/checkout@v4
 
      - uses: azure/login@v2
        with:
          client-id: ${{ secrets.AZURE_CLIENT_ID }}
          tenant-id: ${{ secrets.AZURE_TENANT_ID }}
          subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
 
      - run: |
          python -m pip install --upgrade pip
          pip install -r requirements.txt
 
      - run: |
          python ci/run_foundry_evals.py \
            --project-endpoint "${{ secrets.FOUNDRY_PROJECT_ENDPOINT }}" \
            --dataset "tests/evalset.json" \
            --output "artifacts/eval-results.json"
 
      - run: |
          python ci/assert_eval_thresholds.py artifacts/eval-results.json&lt;/LI-CODE&gt;
&lt;P&gt;The principle matters more than the wrapper: use the&amp;nbsp;&lt;STRONG&gt;same evaluator definitions&lt;/STRONG&gt; across development, CI, and production monitoring so a “good” score means the same thing wherever you see it. That consistency was one of the core ideas in &lt;A class="lia-internal-link lia-internal-url lia-internal-url-content-type-blog" href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/monitoring--observability-in-microsoft-foundry/4517250" target="_blank" rel="noopener" data-lia-auto-title="Part 1" data-lia-auto-title-active="0"&gt;Part 1&lt;/A&gt;, and it is what makes evaluation an operating system instead of a one-off test harness.&lt;/P&gt;
&lt;H3&gt;Guardrails and compliance belong in the operating loop&lt;/H3&gt;
&lt;P&gt;Once an agent is live, “responsible AI” has to move out of slideware and into operations. That is what the&amp;nbsp;&lt;STRONG&gt;Compliance&lt;/STRONG&gt;&amp;nbsp;workspace in the control plane is for. In &lt;A class="lia-internal-link lia-internal-url lia-internal-url-content-type-blog" href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/monitoring--observability-in-microsoft-foundry/4517250" target="_blank" rel="noopener" data-lia-auto-title="Part 1" data-lia-auto-title-active="0"&gt;Part 1&lt;/A&gt;, the compliance story was framed around policy posture, guardrails, and remediation across the estate. In practice, that means&amp;nbsp;&lt;STRONG&gt;Operate &amp;gt; Compliance&lt;/STRONG&gt;&amp;nbsp;becomes part of your operating routine, not something you visit only when audit season arrives.&lt;/P&gt;
&lt;P&gt;The value of this workspace is not just visibility. It is that it lets you compare what your organization expects:guardrail controls, security posture, data-governance integration against what individual assets are actually doing. The policy view tells you where you are out of compliance. The asset views help you see which deployments are drifting. The remediation flow closes the loop before policy violations become real incidents.&lt;/P&gt;
&lt;P&gt;Use &lt;STRONG&gt;Operate &amp;gt; Compliance&lt;/STRONG&gt; to review policy posture, identify violations, compare required controls with actual deployment settings, and remediate the drift. The exact button labels can change over time; the operating motion does not.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;img /&gt;
&lt;H3&gt;Extend the view: Defender for Cloud and Purview&lt;/H3&gt;
&lt;P&gt;Foundry’s built-in controls are necessary, but enterprise deployments often need the larger Microsoft security and governance ecosystem around them. That is where&amp;nbsp;&lt;STRONG&gt;Defender for Cloud&lt;/STRONG&gt;&amp;nbsp;and&amp;nbsp;&lt;STRONG&gt;Microsoft Purview&lt;/STRONG&gt;&amp;nbsp;extend the story from application behavior into security posture, threat detection, audit, and data governance.&lt;/P&gt;
&lt;P&gt;From an operational perspective, Defender for Cloud helps security teams see posture recommendations and AI-adjacent threats such as suspicious prompt activity or exposed configurations in the places they already work. Purview extends the governance model further by helping organizations treat prompts and responses as governed data, subject to the same kinds of audit, classification, and security workflows that apply elsewhere in the enterprise.&lt;/P&gt;
&lt;P&gt;The right place to review those integrations in the current portal is the security and compliance experience under&amp;nbsp;&lt;STRONG&gt;Operate&lt;/STRONG&gt;, especially the views focused on posture and governance. Availability and exact onboarding flows can vary by tenant, role, and licensing, so what matters most for an enterprise is the operational principle: if your organization relies on Defender or Purview elsewhere, AI workloads should not become the exception.&lt;/P&gt;
&lt;img /&gt;
&lt;H3&gt;Cost, quota, and token usage: keep them in the same conversation as quality&lt;/H3&gt;
&lt;P&gt;One of the easiest mistakes in AI operations is to discuss quality, safety, and cost as if they were separate systems. They are not. Token usage affects spend, spend influences sampling choices, and sampling choices shape what you can see about quality in production. Foundry’s&amp;nbsp;&lt;STRONG&gt;Operate&lt;/STRONG&gt;&amp;nbsp;surfaces are useful precisely because they let you see those pressures in one operating loop rather than across unrelated tools.&lt;/P&gt;
&lt;P&gt;The three views that matter most are still the ones &lt;A class="lia-internal-link lia-internal-url lia-internal-url-content-type-blog" href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/monitoring--observability-in-microsoft-foundry/4517250" target="_blank" rel="noopener" data-lia-auto-title="Part 1" data-lia-auto-title-active="0"&gt;Part 1&lt;/A&gt; highlighted.&amp;nbsp;&lt;STRONG&gt;Operate &amp;gt; Overview&lt;/STRONG&gt;&amp;nbsp;gives you the estate-level operational summary, including token and cost trends.&amp;nbsp;&lt;STRONG&gt;Operate &amp;gt; Assets&lt;/STRONG&gt;&amp;nbsp;gives you the searchable inventory view where heavy consumers and unhealthy assets become obvious.&amp;nbsp;&lt;STRONG&gt;Operate &amp;gt; Quota&lt;/STRONG&gt;&amp;nbsp;tells you how deployment capacity is being consumed and whether you are heading toward avoidable throttling or scaling friction.&lt;/P&gt;
&lt;P&gt;What has to be explicit in production is the cost model around observability itself.&amp;nbsp;Monitoring does not introduce an additional Foundry platform charge, but&amp;nbsp;tracing&amp;nbsp;still depends on the underlying&amp;nbsp;Azure Monitor / Application Insights&amp;nbsp;storage and retention footprint, and&amp;nbsp;evaluation adds execution cost because more model work is being done. In other words, you are not only monitoring your agents, you are also operating a telemetry system. Treat it that way.&lt;/P&gt;
&lt;H3&gt;What good looks like in production&lt;/H3&gt;
&lt;P&gt;The biggest shift between &lt;A class="lia-internal-link lia-internal-url lia-internal-url-content-type-blog" href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/monitoring--observability-in-microsoft-foundry/4517250" target="_blank" rel="noopener" data-lia-auto-title="Part 1" data-lia-auto-title-active="0"&gt;Part 1&lt;/A&gt; and Part 2 is this: once the features are enabled, observability becomes a habit. Good teams do not just turn on dashboards. They decide which signals matter, which thresholds justify intervention, where human review belongs, and how those decisions show up in daily operations and release engineering.&lt;/P&gt;
&lt;P&gt;In practice, that usually means a handful of operating principles:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Do not monitor everything at once.&lt;/STRONG&gt;&amp;nbsp;Start with the few signals that map directly to user harm or operational pain.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Use the same evaluation logic across environments.&lt;/STRONG&gt;&amp;nbsp;Quality should not mean one thing in CI and another in production.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Keep traces useful, not reckless.&lt;/STRONG&gt;&amp;nbsp;Rich traces are valuable until they start capturing content you should never have stored.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Treat cost as a first-class signal.&lt;/STRONG&gt;&amp;nbsp;Token usage and trace volume are not background details; they are operational constraints.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Revisit the configuration periodically.&lt;/STRONG&gt; The platform is evolving quickly, and what was preview-only a few months ago may already be operationally relevant in your tenant now.&lt;/LI&gt;
&lt;/UL&gt;
&lt;H3&gt;Conclusion&lt;/H3&gt;
&lt;P&gt;&lt;A class="lia-internal-link lia-internal-url lia-internal-url-content-type-blog" href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/monitoring--observability-in-microsoft-foundry/4517250" target="_blank" rel="noopener" data-lia-auto-title="Part 1" data-lia-auto-title-active="0"&gt;Part 1&lt;/A&gt; detailed that production AI requires a different kind of observability because AI systems fail in different ways. Part 2 is where that argument becomes operational. Once you connect&amp;nbsp;Application Insights, enable&amp;nbsp;continuous evaluation, use the&amp;nbsp;monitoring dashboard&amp;nbsp;to spot change, follow&amp;nbsp;traces&amp;nbsp;to root cause, route the right signals into&amp;nbsp;Azure Monitor alerts, and bring&amp;nbsp;compliance, security, and cost&amp;nbsp;into the same operating loop, you stop treating quality and safety as release-time paperwork and start treating them as runtime disciplines.&lt;/P&gt;
&lt;P&gt;Foundry’s observability model gives builders, operators, and governance teams a shared system for answering the same question from different angles:&amp;nbsp;&lt;STRONG&gt;Is this agent still doing the right thing in production, and how do we know?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;If &lt;A class="lia-internal-link lia-internal-url lia-internal-url-content-type-blog" href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/monitoring--observability-in-microsoft-foundry/4517250" target="_blank" rel="noopener" data-lia-auto-title="Part 1" data-lia-auto-title-active="0"&gt;Part 1&lt;/A&gt; was the architectural blueprint, Part 2 is the operational playbook. Put together, they describe the shift every serious AI team eventually has to make: from “the agent works” to &lt;STRONG&gt;“the agent stays reliable, explainable, and governable in production.”&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 09 Jul 2026 14:00:00 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/monitoring-observability-in-microsoft-foundry-part-2/ba-p/4532674</guid>
      <dc:creator>Kalaivanan</dc:creator>
      <dc:date>2026-07-09T14:00:00Z</dc:date>
    </item>
    <item>
      <title>Foundry IQ is now in Copilot Studio: Bring your enterprise data to every agent conversation</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/foundry-iq-is-now-in-copilot-studio-bring-your-enterprise-data/ba-p/4534635</link>
      <description>&lt;H3&gt;&lt;SPAN data-olk-copy-source="MessageBody"&gt;Your AI agents are only as smart as the data they can access&lt;/SPAN&gt;&lt;/H3&gt;
&lt;P&gt;&lt;SPAN data-olk-copy-source="MessageBody"&gt;Enterprise teams building Copilot agents face a familiar challenge: connecting agents to organizational knowledge without compromising security, governance, or answer quality. Foundry IQ solves this by providing a unified knowledge layer that sits between your data sources and your agent—delivering 54% better response relevance while keeping enterprise compliance built in.&lt;/SPAN&gt;&lt;/P&gt;
&lt;H3&gt;What Foundry IQ Brings to Your Copilot Agent&lt;/H3&gt;
&lt;P&gt;Enterprise organizations need a specific set of capabilities to safely deploy AI agents in production, security, compliance, governance, and operational reliability. Foundry IQ is built to meet exactly those requirements. With Foundry IQ, you can create Knowledge Bases. These Knowledge Bases come with enterprise readiness built in, such as Customer-Managed Keys (CMK) for data encryption, ACLs for fine-grained access control, network isolation, Microsoft Entra ID integration, compliance with standards such as FedRAMP and SOC2 and others, the full set of capabilities any organization needs to deploy AI agents safely in production. Learn more about Foundry IQ (Azure AI Search) security capabilities → &lt;A href="https://learn.microsoft.com/en-us/azure/search/search-security-overview" target="_blank" rel="noopener"&gt;https://learn.microsoft.com/en-us/azure/search/search-security-overview&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;When you connect a Knowledge Base to your Copilot agent, it leverages the advanced retrieval capabilities that Foundry IQ brings, including agentic retrieval (automatic query planning that federates across multiple knowledge sources in parallel), iterative query planning and semantic ranking (relevance scoring that goes far beyond keyword matching). The result is a 54% average improvement in response relevance compared to traditional RAG approaches, more accurate, grounded answers for your users (For more details: &lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/foundry-iq-improve-recall-by-up-to-54-with-knowledge-bases/4524852" target="_blank" rel="noopener"&gt;Foundry IQ: Improve recall by up to 54% with knowledge bases | Microsoft Community Hub&lt;/A&gt;)&lt;/P&gt;
&lt;H3&gt;For Developers &amp;amp; End Users&lt;/H3&gt;
&lt;H5&gt;For Developers&lt;/H5&gt;
&lt;P&gt;Today, developers can select one of their existing Foundry IQ Knowledge Bases to connect to a Copilot agent, giving their organization's users access to enterprise data safely, with permissions and governance already built in. This ensures that each user only sees the data they are authorized to access, and that every answer returned is grounded in the right, relevant content, no additional configuration needed on the user side&lt;/P&gt;
&lt;H5&gt;For End Users&lt;/H5&gt;
&lt;P&gt;End users get access to their organization's enterprise data safely and without any extra work on their end, no need to worry about permissions, data sources, or configurations. Just ask, and your Copilot agent returns accurate, grounded answers with inline citations, from the right sources, respecting what each user is allowed to see.&lt;/P&gt;
&lt;H3&gt;What Do I Need to Do? Step-by-Step&lt;/H3&gt;
&lt;H5&gt;Prerequisites&lt;/H5&gt;
&lt;P&gt;Before getting started, make sure you have:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;An active Microsoft Foundry connection&lt;/LI&gt;
&lt;LI&gt;At least one Knowledge Base already created in Foundry IQ&lt;/LI&gt;
&lt;LI&gt;An agent created in the new experience. Learn more in &lt;A href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/authoring-first-bot" target="_blank" rel="noopener"&gt;Create an agent&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;STRONG&gt;1.- Select Microsoft IQ in your Copilot agent settings&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI style="list-style-type: none;"&gt;
&lt;UL&gt;
&lt;LI&gt;Open your agent in Copilot Studio.&lt;/LI&gt;
&lt;LI&gt;Select the Build tab.&lt;/LI&gt;
&lt;LI&gt;In the components panel, select Microsoft IQ to open the Add Microsoft IQ dialog.&lt;/LI&gt;
&lt;LI&gt;Navigate to your Copilot agent configuration and select the Microsoft IQ option.&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;img /&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;STRONG&gt;2.- Select Foundry IQ&lt;/STRONG&gt;&lt;/P&gt;
&lt;img /&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;STRONG&gt;3.- Select your Foundry IQ connection&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;Choose the Foundry IQ connection you want to use for this agent.&lt;/P&gt;
&lt;img /&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;STRONG&gt;4.- Select a Knowledge Base&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;Pick the Knowledge Base you want your agent to use as its knowledge source.&lt;/P&gt;
&lt;img /&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;STRONG&gt;5.- Get your agent ready with instructions&lt;/STRONG&gt;&lt;/P&gt;
&lt;img /&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;STRONG&gt;6.- Chat with your data&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;Your agent is now grounded in your enterprise Knowledge Base. Now you can start a conversation and explore your data!&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&amp;nbsp;&lt;/P&gt;
&lt;img /&gt;
&lt;P&gt;&lt;STRONG&gt;Get Started: &lt;/STRONG&gt;Try Foundry IQ in Copilot Studio: &lt;A class="lia-external-url" href="https://learn.microsoft.com/en-us/microsoft-copilot-studio/agents-experience/foundry-iq-connect" target="_blank" rel="noopener"&gt;Connect to Foundry IQ from an agent (preview) - Microsoft Copilot Studio (new experience) | Microsoft Learn&lt;/A&gt;. Learn more about Foundry IQ retrieval capabilities:&amp;nbsp;&lt;A href="https://aka.ms/FoundryIQ" target="_blank" rel="noopener"&gt;https://aka.ms/FoundryIQ&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 08 Jul 2026 21:24:32 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/foundry-iq-is-now-in-copilot-studio-bring-your-enterprise-data/ba-p/4534635</guid>
      <dc:creator>Angie-Silva-Pereyra</dc:creator>
      <dc:date>2026-07-08T21:24:32Z</dc:date>
    </item>
    <item>
      <title>Before You Ship Your Agent: A Five-Step Path to Evaluations You Can Trust</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/before-you-ship-your-agent-a-five-step-path-to-evaluations-you/ba-p/4532311</link>
      <description>&lt;H6&gt;&lt;SPAN data-contrast="auto"&gt;&lt;STRONG&gt;Authors: Caroline Yeh, Ali Mahmoudzadeh, Morteza Ziyadi&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/H6&gt;
&lt;P&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;If&amp;nbsp;you've&amp;nbsp;shipped an agent to production,&amp;nbsp;or&amp;nbsp;you're&amp;nbsp;close,&amp;nbsp;you've&amp;nbsp;already made a quiet bet: that the evals you ran during development reflect what happens when real users interact with the real system. That bet is harder to win than it looks. Not because evaluation is unsolved, but because agents break in&amp;nbsp;ways&amp;nbsp;single-turn metrics&amp;nbsp;can't&amp;nbsp;see. A task silently stalls mid-session. A factual claim slips through ungrounded. A conversation scores 4.2 on coherence while the user abandons it on turn three. None of that shows up as an error. None of&amp;nbsp;it&amp;nbsp;registers in a per-turn score. And if the test harness generating those scores has its own calibration problems,&amp;nbsp;like&amp;nbsp;a simulator that coaches your agent, a trace sampler that keeps pulling the same three request types,&amp;nbsp;or&amp;nbsp;an evaluator with a 20% flip rate,&amp;nbsp;then&amp;nbsp;you're not measuring your agent's quality.&amp;nbsp;You're&amp;nbsp;measuring your eval stack's optimism.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;This post is for the engineers and applied scientists responsible for that bet. The ones writing the eval pipelines, choosing the judge models, deciding which traces go into the fine-tuning corpus, and fielding the question "is this agent ready to ship?" on every release cycle.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Over the past two weeks, the&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://ai.azure.com/" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;Microsoft Foundry&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;observability team published five research studies on how to measure agents and, just as importantly, how to measure the tools doing the measuring. Today,&amp;nbsp;we're&amp;nbsp;pulling them into one prescriptive path.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P aria-level="2"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;Before you ship your agent, make sure you have:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134245418&amp;quot;:true,&amp;quot;134245529&amp;quot;:true,&amp;quot;335559738&amp;quot;:160,&amp;quot;335559739&amp;quot;:80}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI aria-setsize="-1" data-leveltext="%1." data-font="Arial" data-listid="7" data-list-defn-props="{&amp;quot;335552541&amp;quot;:0,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769242&amp;quot;:[65533,0],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;%1.&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="1" data-aria-level="1"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;Multi-turn evaluated:&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;session-level quality scored across the whole conversation, not averaged across turns&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;A defined rubric:&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;what "good" means for&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;your&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;task, your agent, your success criteria,&amp;nbsp;not a generic catalog entry&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI aria-setsize="-1" data-leveltext="%1." data-font="Arial" data-listid="7" data-list-defn-props="{&amp;quot;335552541&amp;quot;:0,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769242&amp;quot;:[65533,0],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;%1.&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="3" data-aria-level="1"&gt;&lt;SPAN data-contrast="auto"&gt;&lt;STRONG&gt;Simulated users&lt;/STRONG&gt;:&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;test conversations that behave like real users, scored with a validated rubric&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN data-contrast="auto"&gt;&lt;STRONG&gt;Sampled production traces&lt;/STRONG&gt;:&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;the right traces for breadth of coverage, not just the most frequent ones&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI aria-setsize="-1" data-leveltext="%1." data-font="Arial" data-listid="7" data-list-defn-props="{&amp;quot;335552541&amp;quot;:0,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769242&amp;quot;:[65533,0],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;%1.&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="5" data-aria-level="1"&gt;&lt;SPAN data-contrast="auto"&gt;&lt;STRONG&gt;Benchmarked&lt;/STRONG&gt;:&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;a standardized, reproducible yardstick for your deployment or agent&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;These&amp;nbsp;aren't&amp;nbsp;a one-time gate.&amp;nbsp;They're&amp;nbsp;a loop you re-run on every meaningful prompt, model, or tool&amp;nbsp;change.&amp;nbsp;Here's&amp;nbsp;what each step does, why it matters to the engineer on the hook for agent quality, and where to go deep.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5 aria-level="2"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;Why evaluation is harder for agents than it was for models&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134245418&amp;quot;:true,&amp;quot;134245529&amp;quot;:true,&amp;quot;335559738&amp;quot;:160,&amp;quot;335559739&amp;quot;:80}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;If you came up evaluating LLMs on fixed benchmarks or RAG pipelines on retrieval metrics, agents&amp;nbsp;require&amp;nbsp;a shift in how you think about measurement and&amp;nbsp;it's&amp;nbsp;worth naming explicitly before the five steps.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;With a model, the unit of analysis is a response. With an agent, the unit of analysis is a session: a multi-turn conversation in which the agent asks clarifying questions, calls tools, retries when something fails, and stitches the whole thing into an outcome. A session can have every individual response score well on relevance, fluency, and faithfulness and still be unfinished, off-policy, or quietly hallucinated. Averaging turn-level scores&amp;nbsp;doesn't&amp;nbsp;recover those properties, and it can actively mislead you&amp;nbsp;and&amp;nbsp;the session that failed your user reads as a pass.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;This creates a second-order problem specific to ML engineers: any tool you&amp;nbsp;use&amp;nbsp;to score your agent is itself a system that can be wrong. A weak evaluator that always outputs "pass" will flatter your agent. A judge with high run-to-run variance will generate phantom regressions on every rerun. A simulator that coaches your agent when it misses a step hides the exact failures&amp;nbsp;you're&amp;nbsp;trying to measure. If you&amp;nbsp;don't&amp;nbsp;instrument the evaluation stack with the same rigor&amp;nbsp;you'd&amp;nbsp;apply to the agent, you end up with a measurement system&amp;nbsp;that's&amp;nbsp;less reliable than your intuition.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;The implication is straightforward: evaluation is recursive.&amp;nbsp;You have to measure the evaluator, not just the agent.&amp;nbsp;Every study below does exactly that;&amp;nbsp;accuracy, reliability, and cross-judge robustness,&amp;nbsp;so you know which evaluators to trust as hard gates, which to use as triage signals, and where the eval stack itself needs tuning before you can trust what it's telling you.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5 aria-level="2"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;Step&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;1 &amp;nbsp;Multi&lt;/SPAN&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;-turn&lt;/SPAN&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;evaluate&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134245418&amp;quot;:true,&amp;quot;134245529&amp;quot;:true,&amp;quot;335559738&amp;quot;:160,&amp;quot;335559739&amp;quot;:80}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN class="lia-text-color-15"&gt;&lt;EM&gt;Four session-level evaluators:&amp;nbsp;Task Completion, Customer Satisfaction,&amp;nbsp;Groundedness,&amp;nbsp;and Conversation Coherence,&amp;nbsp;each targeting a distinct property of the whole conversation.&amp;nbsp;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Start here because it defines the problem every other step is helping you&amp;nbsp;solve:&amp;nbsp;you need to score the session, not the turn. Each of the four evaluators targets a property that can only be assessed across the full conversation, and the design is intentionally&amp;nbsp;complementary,&amp;nbsp;an agent can pass one and fail another, and that gap is diagnostic, not redundant.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Task Completion&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;measures if&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;the user’s task&amp;nbsp;is&amp;nbsp;successfully and completely&amp;nbsp;accomplished&amp;nbsp;by the end of the session.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134233117&amp;quot;:false,&amp;quot;134233118&amp;quot;:false,&amp;quot;201341983&amp;quot;:0,&amp;quot;335551550&amp;quot;:1,&amp;quot;335551620&amp;quot;:1,&amp;quot;335559685&amp;quot;:0,&amp;quot;335559737&amp;quot;:0,&amp;quot;335559738&amp;quot;:0,&amp;quot;335559739&amp;quot;:160,&amp;quot;335559740&amp;quot;:278}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Customer Satisfaction&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;shows how satisfied&amp;nbsp;would the user&amp;nbsp;be with the agent’s performance across the session.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Groundedness&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;checks&amp;nbsp;if&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;the agent’s factual claims across all turns&amp;nbsp;are&amp;nbsp;supported by the conversation’s grounding sources.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134233117&amp;quot;:false,&amp;quot;134233118&amp;quot;:false,&amp;quot;201341983&amp;quot;:0,&amp;quot;335551550&amp;quot;:1,&amp;quot;335551620&amp;quot;:1,&amp;quot;335559685&amp;quot;:0,&amp;quot;335559737&amp;quot;:0,&amp;quot;335559738&amp;quot;:0,&amp;quot;335559739&amp;quot;:160,&amp;quot;335559740&amp;quot;:278}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Conversation Coherence&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;verifies that&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;the conversation flows&amp;nbsp;logically across turns;&amp;nbsp;state&amp;nbsp;maintained, no contradictions, sensible progression.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;The study&amp;nbsp;validated&amp;nbsp;all&amp;nbsp;four with&amp;nbsp;benchmark datasets, paired&amp;nbsp;validity&amp;nbsp;and reliability metrics across four independent runs, and six judge models. Two headline findings for the engineer making deployment decisions:&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Task&amp;nbsp;Completion and Customer Satisfaction&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt; reach strong enough agreement with ground truth and low enough run-to-run variance to use as single-pass scores in release&amp;nbsp;gating&amp;nbsp;so that&amp;nbsp;you&amp;nbsp;don't&amp;nbsp;need four reruns to trust the verdict.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Groundedness&amp;nbsp;is&amp;nbsp;the&amp;nbsp;exception.&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;It's&amp;nbsp;the hardest of the four, and the wrong tool for a hard release gate. Smaller judges&amp;nbsp;don't&amp;nbsp;just shift the&amp;nbsp;mean,&amp;nbsp;they collapse the hallucinated cluster in the score distribution, missing the minority-class failures the metric exists to catch. Deploy it as an aggregate trend signal with a frontier reasoning judge, route low-scoring sessions to human review, and track it over time.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Run these evaluators on your test set before each release. Gate on Task Completion and CSAT. Trend on&amp;nbsp;Groundedness. Use the gaps between evaluators as the diagnostic signal.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Read the study&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/evaluating-multi-turn-agents-a-quality-study-of-microsoft-foundry%E2%80%99s-multi-turn-e/4524106" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="auto"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;Evaluating Multi-Turn Agents: A Quality Study of Microsoft Foundry’s Multi-Turn Evaluators | Microsoft Community Hub&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{&amp;quot;335559738&amp;quot;:240}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5 aria-level="2"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;Step&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;2 &amp;nbsp;Define&lt;/SPAN&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;&amp;nbsp;the rubric&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134245418&amp;quot;:true,&amp;quot;134245529&amp;quot;:true,&amp;quot;335559738&amp;quot;:160,&amp;quot;335559739&amp;quot;:80}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN class="lia-text-color-15"&gt;&lt;EM&gt;Auto-generated, task-specific rubric evaluators that turn "what good looks like for your agent" into a weighted score with per-dimension explanations&amp;nbsp;which&amp;nbsp;is&amp;nbsp;adaptive, context-aware, and reusable across development iterations.&amp;nbsp;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;This is where most evaluation stacks fall short,&amp;nbsp;and where the opportunity is greatest. Generic evaluators measure generic properties. Task Completion tells you whether the job&amp;nbsp;got&amp;nbsp;done. CSAT tells you whether the user was satisfied. But neither&amp;nbsp;captures the success criteria that are specific to your agent, your domain, and your policies.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;"Verify the customer's identity before issuing a refund." "Confirm the alert is active before paging the on-call engineer." "Flag deviations from the contract template before drafting negotiation language." These&amp;nbsp;aren't&amp;nbsp;properties you can buy off the shelf. They live in your system prompt, your task definition, your&amp;nbsp;policy documentation. A generic rubric&amp;nbsp;can't&amp;nbsp;see them. A fixed catalog&amp;nbsp;can't&amp;nbsp;anticipate&amp;nbsp;them.&amp;nbsp;And without them, your evaluations are measuring something real&amp;nbsp;but&amp;nbsp;just not the thing your users actually care about.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;The auto-generated rubric evaluator is designed to&amp;nbsp;close exactly&amp;nbsp;this gap. Give it your&amp;nbsp;agent&amp;nbsp;definition and examples — the context you already have — and it generates a task-specific rubric with weighted dimensions and per-case explanations you can reuse across iterations. Unlike fixed multi-turn evaluators that apply the same criteria to every agent, the rubric adapts to what your agent is&amp;nbsp;actually supposed&amp;nbsp;to do. Change your agent's task scope, update its policy, expand&amp;nbsp;its tool set.&amp;nbsp;Generate a new rubric, and your evaluation pipeline stays current without manual re-authoring.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134233117&amp;quot;:false,&amp;quot;134233118&amp;quot;:false,&amp;quot;201341983&amp;quot;:0,&amp;quot;335551550&amp;quot;:1,&amp;quot;335551620&amp;quot;:1,&amp;quot;335559685&amp;quot;:0,&amp;quot;335559737&amp;quot;:0,&amp;quot;335559738&amp;quot;:0,&amp;quot;335559739&amp;quot;:160,&amp;quot;335559740&amp;quot;:278}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;In validation, generated rubrics aligned with trusted reference signals at the case level (scores on individual samples), and ranked candidate agents consistently with ground-truth oracles (correlation of agents rankings between grounf-truth and evaluations). Not only the discriminative quality of the generated rubrics was high, but also a large fraction of expert-authored rubrics are automatically generated. Rubrics show high reliability, reruns produce consistent verdicts and good separability, the evaluator's ability to tell one candidate agent from another is decisive.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;This is the step that makes your evaluation specific rather than generic, adaptive rather than fixed, and grounded in your agent's actual task rather than a one-size catalog. Run multi-turn evaluators to know whether the session succeeded. Run the rubric to know&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;whether your agent did its specific job correctly&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;and to understand the dimensions where it fell short.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Read the study&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;:&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/auto-generated-rubric-evaluators-building-context-aware-evaluators-for-ai-agents/4524095" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="auto"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;Auto-Generated Rubric Evaluators: Building Context-Aware Evaluators for AI Agents | Microsoft Community Hub&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5 aria-level="2"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;Step&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;3 &amp;nbsp;Simulate&lt;/SPAN&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;&amp;nbsp;users&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134245418&amp;quot;:true,&amp;quot;134245529&amp;quot;:true,&amp;quot;335559738&amp;quot;:160,&amp;quot;335559739&amp;quot;:80}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/H5&gt;
&lt;P&gt;&lt;EM&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN class="lia-text-color-15"&gt;USR-8: eight orthogonal metrics for scoring a user simulator that separate behavioral correctness from prose quality — so you can trust the test conversations generating your scores&lt;/SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;User simulators let you push an agent through hundreds of plausible conversations between every code&amp;nbsp;push, without waiting for real users. The catch, which matters directly to anyone who owns the eval pipeline: a simulator that sounds polished can quietly inflate your&amp;nbsp;agent's&amp;nbsp;scores; a simulator that coaches your agent when it misses a step hides the regressions&amp;nbsp;you're&amp;nbsp;trying to catch. Neither failure mode shows up in the agent's score sheet.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;USR-8 is an eight-metric rubric specifically for scoring user-simulator output, designed around a distinction that matters to the engineer, not just the researcher: behavior and style are separate axes. Clarity, relevance, steering (the no-coaching guard rail), responsiveness, consistency, and persona fidelity describe what the simulator does. Realism describes how it sounds. They move independently. Across 1,200 scored conversations in three domains, airline customer service, SRE incident triage, and legal contract review, the Foundry simulator scored at or near ceiling on every behavioral metric; realism was the one gap, and a focused prompt revision closed it with no regression elsewhere.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;The key design decision worth internalizing as an eval engineer: most of what makes a simulator good or bad lives in the prompt policy, not the orchestration code. A prompt swap between two harnesses closed most of the measured gap on every per-conversation metric. If your simulator is underperforming, rewrite the prompt before you replace the framework.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Read the study&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/how-to-score-a-user-simulator-introducing-usr-8/4523642" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;How to Score a User Simulator: Introducing USR-8 | Microsoft Community Hub&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5 aria-level="2"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;Step&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;4 &amp;nbsp;Sample&lt;/SPAN&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;&amp;nbsp;production traces&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134245418&amp;quot;:true,&amp;quot;134245529&amp;quot;:true,&amp;quot;335559738&amp;quot;:160,&amp;quot;335559739&amp;quot;:80}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN class="lia-text-color-15"&gt;&lt;EM&gt;MinHash&amp;nbsp;farthest-first diversity sampling: server-side, zero extra per-token cost,&amp;nbsp;selecting for&amp;nbsp;coverage of the input space rather than a mirror of production frequencies.&amp;nbsp;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Once your agent is in production, you have more traces than you can evaluate and the subset you pick shapes everything downstream: what your eval catches, what your fine-tuning learns, what your rubric generation sees. The default instinct is uniform random sampling.&amp;nbsp;It's&amp;nbsp;statistically unbiased and mirrors your production distribution accurately.&amp;nbsp;It's&amp;nbsp;also dominated by the handful of common request patterns that make up the bulk of your traffic,&amp;nbsp;and systematically under-represents&amp;nbsp;the rare prompts, unusual tool-call sequences, and edge cases that are the most important inputs for both evaluation and fine-tuning.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Intelligent sampling uses MinHash signatures and farthest-first traversal to select a subset that covers as much of the input space as possible, including the long tail a uniform sample buries. It runs server-side with no LLM or embedding calls — zero additional per-token cost, completing in under a minute on typical trace pools. On the primary validation dataset (5,000 WildChat traces, 100 selected), diversity sampling produced higher lexical diversity and larger vocabulary than a uniform-random baseline. An LLM judge preferred the diversity-sampled subset most of the time for training and evaluation use. Fine-tuning on a diversity-sampled corpus converged faster with comparable held-out generation quality.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Reach for diversity sampling when breadth of behavior drives downstream quality — evaluation suites, rubric generation, fine-tuning corpora. Reach for a uniform sample when you need faithful production-frequency representation — latency profiling, error-rate estimation, distribution-level SLA checks.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Read the stud&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;y&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/intelligent-sampling-in-microsoft-foundry-the-science-behind-selecting-better-pr/4523722" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="auto"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;Intelligent sampling in Microsoft Foundry: the science behind selecting better production traces | Microsoft Community Hub&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5 aria-level="2"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;Step&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;5 &amp;nbsp;Benchmark&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134245418&amp;quot;:true,&amp;quot;134245529&amp;quot;:true,&amp;quot;335559738&amp;quot;:160,&amp;quot;335559739&amp;quot;:80}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN class="lia-text-color-15"&gt;&lt;EM&gt;Standardized open-source benchmarks run against your own model deployment or agent — with your judge model, your configuration, and side-by-side comparison across runs.&amp;nbsp;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Public leaderboard scores tell you how a model performs in general. They&amp;nbsp;don't&amp;nbsp;tell you how your deployment performs on the reasoning, math, or domain-knowledge questions that matter for your application&amp;nbsp;or whether it regressed after a prompt or model-version change.&amp;nbsp;That's&amp;nbsp;a different measurement, and it requires running the benchmark yourself, against your own deployment, under the same conditions you plan to compare.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Benchmarks in Microsoft Foundry (preview) make that a first-class part of the development workflow. You select from a catalog of well-known suites,&amp;nbsp;reasoning, math, science, and truthfulness (GPQA Diamond, BIG-Bench Hard,&amp;nbsp;MuSR,&amp;nbsp;TruthfulQA, BBEH, AIME 2025, and more),&amp;nbsp;each with its own curated dataset, task category, and built-in scorer. Run them from the portal wizard or the REST API, compare results side by side in the evaluation group view, and pin a stable judge model and benchmark version so the score is a reproducible yardstick you can trust across releases — not a one-time number tied to a single configuration.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;The practical pattern for release gating: pick one or two reasoning-heavy benchmarks (GPQA Diamond or&amp;nbsp;MuSR&amp;nbsp;are good defaults), target your agent, run it on every meaningful change to the underlying model, system prompt, or tool set, and treat the delta as the signal — not the absolute score.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Read the study&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/benchmarks-in-microsoft-foundry-preview-standardized-model-and-agent-quality-che/4523711" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="auto"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;Benchmarks in Microsoft Foundry (preview): Standardized model and agent quality checks | Microsoft Community Hub&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5 aria-level="2"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;The thread running through all five&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134245418&amp;quot;:true,&amp;quot;134245529&amp;quot;:true,&amp;quot;335559738&amp;quot;:160,&amp;quot;335559739&amp;quot;:80}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/H5&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;The key design decision across these studies: we measured every evaluator the way we ask you to measure your agent.&lt;/SPAN&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;Benchmark datasets. Paired validity and reliability metrics. Multiple judge models per evaluator so we could separate "evaluator works" from "this particular judge works." That methodology produced a result that's more useful than a single accuracy number: for each evaluator, you now know which axis to trust it on, which judge tier it requires, and whether the caveats live in the score quality or only in the threshold placement.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;That distinction matters operationally. CSAT with a smaller judge produces good scores at a&amp;nbsp;miscalibrated&amp;nbsp;threshold,&amp;nbsp;a fixable problem&amp;nbsp;that can be&amp;nbsp;solved by re-tuning the cutoff on your own data.&amp;nbsp;Groundedness&amp;nbsp;with a smaller judge produces genuinely weaker scores,&amp;nbsp;not a fixable problem, a judge-replacement decision. Accuracy tables look the same. The per-judge ablation is what tells you which category of&amp;nbsp;caveat&amp;nbsp;you're&amp;nbsp;dealing with.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H5 aria-level="2"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-parastyle="heading 2"&gt;What makes this approach different&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134245418&amp;quot;:true,&amp;quot;134245529&amp;quot;:true,&amp;quot;335559738&amp;quot;:160,&amp;quot;335559739&amp;quot;:80}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/H5&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="8" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Symbol&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="1" data-aria-level="1"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;Session-level measurement, not turn-level averages.&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;The four multi-turn evaluators measure properties that only exist across a full conversation. No amount of single-turn metric aggregation&amp;nbsp;recovers&amp;nbsp;task completion or cross-turn grounding.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="8" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Symbol&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="2" data-aria-level="1"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;Task-specific rubrics, not one-size-fits-all criteria.&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;The auto-generated rubric evaluator builds evaluation criteria from your agent's own context — adaptive to your task, your domain, and your policies — rather than applying a fixed catalog to every agent regardless of what it&amp;nbsp;actually does.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="8" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Symbol&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="3" data-aria-level="1"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;Validated evaluators, not just provided ones.&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;Every evaluator above ships with a published quality study — accuracy, reliability, and cross-judge robustness — so you know where to trust it as a hard gate and where to treat it as a triage signal before you wire it into your CI pipeline.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="8" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Symbol&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="4" data-aria-level="1"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;Coverage over representativeness, by design.&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;Diversity sampling deliberately surfaces the long&amp;nbsp;tail&amp;nbsp;your uniform sample buries — the rare inputs and edge cases that evaluation and fine-tuning need&amp;nbsp;most and&amp;nbsp;random sampling systematically skips.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="8" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Symbol&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="5" data-aria-level="1"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;Simulator quality is a first-class metric.&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;USR-8 gives you a rubric for the test harness itself. If the simulator&amp;nbsp;isn't&amp;nbsp;measured, the scores it produces&amp;nbsp;aren't&amp;nbsp;trustworthy — and you&amp;nbsp;won't&amp;nbsp;know in which direction&amp;nbsp;they're&amp;nbsp;wrong.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="8" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Symbol&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;multilevel&amp;quot;}" data-aria-posinset="6" data-aria-level="1"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;One&amp;nbsp;workflow,&amp;nbsp;linked to the traces.&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;Multi-turn evaluation, rubric generation, simulation, trace sampling, and benchmarking live&amp;nbsp;in&amp;nbsp;the same observability surface, against the same traces — not five disconnected tools requiring five separate data pipelines.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;H4 aria-level="1"&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-parastyle="heading 1"&gt;Getting started&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{&amp;quot;134245418&amp;quot;:true,&amp;quot;134245529&amp;quot;:true,&amp;quot;335559738&amp;quot;:360,&amp;quot;335559739&amp;quot;:80}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/H4&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Start by reading&amp;nbsp;our&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/evaluating-ai-agents-a-practical-guide-with-microsoft-foundry/4500224" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;Evaluating AI Agents Practical Gide with Microsoft Foundry&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;for holistic view and approach.&amp;nbsp;&amp;nbsp;Then run the path in order, keeping&amp;nbsp;it as&amp;nbsp;a loop on every meaningful change.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV class="styles_lia-table-wrapper__h6Xo9 styles_table-responsive__MW0lN"&gt;&lt;table border="1" style="border-width: 1px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Step&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Do this&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Go deeper&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;1. Multi-turn&amp;nbsp;evaluate&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Run the four session-level evaluators on your test set before each release; gate on Task Completion / CSAT, trend on&amp;nbsp;Groundedness, use gaps between evaluators as diagnostic signal&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/evaluating-multi-turn-agents-a-quality-study-of-microsoft-foundry%E2%80%99s-multi-turn-e/4524106" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;Evaluating Multi-Turn Agents: A Quality Study of Microsoft Foundry’s Multi-Turn Evaluators | Microsoft Community Hub&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;2. Define the rubric&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Generate a task-specific rubric from your agent definition and examples; review against known-good and known-bad cases before wiring into CI&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/auto-generated-rubric-evaluators-building-context-aware-evaluators-for-ai-agents/4524095" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;Auto-Generated Rubric Evaluators: Building Context-Aware Evaluators for AI Agents | Microsoft Community Hub&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;3. Simulate users&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Choose your simulator philosophy (realistic foil vs. helpful tester) first, then score the simulator with USR-8 before trusting its output for agent evaluation&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/how-to-score-a-user-simulator-introducing-usr-8/4523642" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;How to Score a User Simulator: Introducing USR-8 | Microsoft Community Hub&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;4. Sample traces&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;Enable Application Insights, open the Traces tab, and create a dataset from production traces with diversity sampling — especially before fine-tuning or rubric generation&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/intelligent-sampling-in-microsoft-foundry-the-science-behind-selecting-better-pr/4523722" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;Intelligent sampling in Microsoft Foundry: the science behind selecting better production traces | Microsoft Community Hub&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;SPAN data-contrast="auto"&gt;5. Benchmark&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;From Build &amp;gt; Evaluations &amp;gt; Create, start with a small benchmark (AIME 2025 or GPQA Diamond) against your deployment or agent.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;td&gt;
&lt;P&gt;&lt;A href="https://techcommunity.microsoft.com/blog/azure-ai-foundry-blog/benchmarks-in-microsoft-foundry-preview-standardized-model-and-agent-quality-che/4523711" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;Benchmarks in Microsoft Foundry (preview): Standardized model and agent quality checks | Microsoft Community Hub&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;colgroup&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;col style="width: 33.33%" /&gt;&lt;/colgroup&gt;&lt;/table&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;SPAN data-ccp-props="{&amp;quot;335559685&amp;quot;:720}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="4" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Symbol&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;hybridMultilevel&amp;quot;}" data-aria-posinset="1" data-aria-level="1"&gt;&lt;SPAN data-contrast="auto"&gt;Start building:&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://ai.azure.com/" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;ai.azure.com&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="4" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Symbol&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;hybridMultilevel&amp;quot;}" data-aria-posinset="2" data-aria-level="1"&gt;&lt;SPAN data-contrast="auto"&gt;Watch the Build session (BRK252):&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://aka.ms/build26-BRK252" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;aka.ms/build26-BRK252&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-contrast="auto"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="4" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Symbol&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;hybridMultilevel&amp;quot;}" data-aria-posinset="3" data-aria-level="1"&gt;&lt;SPAN data-contrast="auto"&gt;Read the Build recap:&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://devblogs.microsoft.com/foundry/build-2026-from-observability-to-roi-for-ai-agents-on-any-framework/" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;From observability to ROI for AI agents on any framework&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;UL&gt;
&lt;LI aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="4" data-list-defn-props="{&amp;quot;335552541&amp;quot;:1,&amp;quot;335559685&amp;quot;:720,&amp;quot;335559991&amp;quot;:360,&amp;quot;469769226&amp;quot;:&amp;quot;Symbol&amp;quot;,&amp;quot;469769242&amp;quot;:[8226],&amp;quot;469777803&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;469777804&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;469777815&amp;quot;:&amp;quot;hybridMultilevel&amp;quot;}" data-aria-posinset="4" data-aria-level="1"&gt;&lt;SPAN data-contrast="auto"&gt;Join the community:&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://aka.ms/ai/discord" target="_blank" rel="noopener"&gt;&lt;SPAN data-contrast="none"&gt;&lt;SPAN data-ccp-charstyle="Hyperlink"&gt;aka.ms/ai/discord&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;The&amp;nbsp;teams&amp;nbsp;shipping agents that hold up in production&amp;nbsp;aren't&amp;nbsp;the ones running the most evals.&amp;nbsp;They're&amp;nbsp;the ones who know which evals to trust, which to treat as signals, and which parts of their measurement stack to fix before they can believe any of the numbers. These five steps&amp;nbsp;don't&amp;nbsp;guarantee a perfect agent. They&amp;nbsp;help ensure&amp;nbsp;that when something breaks, the failure shows up in your data — not in your users' experience.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-contrast="auto"&gt;That's what evaluation is actually for.&lt;/SPAN&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-ccp-props="{}"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 08 Jul 2026 18:41:30 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-foundry-blog/before-you-ship-your-agent-a-five-step-path-to-evaluations-you/ba-p/4532311</guid>
      <dc:creator>amah</dc:creator>
      <dc:date>2026-07-08T18:41:30Z</dc:date>
    </item>
  </channel>
</rss>

