Imagem de cabeçalho de blog mostrando como as tecnologias em nuvem impactam nossas vidas e podem mudar nosso futuro para melhor.

Power Platform, IA generativa e tecnologia em geral

Capability Routing vs. Context Pruning

Este post é o segundo da série Antes do Primeiro Token, onde apresento como arquitetar soluções de próxima geração que utilizem IA generativa de maneira eficiente.

Introdução

Grande parte das discussões atuais sobre IA generativa gira em torno de aumentar a sua eficiência através da redução da quantidade de contexto compartilhado.

Isso acontece porque muitas organizações descobriram na prática que fazer um simples dump de dados não estruturados e confiar que um modelo Frontier será capaz de processá-los de forma consistente em qualquer fluxo de trabalho raramente produz os resultados esperados.

Ou, quando produz, o custo não fecha a conta. Em resumo:

Too much brute force baby 😉

No primeiro artigo desta série apresentei a hipótese de que a próxima geração de arquiteturas de IA não será definida apenas pelos modelos utilizados, mas pelas decisões tomadas antes de chamar esses modelos.

Diversos termos aparecem constantemente nessas discussões, como IA determinística, arquiteturas agentic e padrões modernos de orquestração, mas neste artigo quero focar em dois conceitos que surgem repetidamente quando o assunto é redução de contexto:

  • Context Pruning
  • Expert Judgment

Vou compará-los, discutir suas vantagens e limitações e apresentar um terceiro conceito que surgiu durante essa análise: Capability Routing.

Um conceito inspirado na forma como especialistas humanos resolvem problemas e que nasceu de uma pergunta que me incomodou bastante ao longo desta pesquisa:

Dois conceitos que estão ganhando espaço

Antes de avançarmos, vale alinharmos rapidamente os conceitos que motivaram esta discussão:

TécnicaContext PruningExpert Judgement
DescriçãoTécnica utilizada para reduzir a quantidade de informação enviada para um modelo durante um processo de geração baseada em recuperação de conhecimento.Capacidade de tomar decisões semelhantes às de um especialista humano.
ObjetivoMelhorar custo, latência, qualidade do grounding e aproveitamento da janela de contextoReproduzir a forma como especialistas identificam padrões, descartam alternativas, priorizam evidências e selecionam onde concentram sua atenção
Comparativo entre Context Pruning e Expert Judgement

A ideia por trás do Context Pruning é bastante intuitiva: se enviar muito contexto para um modelo é ruim, basta enviar menos contexto, adicionando uma etapa intermediária que será responsável por eliminar informações consideradas menos relevantes.

Em arquiteturas de AI generativa pro-code (utilizando por exemplo o Azure AI Foundry) é algo possível de ser implementado através de Query Planning, Retrieval, Agentic RAG e Reranking. No entanto, em plataformas no/low code como o Copilot Studio e M365 Copilot geralmente não existe o mesmo nível de controle sobre o pipeline interno de recuperação, o que limita a aplicação e efetividade da técnica.

Outro fator limitante é que quanto mais agressivo for o pruning, maior o risco de se perder contexto, evidências ou precisão. Em outras palavras, toda estratégia de Context Pruning assume implicitamente que consegue responder corretamente à seguinte pergunta:

Expert Judgment, por outro lado, lida com a redução de contexto através de uma abordagem totalmente diferente. Por exemplo, para responder a pergunta “Como configurar políticas de DLP para agentes do Copilot Studio?”, um especialista humano poderia seguir uma das abordagens a seguir:

Abordagem 01Abordagem 02
Ler toda a documentação online
Selecionar todos os artigos relevantes
Elaborar a resposta
Identificar os domínios relacionados
Ler a documentação online relacionada
Elaborar a resposta

É óbvio que a abordagem 02 é muito mais eficiente: em poucos segundos o especialista já descartou mentalmente dezenas de domínios irrelevantes. Observe que o especialista não está tentando decidir quais páginas da documentação devem ser descartadas, ele está tomando uma decisão anterior:

O processo de análise só começa depois dessa decisão.

Por este motivo, mais as limitações citadas do Context Pruning, que acredito que adotar técnicas baseadas em Expert Judgement em arquiteturas no/low code de AI generativa tem o potencial de:

  • Aumentar a eficiência, acuracidade e previsibilidade dos agentes e fluxos de trabalho já nas primeiras iterações.
  • Empodera times de negócio e não especialistas ao permitir que foquem na criação e curadoria de conhecimento e documentação de processo de negócios para apoiar a tomada de decisão dos agentes.
  • Acelera o desenvolvimento das soluções por permitir que os especialistas – no/low coders ou não – desacoplem contexto de negócio das instruções, o que inclusive facilita a manutenção e evolução da solução.

Capability Routing – estendendo o Expert Judgment para arquiteturas de agentes

Até este ponto discutimos duas abordagens diferentes para reduzir a quantidade de informação utilizada durante a resolução de um problema. Embora ambas possam produzir resultados semelhantes, existem diferenças importantes:

TécnicaContext PruningExpert Judgement
ObjetivoO que devo remover?Onde devo procurar?
QuandoDepois da recuperaçãoAntes da recuperação
Comparativo entre Context Pruning e Expert Judgement

Isto me levou a formular um terceiro conceito, aplicável a arquitetura de agentes, que chamei de Capability Routing.

O que é Capability Routing?

É o processo de selecionar antecipadamente quais capacidades, especialistas, ferramentas, agentes e fontes de conhecimento devem participar da resolução de uma solicitação antes da fase de grounding.

A ideia é usar os mesmos mecanismos mentais que especialistas utilizam para orientar o funcionamento dos agentes.

Em vez de recuperar tudo para depois decidir o que remover, o agente busca determinar primeiro:

  • Qual domínio está sendo discutido;
  • Qual especialista deve participar;
  • Qual ferramenta deve ser utilizada;
  • Qual conhecimento deve ser consultado.

Somente depois disso a recuperação de contexto acontece.

Capability Routing na prática

Imagine um agente corporativo de RH.

Em uma primeira versão da solução, o agente possui acesso a toda a documentação relacionada à área.

  • Benefícios
  • Férias
  • Folha de pagamento
  • Admissão
  • Desligamento
  • Treinamento
  • Avaliação de desempenho
  • Políticas internas
  • Regulamentos trabalhistas

Ela funcionaria adequadamente, mas para responder a pergunta “Quantos dias de férias posso vender este ano?” ele precisaria analisar todo esse material para decidir o que deve ou não participar da resposta.

Capability Routing - Default Agent Workflow
Fluxo de um agente que não utiliza Capability Routing

Como um especialista humano resolveria esse mesmo problema

Agora imagine um analista experiente de RH recebendo exatamente a mesma pergunta. Normalmente aconteceria algo mais próximo disto:

Em poucos segundos o especialista já descartou mentalmente os subdomínios desnecessários sem nem precisar analisar nenhum documento.

Capability Routing aplicado a agentes

Uma arquitetura orientada por Capability Routing tentaria reproduzir exatamente ocomportamento do especialista humano.

Para a pergunta “Como solicito inclusão de dependentes no plano de saúde?” o fluxo de execução seria:

Capability Routing - Improved Agent Workflow
Fluxo de um agente que utiliza Capability Routing

O que realmente está sendo reduzido?

Esse é um ponto importante. Capability Routing não reduz apenas contexto, ele reduz o espaço de decisão.

Sem Capability RoutingCom Capability Routing
Todo o conhecimento

Filtragem

Ferramentas

Resposta
Conhecimento sobre um domínio

Filtragem

Ferramentas

Resposta

A quantidade de documentos analisados diminui.

A quantidade de informações irrelevantes diminui.

A probabilidade de grounding incorreto diminui.

E tudo isso acontece antes mesmo da recuperação do conhecimento.

Por isso vejo o Capability Routing como uma extensão natural do Expert Judgment aplicada a arquiteturas de agentes.

Em resumo, o especialista humano reduz o problema identificando rapidamente o domínio correto. O agente deve fazer exatamente a mesma coisa ao selecionar antecipadamente quais capacidades, skills, ferramentas e fontes de conhecimento devem participar da resolução.

Cenas dos próximos capítulos

A teoria parece sólida. Mas como esse conceito se comporta em um ambiente real?

No próximo artigo apresentarei uma arquitetura de agentes construída no Copilot Studio que, sem utilizar mecanismos sofisticados de Context Pruning, já aplica diversos princípios de Capability Routing para selecionar antecipadamente quais capacidades, skills e fontes de conhecimento devem participar da resolução da solicitação antes da fase de grounding. Isso permitirá analisar como essas ideias podem ser aplicadas hoje em plataformas low/no-code, utilizando padrões relativamente simples de implementação.

Compartilhe este post


Comments

Deixe um comentário