2 min read
Build 2025: The Copilot Stack Deep Dive
The Copilot Stack represents Microsoft’s comprehensive approach to AI-assisted applications. Here’s what’s new.
Copilot Stack Architecture
Layer 1: Foundation Models
- Access to GPT-5, Claude 4, Gemini 2
- Microsoft’s own models (Phi-4, MAI-1)
- Automatic model routing and fallback
Layer 2: AI Orchestration
- Semantic Kernel 2.0 release
- Built-in memory and planning
- Cross-service orchestration
Layer 3: Copilot Services
- Grounding with enterprise data
- Safety and compliance filters
- Multi-turn conversation management
Layer 4: User Experiences
- Copilot in Microsoft 365
- Custom Copilots in Copilot Studio
- Embedded Copilot components
Building Custom Copilots
// Copilot Studio API for custom copilots
using Microsoft.Copilot.Studio;
var copilot = new CopilotBuilder()
.WithName("SalesAssistant")
.WithDescription("Helps sales team with customer insights")
.WithModel("gpt-4o")
.WithGrounding(new GroundingConfig
{
DataSources = new[]
{
new SharePointDataSource("https://company.sharepoint.com/sales"),
new DynamicsDataSource("https://company.crm.dynamics.com")
},
SearchType = SearchType.Hybrid
})
.WithTopics(new[]
{
new Topic("CustomerLookup", "Find customer information"),
new Topic("SalesForecast", "Get sales predictions"),
new Topic("CompetitorAnalysis", "Analyze competitors")
})
.WithSafetyFilters(SafetyLevel.Enterprise)
.Build();
// Deploy copilot
var deployment = await copilot.DeployAsync(new DeploymentConfig
{
Channel = Channel.Teams,
Users = UserGroup.SalesTeam,
Analytics = true
});
Copilot Extensions Framework
// Building a Copilot extension
import { CopilotExtension, Message, Response } from '@microsoft/copilot-sdk';
class InventoryExtension extends CopilotExtension {
name = "Inventory Lookup";
description = "Check product inventory levels";
async handleMessage(message: Message): Promise<Response> {
const product = this.extractProduct(message.text);
const inventory = await this.inventoryService.check(product);
return {
text: `Current inventory for ${product}: ${inventory.quantity} units`,
adaptiveCard: this.buildInventoryCard(inventory),
citations: [{ source: "Inventory System", url: "..." }]
};
}
}
The Copilot Stack makes it straightforward to build AI-powered applications across the Microsoft ecosystem.