Ir para o conteúdo

Emerson Amorim

Software Architecture

Arquitetura AI-Native: como projetar aplicações preparadas para agentes de IA

O que significa arquitetura AI-native: produtos desenhados para LLMs e agentes desde a borda até a operação. Princípios, camadas, trade-offs com cloud native e caminho de modernização.

Por Emerson Amorim15 min de leitura

Arquitetura AI-native não é “colar um LLM no monolito”. É projetar produto, dados, APIs e operação assumindo raciocínio probabilístico, retrieval com ACL e autonomia graduada. O modelo entra como dependência de primeira classe, com contratos e falhas esperadas.

O que é arquitetura AI-native

Uma aplicação AI-native nasce com: (1) superfície de produto que expressa objetivos, não só formulários; (2) gateway de modelos e ferramentas; (3) conhecimento recuperável com identidade; (4) avaliação e telemetria de qualidade; (5) políticas de autonomia. Cloud native cuida de deploy e escala. AI-native cuida de decisão probabilística dentro do sistema.

  • Objetivos e tarefas como cidadãos de primeira classe na API
  • Ferramentas tipadas em vez de integrações ad hoc no prompt
  • Dados preparados para retrieval (chunking, ACL, citação)
  • Observabilidade de steps, não só de requests HTTP
  • Fallback humano e degradado quando o modelo falha

AI-native versus cloud native

DimensãoCloud nativeAI-native
UnidadeServiço / containerTarefa / run / evidência
ContratoAPI e eventosAPI + schemas de LLM/tool
FalhaRetry, circuit breaker+ alucinação, tool misuse, drift
EscalaRéplicas e filas+ custo de tokens e quotas
GovernançaIAM, rede, secrets+ políticas de autonomia e eval

Camadas de uma arquitetura AI-native

┌──────── Experience (apps, channels) ────────┐
└────────────────────┬────────────────────────┘
                     ▼
┌──────── Intent / Product API ───────────────┐
│  goals, auth, quotas, idempotency           │
└────────────────────┬────────────────────────┘
                     ▼
┌──────── Orchestration ──────────────────────┐
│  RAG · Agents · Workflows                   │
└───────┬─────────────────────┬───────────────┘
        ▼                     ▼
 Model Gateway          Tool Gateway
        │                     │
        └──────────┬──────────┘
                   ▼
        Domain services (APIs, events)
                   │
                   ▼
        Data plane (OLTP, search, vector, graph)
                   │
                   ▼
        Control plane: policy · traces · eval · cost
Experience → Intent API → Orchestration (RAG/Agents) → Model & Tool gateways → Domain services → Data plane → Control plane (eval, policy, cost).

Intent API

Em vez de expor só CRUD, a borda aceita intenções: “conciliar extrato”, “gerar relatório com fontes”, “triage ticket”. Isso alinha produto a agentes sem esconder o domínio atrás de um chat genérico.

Esboço de intent na borda
type IntentRequest = {
  intent: "reconcile_statement" | "draft_report" | "triage_ticket";
  tenantId: string;
  payload: Record<string, unknown>;
  autonomy: "suggest" | "act_with_approval" | "act";
};

type IntentResult = {
  status: "completed" | "needs_human" | "failed";
  output?: unknown;
  citations?: string[];
  runId: string;
};

Orquestração: RAG, agentes e workflows

Nem tudo precisa de agente. Workflow determinístico para o previsível. RAG para conhecimento. Agentic AI para incerteza útil. A arquitetura AI-native torna essa escolha explícita por intent, com telemetria comparável.

Gateways de modelo e de ferramenta

Centralize provedores, timeouts, fallback e orçamento de tokens no model gateway. Centralize allowlist, schema e risco no tool gateway. Sem gateways, cada feature reinventa segurança e custo.

Data plane preparado para IA

  • OLTP continua dono da verdade transacional
  • Índices lexical/vetorial com ACL por documento
  • Opcional: grafo para relações (KAG) quando o domínio exigir
  • Pipelines de ingestão com qualidade e versionamento de embedding

Princípios de desenho

  1. Deny by default em ferramentas e dados
  2. Evidência citável preferível a resposta fluida sem fonte
  3. Autonomia graduada por risco de negócio
  4. Custo de tokens como requisito não funcional
  5. Avaliação no pipeline de entrega, não só em demo
  6. Degradação elegante: modo assistido quando o modelo falha

Como modernizar um sistema legado para AI-native

Não reescreva o core para “ficar AI-native”. Extraia seams: APIs estáveis, identidade, eventos e um bounded context piloto. Coloque Intent API e orchestration ao lado do legado (strangler). O mesmo raciocínio de modernização de monólito Java se aplica, com a camada de IA como novo consumidor disciplinado.

FaseFocoEvitar
0Caso de uso + métricasChat genérico sem dono
1RAG com ACL em um domínioÍndice sem autenticação
2Intent API + gateway de modeloChamadas LLM espalhadas no legado
3Ferramentas tipadas + HITLAgente com write irrestrito
4Eval contínuo + multiagente se necessárioEscala prematura de autonomia

Sinais de maturidade

  • Toda feature de IA tem runId, custo e resultado tipado
  • Políticas de autonomia versionadas como código
  • Casos de ouro quebram o pipeline se a qualidade regredir
  • Domínio continua testável sem LLM (ferramentas e serviços)
  • Incidentes de IA entram no mesmo processo de SRE/produto

Referência de produto

No KingFy, a arquitetura AI-native aparece como Super App com orquestração de agentes, multimodalidade e limites de autonomia. Na EmerSoftware, o mesmo pensamento vira fábrica: arquitetura moderna com AI Engineering aplicada a delivery enterprise. Emerson Amorim usa esse padrão para unir Software Architecture e Agentic AI sem tratar o modelo como mágica de interface.

Perguntas frequentes

O que é arquitetura AI-native?
É projetar produto, dados, APIs e operação assumindo LLMs e agentes como dependências de primeira classe: Intent API, gateways, retrieval com ACL, políticas de autonomia e avaliação contínua.
AI-native é o mesmo que cloud native?
Não. Cloud native cobre deploy e escala. AI-native cobre decisão probabilística, custo de tokens, ferramentas tipadas e governança de autonomia. O ideal é combinar os dois.
Como modernizar um legado para AI-native?
Não reescreva o core. Extraia seams, coloque Intent API e orquestração ao lado (strangler), comece com RAG com ACL e só então ferramentas com human-in-the-loop.
Quais sinais mostram maturidade AI-native?
RunId e custo por feature, políticas versionadas, casos de ouro no pipeline, domínio testável sem LLM e incidentes de IA no mesmo processo de SRE/produto.