How Microsoft built Ask Learn: an Advanced RAG knowledge service powering Q&A Assist and Copilot for Azure
Microsoft Q&A users typically waited hours for community responses and had no way to receive instant, documentation-grounded answers. Building a generative AI system that could reliably answer technical questions required solving inherent LLM non-determinism at massive scale.
A simple 'naïve RAG' approach produced only decent results, which was insufficient for Microsoft's standards requiring reliable, relevant, accurate, and verifiable answers.
Microsoft launched Q&A Assist in May 2023 and extended it as Ask Learn, an API that grounds Copilot for Azure answers in Microsoft Learn documentation and serves as a fallback when Copilot cannot fulfill a user request directly.
Frequently asked questions
What did this team achieve with this AI workflow?
Microsoft launched Q&A Assist in May 2023 and extended it as Ask Learn, an API that grounds Copilot for Azure answers in Microsoft Learn documentation and serves as a fallback when Copilot cannot fulfill a user reques…
What tools did this team use?
Azure OpenAI, .NET, Azure SDK, Python notebooks, Prompt flow, Azure AI Search, vector database.
What results were reported?
Root cause analysis time per feedback response: up to 30 minutes; Team readiness to improve accuracy: much better equipped to make improvements to address relevance and accuracy going forward; User cognitive burden of context switching: lessen this cognitive burden (source-reported, not independently verified).
What failed first in this deployment?
A simple 'naïve RAG' approach produced only decent results, which was insufficient for Microsoft's standards requiring reliable, relevant, accurate, and verifiable answers.
How is this customer support AI workflow structured?
User submits question → Query pre-processing → Vector similarity search → Post-retrieval processing → LLM answer generation → Safety and quality evaluation → Answer delivered in Azure portal → User feedback capture → Root cause analysis per response.