Pular para o conteúdo

técnico

Engenharia de contexto e orquestração de agentes

  • ia
  • agentes
  • contexto

Consolidação do que venho estudando sobre o desenvolvimento de sistemas baseados em IA: um mapa de arquitetura e de implementação prática. As fontes estão no final.

Conceitos fundamentais

  • Workflows vs. agentes: workflows são processos determinísticos, rígidos e quase sempre lineares — automação tradicional. Agentes têm comportamento não determinístico: possuem autonomia, raciocinam sobre objetivos e decidem ativamente quais ferramentas usar para chegar ao resultado.
  • Engenharia de contexto: a disciplina de montar e estruturar programaticamente os dados exatos que o modelo enxerga, com foco em reduzir alucinações e otimizar o processamento.
  • Orquestração multi-agentes: padrão em que um orquestrador (agente supervisor) coordena o trabalho de subagentes especialistas — desenvolvedor de backend, testador, versionador.
  • MCP (Model Context Protocol): padrão aberto da Anthropic, baseado em JSON-RPC, que funciona como conexão universal — o “USB-C da IA”. Padroniza como os modelos acessam APIs externas, recursos locais e bancos de dados.
  • RAG (Retrieval-Augmented Generation): pipeline que recupera trechos de informação externa de um banco de dados e os injeta no prompt, ancorando as respostas em fatos.
  • Agentic RAG: evolução do RAG em que o agente decide dinamicamente se precisa buscar informação, qual base consultar (interna ou externa) e como formatar a saída.
  • GraphRAG: abordagem que usa redes de grafos para navegar no contexto, descobrindo ligações complexas entre documentos e entidades.
  • Vector embeddings: transformação de texto, código ou imagem em assinaturas numéricas multidimensionais que representam o significado semântico do conteúdo.
  • MoE (Mixture of Experts): arquitetura interna em que apenas sub-redes especialistas são ativadas por token, garantindo eficiência computacional na inferência.

Frameworks e ferramentas

Orquestração

  • LangGraph: para cenários dinâmicos. Trata o sistema como grafo cíclico, permitindo ciclos de feedback contínuos e persistência forte de memória (state management).
  • CrewAI: voltado à orquestração corporativa, organizando o sistema por papéis (roles) e tarefas (tasks) bem definidos.
  • LiteLLM: camada de gateway e roteamento, fundamental para o handover entre modelos. Contorna limites de quota alternando automaticamente entre provedores (OpenAI, Anthropic, Gemini) sem derrubar o sistema.

Arquivos de contexto e memória

  • gemini.md / claude.md: arquivos de configuração na raiz que ditam o papel do modelo, as regras globais do projeto e os padrões de conduta.
  • DESIGN.md: padrão aberto que guarda os tokens de UI e o raciocínio visual do sistema, ancorando de forma persistente a interface gerada.
  • shared_state.json: registra a memória do projeto em tempo real — o que já foi construído, por qual agente, e qual é a próxima etapa.

Bancos vetoriais locais

  • SQLite-vss: guarda itens e vetores em um único arquivo SQLite. Simplifica projetos Python pequenos.
  • FAISS: ferramenta da Meta focada em performance pura de busca matemática, para bases grandes.

Estratégias

  • Framework WAT: estruturação prática pela sinergia entre Workflows (regras de operação), Agents (a IA autônoma central) e Tools (ações discretas integradas ao sistema).
  • Gestão da janela de contexto: context pruning (poda de interações antigas) e conversation summarization (pedir sumários de transição ao modelo) para manter os tokens baixos e contornar o efeito lost in the middle.
  • CAG (Cache Augmented Generation): pré-calcular e armazenar as matrizes lógicas do texto (KV cache) em vez de reenviar o documento inteiro a cada pergunta, viabilizando consultas baratas e instantâneas a bases enormes.
  • Ralph Wiggum / self-healing: ciclos contínuos de verificação no terminal — um loop em shell em que a IA testa o próprio código, absorve o erro e reinicia corrigindo as falhas iterativamente.
  • Chain-of-Thought (CoT): forçar o modelo a declarar as etapas lógicas antes da resposta final. Melhora a precisão do raciocínio em tarefas complexas.

Fontes: