Fluxos de trabalho com vários agentes são úteis quando cada especialista deve cuidar de uma parte do trabalho. Ao projetar o fluxo, a primeira decisão é definir quem dará a resposta final ao usuário em cada ramificação.
Escolha o padrão de orquestração
| Padrão | Quando usar | O que acontece |
|---|---|---|
| Transferências de controle | Um especialista deve assumir a conversa naquela ramificação do fluxo | O agente especialista assume o controle |
| Agentes como ferramentas | Um gerente deve manter o controle e chamar especialistas para tarefas de escopo delimitado | O gerente continua responsável pela resposta |
Transfira o controle para delegar a resposta
A transferência de controle é o padrão mais indicado quando o especialista deve dar a próxima resposta, em vez de apenas ajudar nos bastidores.
import { Agent, handoff } from "@openai/agents";
const billingAgent = new Agent({ name: "Billing agent" });
const refundAgent = new Agent({ name: "Refund agent" });
const triageAgent = Agent.create({
name: "Triage agent",
handoffs: [billingAgent, handoff(refundAgent)],
});Para que o roteamento seja fácil de entender, siga estas orientações.
- Atribua a cada especialista uma função de escopo delimitado.
- Use uma descrição curta e específica em
.handoffDescription - Crie uma ramificação apenas quando ela realmente exigir instruções, ferramentas ou políticas diferentes.
Em casos mais avançados, as transferências de controle também podem incluir metadados estruturados ou um histórico filtrado. Consulte a documentação do SDK para ver as APIs específicas, pois a forma de usá-las varia conforme a linguagem.
Use agentes como ferramentas em fluxos com um agente gerente
Use agent.asTool()
import { Agent } from "@openai/agents";
const summarizer = new Agent({
name: "Summarizer",
instructions: "Generate a concise summary of the supplied text.",
});
const mainAgent = new Agent({
name: "Research assistant",
tools: [
summarizer.asTool({
toolName: "summarize_text",
toolDescription: "Generate a concise summary of the supplied text.",
}),
],
});Esse padrão costuma ser mais adequado quando:
- o gerente precisa reunir as contribuições dos especialistas em uma resposta final
- o especialista executa uma tarefa de escopo delimitado, como resumir ou classificar conteúdo
- você quer manter um único fluxo principal estável e chamar os especialistas dentro dele, sem transferir a responsabilidade pela resposta
Adicione especialistas apenas quando o contrato mudar
Sempre que possível, comece com um único agente. Adicione especialistas apenas quando isso ajudar de forma significativa a isolar capacidades ou políticas, tornar os prompts mais claros ou facilitar a leitura dos rastros de execução.
Dividir o trabalho cedo demais aumenta o número de prompts, de rastros de execução e de pontos que exigem aprovação, sem necessariamente melhorar o fluxo.
Próximos passos
Depois de definir quem responde ao usuário, consulte o guia que aborda sua próxima dúvida sobre execução ou estado.
Refine as instruções, as ferramentas e o contrato de saída de cada especialista.
Entenda como as transferências de controle e as ferramentas funcionam durante uma execução.
Veja como o valor de
lastAgente o estado que permite retomar a execução afetam o próximo turno.