10-01-01 — Declarative vs Custom Engine Agents
TL;DR
Declarative agents rodam sobre o M365 Copilot como extensões configuradas via YAML/JSON — sem código de LLM, usam o modelo da Microsoft. Custom engine agents você controla o modelo, o orquestrador e a lógica — mais poder, mais responsabilidade. A escolha é simples: se cabe no Copilot Studio low-code com GPT-4o da Microsoft, use declarative. Se precisa de modelo próprio, RAG avançado ou lógica complexa, use custom engine.
O que são Declarative Agents
Declarative agents são a forma mais simples de estender o M365 Copilot. Você define comportamento via manifest (JSON) e instructions (texto), sem escrever código de LLM. O agente roda sobre a infraestrutura do Microsoft 365 Copilot — mesmo modelo, mesmo grounding, mesma compliance.
Estrutura de um Declarative Agent
// declarativeAgent.json (manifest simplificado)
{
"schema": "https://developer.microsoft.com/json-schemas/copilot/declarative-agent/v1.4/schema.json",
"version": "v1.4",
"name": "Assistente RH Impar",
"description": "Responde dúvidas sobre políticas de RH",
"instructions": "Você é o assistente de RH da Impar. Responda com base nos documentos de políticas. Seja conciso e formal.",
"capabilities": [
{
"name": "OneDriveAndSharePoint",
"items_by_url": [
{ "url": "https://impar.sharepoint.com/sites/RH/Shared%20Documents" }
]
}
]
}
O que são Custom Engine Agents
Custom engine agents você traz seu próprio modelo (Azure OpenAI, outros), seu próprio orquestrador (Semantic Kernel, AutoGen, LangChain) e sua própria lógica de RAG. O Copilot Studio (ou M365 Agents SDK) serve como camada de hosting e publicação, não como LLM.
Comparativo
| Aspecto | Declarative | Custom Engine |
|---|---|---|
| Código necessário | Nenhum (só JSON/texto) | Sim (.NET, Python, JS) |
| Modelo LLM | Controlado pela Microsoft | Você escolhe |
| RAG avançado | Limitado ao que o Copilot suporta | Total controle |
| Custo | Incluído no M365 Copilot | Azure OpenAI separado |
| Compliance M365 | Nativa (DLP, auditoria) | Responsabilidade sua |
| Time-to-market | Horas | Dias/semanas |
| Canais suportados | M365 Copilot, Teams | Teams, Web, qualquer canal |
Quando usar cada um
- Use declarative quando o caso de uso é grounding em documentos corporativos + persona específica. Ex: assistente jurídico, assistente de onboarding.
- Use custom engine quando você precisa de: modelo fine-tuned, lógica de negócio complexa, integração com sistemas legados .NET, ou SLA diferenciado.
Ciclo de vida no Copilot Studio
Arquitetura de referência
A Microsoft publicou em 2025 o Agents SDK para padronizar a criação de custom engine agents. O SDK abstrai a camada de comunicação com canais (Teams, Web Chat, Outlook) e deixa você focar na lógica do agente.
Como isso se conecta
- 10-01-02 — Topics e triggers são o mecanismo de controle dentro do Copilot Studio para declarative agents
- 10-02-01 — M365 Agents SDK é o SDK oficial para custom engine agents
- 10-01-04 — Como migrar de declarative para custom engine quando o projeto cresce
- Módulo 9 (Semantic Kernel) — SK é o orquestrador preferido para custom engine agents em .NET