Este documento fornece orientações para ajudar você a escolher um padrão de design para seu sistema de IA agêntica. Os padrões de design de agentes são abordagens arquitetônicas comuns para criar aplicativos agênticos. Um padrão de design de agente oferece uma estrutura distinta para organizar os componentes de um sistema, integrar o modelo e orquestrar um ou vários agentes para realizar um fluxo de trabalho.
Os agentes de IA são eficazes para aplicativos que resolvem problemas abertos, que podem exigir tomada de decisões autônoma e gerenciamento de fluxos de trabalho complexos de várias etapas. Os agentes são excelentes em resolver problemas em tempo real usando dados externos e em automatizar tarefas que exigem muito conhecimento. Os agentes de IA são adequados quando você precisa que a IA conclua tarefas focadas em metas com algum grau de autonomia. Para outros casos de uso, você pode usar aplicativos de IA generativa e assistiva. Para saber mais sobre as diferenças entre agentes de IA e aplicativos de IA não agênticos, consulte Qual é a diferença entre agentes de IA, assistentes de IA e bots?
Este guia pressupõe que você tenha um conhecimento básico de sistemas de IA agêntica e como a arquitetura deles difere da de sistemas não agênticos, como aqueles que usam raciocínio de modelo direto ou geração aumentada por recuperação (RAG).
Para um resumo das orientações sobre padrões de agentes, consulte a seção Comparar padrões de design mais adiante neste documento.
Informações gerais do processo de design
Estas são as etapas gerais para escolher um padrão de design para seu sistema de IA agêntica. Essas etapas são descritas em detalhes mais adiante neste documento.
- Defina seus requisitos: avalie as características da sua carga de trabalho, incluindo complexidade da tarefa, expectativas de latência e desempenho, orçamento de custo e necessidade de envolvimento humano.
- Revise os padrões comuns de design de agentes: Aprenda mais sobre os padrões comuns de design neste guia, que incluem sistemas de agente único e sistema multiagente.
- Selecione um padrão: selecione o padrão de design apropriado com base nas características da carga de trabalho.
Esse processo não é uma decisão única. Revise essas etapas periodicamente para refinar sua arquitetura à medida que as características da carga de trabalho mudam, os requisitos evoluem ou novos recursos do Google Cloud ficam disponíveis.
Definir seus requisitos
As perguntas a seguir não são listas de verificação completas para o planejamento. Use estas perguntas como ponto de partida para identificar o objetivo principal do seu sistema agêntico e selecionar o melhor padrão de design.
- Características da tarefa: sua tarefa pode ser concluída em etapas de fluxo de trabalho predefinidas ou é aberta? Sua tarefa precisa usar um modelo de IA para orquestrar o fluxo de trabalho?
- Latência e desempenho: você precisa priorizar respostas rápidas ou interativas em detrimento da precisão ou de respostas de alta qualidade? Ou seu aplicativo pode tolerar um atraso para alcançar um resultado mais preciso ou completo?
- Custo: qual é seu orçamento para custos de inferência? É possível usar padrões que exigem várias chamadas ao modelo para uma única solicitação?
- Envolvimento humano: sua tarefa envolve decisões de alto risco, operações críticas de segurança ou aprovações subjetivas que exigem julgamento humano?
Se sua carga de trabalho for previsível ou altamente estruturada, ou se puder ser executada com uma única chamada para um modelo de IA, pode ser mais econômico explorar soluções não agênticas para sua tarefa. Por exemplo, talvez você não precise de um fluxo de trabalho agente para tarefas como resumir um documento, traduzir texto ou classificar o feedback do cliente. Para informações sobre como escolher componentes de arquitetura para aplicativos de IA generativa que não exigem uma infraestrutura agêntica, consulte Escolher modelos e infraestrutura para seu aplicativo de IA generativa.
As seções a seguir descrevem padrões comuns de design de agentes para criar um sistema de IA agêntica confiável e eficaz.
Sistema de agente único
Um sistema de agente único usa um modelo de IA, um conjunto definido de ferramentas e um comando do sistema abrangente para processar de forma autônoma uma solicitação do usuário ou concluir uma tarefa específica. Nesse padrão fundamental, o agente depende dos recursos de raciocínio do modelo para interpretar a solicitação de um usuário, planejar uma sequência de etapas e decidir quais ferramentas usar de um conjunto definido. O comando do sistema molda o comportamento do agente definindo a tarefa principal, a persona e as operações, além das condições específicas para usar cada ferramenta.
O diagrama a seguir mostra uma visão geral de um padrão de agente único:
Um sistema de agente único é ideal para tarefas que exigem várias etapas e acesso a dados externos. Por exemplo, um representante de suporte ao cliente precisa consultar um banco de dados para encontrar o status do pedido, ou um assistente de pesquisa precisa chamar APIs para resumir notícias recentes. Um sistema não agêntico não pode realizar essas tarefas porque não pode usar ferramentas de forma autônoma ou executar um plano de várias etapas para sintetizar uma resposta final.
Se você está no início do desenvolvimento do agente, recomendamos começar com um único agente. Ao iniciar o desenvolvimento do agente com um sistema de agente único, você pode se concentrar em refinar a lógica principal, o comando e as definições de ferramentas do agente antes de adicionar componentes arquitetônicos mais complexos.
A performance de um único agente pode ser menos eficaz quando ele usa mais ferramentas e quando as tarefas aumentam em complexidade. Isso pode ser observado como aumento da latência, seleção ou uso incorreto de ferramentas ou falha na conclusão da tarefa. Muitas vezes, é possível mitigar esses problemas refinando o processo de raciocínio do agente com técnicas como o padrão de raciocínio e ação (ReAct). No entanto, se o fluxo de trabalho exigir que um agente gerencie várias responsabilidades distintas, essas técnicas podem não ser suficientes. Para esses casos, considere um sistema multiagente, que pode melhorar a resiliência e o desempenho delegando habilidades específicas a agentes especializados.
Sistemas multiagentes
Um sistema multiagente orquestra vários agentes especializados para resolver um problema complexo que um único agente não consegue gerenciar com facilidade. O princípio básico é decompor um objetivo grande em subtarefas menores e atribuir cada uma delas a um agente dedicado com uma habilidade específica. Esses agentes interagem por meio de fluxos de trabalho colaborativos ou hierárquicos para alcançar o objetivo final. Os padrões multiagentes oferecem um design modular que pode melhorar a escalonabilidade, a confiabilidade e a capacidade de manutenção do sistema geral em comparação com um único agente com um comando monolítico.
Em um sistema multiagente, cada agente precisa de um contexto específico para realizar a tarefa de maneira eficaz. O contexto pode incluir documentação, preferências históricas, links relevantes, histórico de conversas ou quaisquer restrições operacionais. O processo de gerenciamento desse fluxo de informações é chamado de engenharia de contexto. A engenharia de contexto inclui estratégias como isolar o contexto de um agente específico, persistir informações em várias etapas ou compactar grandes quantidades de dados para melhorar a eficiência.
Os agentes de IA apresentam riscos de segurança específicos e críticos que as práticas de segurança convencionais e deterministas talvez não consigam reduzir adequadamente. Use o Gateway de Agente para roteamento e segurança de tráfego de entrada e saída, a Identidade do Agente para autenticação vinculada à carga de trabalho e controle de acesso com privilégio mínimo e o Registro do Agente para garantir que ferramentas e subagentes verificados sejam usados.
As orientações desta seção não são completas. Para mais informações sobre fatores de design e práticas recomendadas, além de recomendações sobre como criar e implantar um sistema de IA multiagente, consulte Sistema de IA multiagente no Google Cloud.
Padrão sequencial
O padrão sequencial multiagente executa uma série de agentes especializados em uma ordem linear predefinida, em que a saída de um agente serve como entrada direta para o próximo. Esse padrão usa um agente de fluxo de trabalho sequencial que opera com base em uma lógica predefinida sem precisar consultar um modelo de IA para a orquestração dos subagentes.
O diagrama a seguir mostra uma visão geral de um padrão sequencial de multiagentes:
Use o padrão sequencial para processos altamente estruturados e repetíveis em que a sequência de operações não muda. Por exemplo, um pipeline de processamento de dados pode usar esse padrão para que um agente de extração de dados primeiro extraia dados brutos e depois os transmita a um agente de limpeza de dados para formatação, que por sua vez transmite os dados limpos a um agente de carregamento de dados para salvá-los em um banco de dados.
O padrão sequencial pode reduzir a latência e os custos operacionais em comparação com um padrão que usa um modelo de IA para orquestrar o fluxo de trabalho de tarefas. No entanto, essa eficiência tem um custo: a flexibilidade. A estrutura rígida e predefinida do pipeline dificulta a adaptação a condições dinâmicas ou a ignorar etapas desnecessárias, o que pode causar um processamento ineficiente ou levar a uma latência cumulativa maior se uma etapa desnecessária for lenta.
Padrão paralelo
No padrão paralelo multiagente, também conhecido como padrão simultâneo, vários subagentes especializados realizam uma tarefa ou subtarefas de forma independente ao mesmo tempo. As saídas dos subagentes são sintetizadas para produzir a resposta consolidada final. Semelhante a um padrão sequencial, o padrão paralelo usa um agente de fluxo de trabalho paralelo para gerenciar como e quando os outros agentes são executados sem precisar consultar um modelo de IA para orquestrar os subagentes.
O diagrama a seguir mostra uma visão geral de um padrão paralelo multiagente:
Use o padrão paralelo quando as subtarefas puderem ser executadas simultaneamente para reduzir a latência ou reunir diversas perspectivas, como coletar dados de fontes diferentes ou avaliar várias opções de uma só vez. Por exemplo, para analisar o feedback do cliente, um agente paralelo pode distribuir uma única entrada de feedback para quatro agentes especializados ao mesmo tempo: um agente de análise de sentimento, um agente de extração de palavras-chave, um agente de categorização e um agente de detecção de urgência. Um agente final reúne essas quatro saídas em uma única análise abrangente do feedback.
O padrão paralelo pode reduzir a latência geral em comparação com uma abordagem sequencial, porque pode coletar diversas informações de várias fontes ao mesmo tempo. No entanto, essa abordagem apresenta compensações em custo e complexidade. Executar vários agentes em paralelo pode aumentar a utilização imediata de recursos e o consumo de tokens, o que leva a custos operacionais mais altos. Além disso, a etapa de coleta requer uma lógica complexa para sintetizar resultados potencialmente conflitantes, o que aumenta a sobrecarga de desenvolvimento e manutenção do sistema.
Padrão de loop
O padrão de agente de loop multiagente executa repetidamente uma sequência de subagentes especializados até que uma condição de término específica seja atendida. Esse padrão usa um agente de fluxo de trabalho de loop que, como outros agentes de fluxo de trabalho, opera com base em uma lógica predefinida sem consultar um modelo de IA para orquestração. Depois que todos os subagentes concluem as tarefas, o agente de loop avalia se uma condição de saída foi atendida. A condição pode ser um número máximo de iterações ou um estado personalizado. Se a condição de saída não for atendida, o agente de loop vai iniciar a sequência de subagentes novamente. É possível implementar um padrão de loop em que a condição de saída é avaliada em qualquer ponto do fluxo. Use o padrão de loop para tarefas que exigem refinamento iterativo ou autocorreção, como gerar conteúdo e fazer com que um agente crítico o revise até que ele atenda a um padrão de qualidade.
O diagrama a seguir mostra uma visão geral de um padrão de loop multiagente:
O padrão de agente de loop oferece uma maneira de criar fluxos de trabalho complexos e iterativos. Ele permite que os agentes refinem o próprio trabalho e continuem o processamento até que uma qualidade ou um estado específico seja alcançado. No entanto, a principal desvantagem desse padrão é o risco de um loop infinito. Se a condição de encerramento não for definida corretamente ou se os subagentes não produzirem o estado necessário para interromper, o loop poderá ser executado indefinidamente. Isso pode levar a custos operacionais excessivos, alto consumo de recursos e possíveis travamentos do sistema.
Padrão de revisão e crítica
O padrão de revisão e crítica multiagente, também conhecido como padrão de gerador e crítico, melhora a qualidade e a confiabilidade do conteúdo gerado usando dois agentes especializados, geralmente em um fluxo de trabalho sequencial. O padrão de revisão e crítica é uma implementação do padrão de agente de loop.
No padrão de revisão e crítica, um agente gerador cria uma saída inicial, como um bloco de código ou um resumo de um documento. Em seguida, um agente crítico avalia essa saída com base em um conjunto predefinido de critérios, como precisão factual, adesão às regras de formatação ou diretrizes de segurança. Com base na avaliação, o crítico pode aprovar o conteúdo, rejeitá-lo ou devolvê-lo ao gerador com feedback para revisão.
O diagrama a seguir mostra uma visão geral de alto nível de um padrão de revisão e crítica multiagente:
Esse padrão é adequado para tarefas em que as saídas precisam ser altamente precisas ou obedecer a restrições rígidas antes de serem apresentadas a um usuário ou usadas em um processo downstream. Por exemplo, em um fluxo de trabalho de geração de código, um agente gerador pode escrever uma função para atender à solicitação de um usuário. Esse código gerado é transmitido a um agente crítico que atua como auditor de segurança. O trabalho do agente de crítica é verificar o código em relação a um conjunto de restrições, como a verificação de vulnerabilidades de segurança ou a verificação de que ele passa em todos os testes de unidade, antes de ser aprovado para uso.
O padrão de revisão e crítica pode melhorar a qualidade, a acurácia e a confiabilidade da saída porque adiciona uma etapa de verificação dedicada. No entanto, essa garantia de qualidade tem o custo direto de maior latência e despesas operacionais. O fluxo de trabalho exige pelo menos uma chamada de modelo adicional para a avaliação do crítico. Se o processo incluir loops de revisão em que o conteúdo é enviado de volta para refinamento, a latência e os custos se acumulam a cada iteração.
Padrão de refinamento iterativo
O padrão de refinamento iterativo usa um mecanismo de loop para melhorar progressivamente uma saída em vários ciclos. O padrão de refinamento iterativo é uma implementação do padrão de agente de loop.
Nesse padrão, um ou mais agentes trabalham em um loop para modificar um resultado armazenado no estado da sessão durante cada iteração. O processo continua até que a saída atenda a um limite de qualidade predefinido ou atinja um número máximo de iterações, o que evita loops infinitos.
O diagrama a seguir mostra uma visão geral de um padrão de refinamento iterativo de multiagentes:
Esse padrão é adequado para tarefas de geração complexas em que a saída é difícil de alcançar em uma única etapa. Exemplos dessas tarefas incluem escrever e depurar um trecho de código, desenvolver um plano detalhado de várias partes ou redigir e revisar um documento longo. Por exemplo, em um fluxo de trabalho de escrita criativa, um agente pode gerar um rascunho de uma postagem de blog, criticar o rascunho para fluxo e tom e reescrever o rascunho com base nessa crítica. Esse processo se repete em um loop até que o trabalho do agente atenda a um padrão de qualidade predefinido ou até que a repetição atinja um número máximo de iterações.
O padrão de refinamento iterativo pode produzir saídas altamente complexas ou refinadas que seriam difíceis de alcançar em uma única etapa. No entanto, o mecanismo de loop aumenta diretamente a latência e os custos operacionais a cada ciclo. Esse padrão também adiciona complexidade arquitetônica, porque requer condições de saída cuidadosamente projetadas, como uma avaliação de qualidade ou um limite máximo de iteração, para evitar custos excessivos ou execução descontrolada.
Padrão de coordenador
O padrão de coordenador multiagente usa um agente central, o coordenador, para direcionar um fluxo de trabalho. O coordenador analisa e decompõe a solicitação de um usuário em subtarefas e, em seguida, envia cada subtarefa a um agente especializado para execução. Cada agente especializado é um especialista em uma função específica, como consultar um banco de dados ou chamar uma API.
Uma distinção do padrão de coordenador é o uso de um modelo de IA para orquestrar e rotear tarefas dinamicamente. Por outro lado, o padrão paralelo depende de um fluxo de trabalho fixado no código para enviar tarefas para execução simultânea sem a necessidade de orquestração de modelos de IA.
O diagrama a seguir mostra uma visão geral de um padrão de coordenador multiagente:
Use o padrão de coordenador para automatizar processos de negócios estruturados que exigem roteamento adaptável. Por exemplo, um agente de serviço ao cliente pode atuar como coordenador. O agente coordenador analisa a solicitação para determinar se é uma solicitação de status do pedido, devolução de produto ou reembolso. Com base no tipo de solicitação, o coordenador encaminha a tarefa para o agente especializado adequado.
O padrão de coordenador oferece flexibilidade em comparação com fluxos de trabalho mais rígidos e predefinidos. Ao usar um modelo para encaminhar tarefas, o coordenador pode lidar com uma variedade maior de entradas e adaptar o fluxo de trabalho no ambiente de execução. No entanto, essa abordagem também tem desvantagens. Como o coordenador e cada agente especializado dependem de um modelo para raciocínio, esse padrão resulta em mais chamadas de modelo do que um sistema de agente único. Embora o padrão de coordenador possa levar a um raciocínio de maior qualidade, ele também aumenta a capacidade de processamento de tokens, os custos operacionais e a latência geral em comparação com um sistema de agente único.
Padrão de decomposição hierárquica de tarefas
O padrão de decomposição hierárquica de tarefas multiagente organiza os agentes em uma hierarquia de vários níveis para resolver problemas complexos que exigem planejamento extenso. O padrão de decomposição hierárquica de tarefas é uma implementação do padrão de coordenador. Um agente pai de nível superior, ou raiz, recebe uma tarefa complexa e é responsável por dividi-la em várias subtarefas menores e gerenciáveis. O agente raiz delega cada subtarefa a um subagente especializado em um nível mais baixo. Esse processo pode se repetir em várias camadas, com agentes que decompõem progressivamente as tarefas atribuídas até que elas possam ser executadas diretamente por um agente worker no nível mais baixo.
O diagrama a seguir mostra uma visão geral de um padrão de decomposição de tarefas hierárquica multiagente:
Use o padrão de decomposição hierárquica de tarefas para problemas ambíguos e abertos que exigem raciocínio em várias etapas, como tarefas que envolvem pesquisa, planejamento e síntese. Por exemplo, para concluir um projeto de pesquisa complexo, um agente coordenador divide o objetivo de alto nível em várias tarefas, como coletar informações, analisar as descobertas e sintetizar o relatório final. Em seguida, o agente coordenador delega essas tarefas a subagentes especializados, como um agente de coleta de dados, um agente de análise e um agente que escreve relatórios, para execução ou decomposição adicional.
O padrão de decomposição hierárquica de tarefas é ideal para resolver problemas altamente complexos e ambíguos, porque os decompõe sistematicamente em subtarefas gerenciáveis. Esse padrão pode resultar em resultados mais abrangentes e de maior qualidade do que padrões mais simples. No entanto, esse recurso avançado apresenta compensações significativas. A estrutura multinível adiciona uma complexidade arquitetônica considerável, o que dificulta o design, a depuração e a manutenção do sistema. As várias camadas de delegação e raciocínio também resultam em um alto número de chamadas de modelo, o que aumenta significativamente a latência geral e os custos operacionais em comparação com outros padrões.
Padrão de enxame
O padrão de enxame multiagente usa uma abordagem de comunicação colaborativa de todos para todos. Nesse padrão, vários agentes especializados trabalham juntos para refinar iterativamente uma solução para um problema complexo.
O diagrama a seguir mostra uma visão geral de um padrão de enxame de multiagentes:
O padrão de enxame usa um agente de despacho para encaminhar uma solicitação do usuário a um grupo colaborativo de agentes especializados. O agente despachante interpreta a solicitação e determina qual agente no swarm é mais adequado para iniciar a tarefa. Nesse padrão, cada agente pode se comunicar com todos os outros, o que permite compartilhar descobertas, criticar propostas e desenvolver o trabalho uns dos outros para refinar uma solução de forma iterativa. Qualquer agente no swarm pode transferir a tarefa para outro agente que ele determine ser mais adequado para lidar com a próxima etapa ou pode comunicar a resposta final ao usuário por meio do agente coordenador.
Um enxame normalmente não tem um supervisor central ou um agente coordenador para manter o processo no caminho certo. O agente despachante não orquestra o fluxo de trabalho agêntico, ao contrário do padrão coordenador. Em vez disso, o agente despachante facilita a comunicação entre os subagentes do swarm e o usuário. Para garantir que o enxame pare e retorne um resultado, defina uma condição de saída explícita. Essa condição geralmente é um número máximo de iterações, um limite de tempo ou o alcance de uma meta específica, como chegar a um consenso.
Use o padrão de enxame para problemas ambíguos ou altamente complexos que se beneficiam de debate e refinamento iterativo. Por exemplo, o design de um novo produto pode envolver um agente de pesquisa de mercado, um agente de engenharia e um agente de modelagem financeira. Os agentes compartilhariam ideias iniciais, debateriam as compensações entre recursos e custos e convergiram coletivamente para uma especificação de design final que equilibra todos os requisitos conflitantes.
O padrão de enxame simula uma equipe colaborativa de especialistas e, portanto, pode produzir soluções criativas e de alta qualidade. No entanto, ele representa o padrão de multiagentes mais complexo e caro de implementar. A falta de um agente que use um modelo de IA para orquestrar pode introduzir o risco de loops improdutivos ou a falha em convergir para uma solução. Portanto, é necessário projetar uma lógica sofisticada para gerenciar a comunicação complexa entre agentes, controlar o fluxo de trabalho iterativo e lidar com os custos operacionais e a latência significativos associados à execução de uma conversa dinâmica e multiturno entre vários agentes.
Padrão de raciocínio e ação (ReAct)
O padrão ReAct é uma abordagem que usa o modelo de IA para enquadrar os processos de pensamento e ações como uma sequência de interações em linguagem natural. Nesse padrão, o agente opera em um loop iterativo de pensamento, ação e observação até que uma condição de saída seja atendida.
- Pensamento: o modelo raciocina sobre a tarefa e decide o que fazer em seguida. O modelo avalia todas as informações coletadas para determinar se a solicitação do usuário foi totalmente respondida.
- Ação: com base no processo de pensamento, o modelo realiza uma destas duas ações:
- Se a tarefa não estiver concluída, ele seleciona uma ferramenta e forma uma consulta para coletar mais informações.
- Se a tarefa estiver concluída, ela vai formular a resposta final para enviar ao usuário, o que encerra o ciclo.
- Observação: o modelo recebe a saída da ferramenta e salva informações relevantes na memória. Como o modelo salva saídas relevantes, ele pode se basear em observações anteriores, o que ajuda a evitar que o modelo se repita ou perca o contexto.
O loop iterativo termina quando o agente encontra uma resposta conclusiva, atinge um número máximo predefinido de iterações ou encontra um erro que o impede de continuar. Esse loop iterativo permite que o agente crie um plano dinamicamente, reúna evidências e ajuste a abordagem enquanto trabalha para chegar a uma resposta final.
O diagrama a seguir mostra uma visão geral do padrão ReAct:
Use o padrão ReAct para tarefas complexas e dinâmicas que exigem planejamento e adaptação contínuos. Por exemplo, considere um agente de robótica que precisa gerar um caminho para fazer a transição de um estado inicial para um estado final:
- Pensamento: o modelo pensa sobre o caminho ideal para fazer a transição do estado atual para o estado desejado. Durante o processo de raciocínio, o modelo otimiza métricas como tempo ou energia.
- Ação: o modelo executa a próxima etapa do plano, movendo-se ao longo de um segmento de caminho calculado.
- Observação: o modelo observa e salva o novo estado do ambiente. O modelo salva a nova posição e as mudanças no ambiente que ele percebe.
Esse loop permite que o agente siga restrições dinâmicas, como evitar novos obstáculos ou seguir regulamentações de trânsito, atualizando constantemente o plano com base em novas observações. O agente continua o loop iterativo até atingir a meta ou encontrar um erro.
Um único agente ReAct pode ser mais simples e econômico de implementar e manter do que um sistema multiagente complexo. O pensamento do modelo fornece uma transcrição do raciocínio do modelo, o que ajuda na depuração. No entanto, essa flexibilidade tem desvantagens. A natureza iterativa e de várias etapas do loop pode levar a uma latência de ponta a ponta maior em comparação com uma única consulta. Além disso, a eficácia do agente depende muito da qualidade do raciocínio do modelo de IA. Portanto, um erro ou um resultado enganoso de uma ferramenta em uma etapa de observação pode se propagar e fazer com que a resposta final seja incorreta.
Padrão human-in-the-loop
O padrão human-in-the-loop integra pontos de intervenção humana diretamente ao fluxo de trabalho de um agente. Em um ponto de verificação predefinido, o agente pausa a execução e chama um sistema externo para aguardar que uma pessoa revise o trabalho. Esse padrão permite que uma pessoa aprove uma decisão, corrija um erro ou forneça as informações necessárias antes que o agente possa continuar.
O diagrama a seguir mostra uma visão geral de um padrão human-in-the-loop:
Use o padrão human-in-the-loop para tarefas que exigem supervisão humana, julgamento subjetivo ou aprovação final para ações críticas. Essas ações incluem aprovar uma grande transação financeira, validar o resumo de um documento confidencial ou fornecer feedback subjetivo sobre o conteúdo criativo gerado. Por exemplo, um agente pode ter a tarefa de anonimizar um conjunto de dados de pacientes para pesquisa. O agente identificaria e ocultaria automaticamente todas as informações protegidas de saúde, mas faria uma pausa em um ponto de verificação final. Em seguida, ele aguardaria que um oficial de compliance humano validasse manualmente o conjunto de dados e aprovasse a liberação, o que ajuda a garantir que nenhum dado sensível seja exposto.
O padrão human-in-the-loop melhora a segurança e a confiabilidade ao inserir o julgamento humano em pontos de decisão críticos no fluxo de trabalho. Esse padrão pode adicionar uma complexidade arquitetônica significativa porque exige que você crie e mantenha o sistema externo para interação do usuário.
Padrão de lógica personalizada
O padrão de lógica personalizada oferece a máxima flexibilidade no design do fluxo de trabalho. Essa abordagem permite implementar uma lógica de orquestração específica que usa código, como instruções condicionais, para criar fluxos de trabalho complexos com vários caminhos de ramificação.
O diagrama a seguir ilustra um exemplo de uso de um padrão de lógica personalizada para capturar um processo de reembolso:
No diagrama anterior, o Agentic Workflows para o exemplo de agente de reembolso ao cliente é o seguinte:
- O usuário envia uma consulta ao agente de reembolso ao cliente, que atua como um agente coordenador.
- A lógica personalizada do coordenador primeiro invoca um agente verificador paralelo, que envia simultaneamente dois subagentes: o agente verificador do comprador e o agente de qualificação para reembolso.
- Depois que os resultados são coletados, o agente coordenador executa uma ferramenta para
verificar se a solicitação se qualifica para um reembolso.
- Se o usuário se qualificar, o coordenador vai encaminhar a tarefa
para um agente de processamento de reembolso, que vai chamar a ferramenta
process_refund. - Se o usuário não se qualificar, o coordenador vai encaminhar a tarefa para um fluxo sequencial separado, começando com o representante de crédito da Google Store e o representante de decisão de crédito do processo.
- Se o usuário se qualificar, o coordenador vai encaminhar a tarefa
para um agente de processamento de reembolso, que vai chamar a ferramenta
- O resultado do caminho escolhido é enviado ao agente de resposta final para formular a resposta ao usuário.
O exemplo de agente de reembolso ao cliente exige uma solução exclusiva para a orquestração no nível da lógica, que vai além das abordagens estruturadas oferecidas por outros padrões. Esse fluxo de trabalho mistura padrões porque executa uma verificação paralela e, em seguida, executa uma ramificação condicional personalizada que encaminha para dois processos downstream totalmente diferentes. Esse tipo de fluxo de trabalho complexo e de padrão misto é o caso de uso ideal para o padrão de lógica personalizada.
Use o padrão de lógica personalizada quando precisar de controle granular sobre a execução do agente ou quando seu fluxo de trabalho não se encaixar em um dos outros padrões descritos neste documento. No entanto, essa abordagem aumenta a complexidade de desenvolvimento e manutenção. Você é responsável por projetar, implementar e depurar todo o fluxo de orquestração, o que exige mais esforço de desenvolvimento e pode ser mais propenso a erros do que usar um padrão predefinido compatível com uma ferramenta como o Kit de Desenvolvimento de Agente (ADK).
Para informações sobre agentes personalizados e como implementar lógica personalizada usando o ADK, consulte Agentes personalizados.
Comparar padrões de design
Escolher um padrão de agente é uma decisão arquitetônica fundamental. Cada padrão oferece diferentes vantagens e desvantagens em termos de flexibilidade, complexidade e desempenho. Para determinar o padrão adequado para sua carga de trabalho, considere os padrões de design nas seções a seguir.
Workflows determinísticos
Workflows determinísticos incluem tarefas previsíveis e sequenciais, com um caminho claramente definido do início ao fim. As etapas das tarefas são conhecidas com antecedência, e o processo não muda muito de uma execução para outra.
Confira a seguir os padrões de design de agentes para fluxos de trabalho determinísticos:
- Padrão sequencial multiagente
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Tarefas com várias etapas que seguem um fluxo de trabalho predefinido e rígido.
- Não requer orquestração de modelos.
- Sequência fixa de operações. A saída de um agente é a entrada direta do próximo agente na sequência.
- Padrão paralelo multiagente
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Tarefas independentes que podem ser executadas ao mesmo tempo.
- Não requer orquestração de modelos.
- Reduz a latência geral executando subtarefas simultaneamente.
- Padrão de refinamento iterativo multiagente
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Tarefas de geração abertas ou complexas que são difíceis de concluir em uma única tentativa.
- Exige que o agente melhore progressivamente a saída em vários ciclos.
- Não exige orquestração de modelos.
- Prioriza a qualidade da saída em vez da latência.
Workflows que exigem orquestração dinâmica
Workflows que exigem orquestração dinâmica envolvem problemas complexos em que os agentes precisam decidir como proceder. Nesses fluxos de trabalho, o sistema de IA agêntica planeja, delega e coordena tarefas de forma dinâmica sem um script.
Confira a seguir os padrões de design de agentes para fluxos de trabalho que exigem orquestração dinâmica:
- Padrão de agente único
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Tarefas estruturadas e de várias etapas que exigem o uso de ferramentas externas.
- Exige o desenvolvimento rápido de um protótipo de solução como prova de conceito.
- Padrão de coordenador multiagente
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Exige roteamento dinâmico para um subagente especializado adequado para tarefas estruturadas com entradas variadas.
- Alta latência devido a várias chamadas para o modelo de IA coordenador para que ele possa direcionar tarefas para o subagente apropriado.
- Pode gerar um custo alto devido a várias chamadas para o agente coordenador.
- Padrão de decomposição de tarefas hierárquicas multiagente
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Exige orquestração de modelos multinível para tarefas complexas, abertas e ambíguas.
- Requer resultados abrangentes e de alta qualidade, em que a decomposição da ambiguidade é o principal desafio.
- Alta latência devido à decomposição aninhada e multinível que leva a várias chamadas ao modelo de IA para raciocínio.
- Padrão de enxame multiagente
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Requer debate colaborativo e refinamento iterativo de vários agentes especializados para tarefas altamente complexas, abertas ou ambíguas.
- Prioriza a síntese de várias perspectivas para criar uma solução abrangente ou criativa.
- Alta latência e custos operacionais devido à comunicação dinâmica e total entre os agentes.
Workflows que envolvem iteração
Workflows que envolvem iteração incluem tarefas em que a saída final é alcançada por ciclos de refinamento, feedback e melhoria.
Confira a seguir os padrões de design de agentes para fluxos de trabalho que envolvem iteração:
- Padrão ReAct
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Exige que um agente raciocine, aja e observe de forma iterativa para criar ou adaptar um plano para tarefas complexas, dinâmicas e sem restrições.
- Prioriza um resultado mais preciso e completo em vez da latência.
- Padrão de loop multiagente
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Exige tarefas de monitoramento ou sondagem que repetem uma ação predefinida, como verificações automatizadas, até que o agente atenda a uma condição de saída.
- Latência imprevisível ou de longa duração enquanto aguarda uma condição de saída ser atendida.
- Padrão de revisão e crítica multiagente
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- As tarefas exigem uma etapa de validação distinta antes da conclusão.
- Padrão de refinamento iterativo multiagente
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Tarefas de geração abertas ou complexas que são difíceis de concluir em uma única tentativa.
- Exige que o agente melhore progressivamente a saída em vários ciclos.
- Não exige orquestração de modelos.
- Prioriza a qualidade da saída em vez da latência.
Workflows com requisitos especiais
Workflows com requisitos especiais incluem tarefas que não seguem padrões de agente comuns. Suas tarefas podem incluir lógica de negócios exclusiva ou exigir julgamento e intervenção humana em pontos críticos. Nesse caso, seu sistema de IA agêntica é criado para uma única finalidade específica.
A seguir, há padrões de design de agentes para fluxos de trabalho com requisitos especiais:
- Padrão human-in-the-loop
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Exige supervisão humana devido a tarefas subjetivas ou de alto risco que podem incluir requisitos de segurança, confiabilidade e compliance.
- Padrão de lógica personalizada
-
Use esse padrão se a carga de trabalho tiver as seguintes características:
- Lógica complexa e ramificada que vai além de uma sequência linear direta.
- Exige controle máximo para combinar regras predefinidas com o raciocínio do modelo.
- Exige controle refinado de processos para um fluxo de trabalho que não se encaixa em um modelo padrão.
A seguir
- Saiba como criar e gerenciar sistemas multiagente usando primitivos do ADK.
- Saiba como hospedar apps e agentes de IA no Cloud Run.
- Saiba mais sobre os padrões de design de agentes: um guia prático para criar sistemas inteligentes.
- Saiba como criar um agente com o ADK.
- Saiba como criar sistemas de IA multiagente no Google Cloud.
- Para mais arquiteturas de referência, diagramas e práticas recomendadas, confira a Central de arquitetura do Cloud.
Colaboradores
Autora: Samantha He | Redatora técnica
Outros colaboradores:
- Abdul Saleh | Engenheiro de software
- Amina Mansour | Líder técnica, relações com desenvolvedores globais e conteúdo estratégico
- Amit Maraj | Engenheiro de relações com desenvolvedores
- Casey West | Mediador de arquitetura, Google Cloud
- Jack Wotherspoon | Mediador de desenvolvedores
- Joe Fernandez | Redator técnico da equipe
- Joe Shirey | Gerente de relações com desenvolvedores de nuvem
- Karl Weinmeister | Diretor de relações com desenvolvedores de produtos de nuvem
- Kumar Dhanagopal | Desenvolvedor de soluções para vários produtos
- Lisa Shen | Gerente sênior de produtos de saída, Google Cloud
- Mandy Grover | Chefe do Centro de Arquitetura
- Mark Lu | Redator técnico
- Megan O'Keefe | Mediadora de desenvolvedores
- Olivier Bourgeois | Engenheiro de relações com desenvolvedores
- Shir Meir Lador | Gerente de engenharia de relações com desenvolvedores
- Vlad Kolesnikov | Engenheiro de relações com desenvolvedores