Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Visão geral
Os fluxos de trabalho do Microsoft Agent Framework capacitam você a criar sistemas de automação inteligentes que combinam perfeitamente agentes de IA com processos de negócios. Com sua arquitetura de tipo seguro e design intuitivo, você pode orquestrar fluxos de trabalho complexos sem ficar atolado na complexidade da infraestrutura, permitindo que você se concentre em sua lógica de negócios principal.
Como um fluxo de trabalho é diferente de um Agente?
Embora um agente e um fluxo de trabalho possam envolver várias etapas para atingir uma meta, eles atendem a diferentes finalidades e operam em diferentes níveis de abstração:
Agente: um agente normalmente é orientado por um LLM (modelo de linguagem grande) e tem acesso a várias ferramentas para ajudá-lo a realizar tarefas. As etapas que um agente executa são dinâmicas e determinadas pela LLM com base no contexto da conversa e nas ferramentas disponíveis.
Fluxo de trabalho: um fluxo de trabalho, por outro lado, é uma sequência predefinida de operações que pode incluir agentes de IA como componentes. Os fluxos de trabalho são projetados para lidar com processos de negócios complexos que podem envolver vários agentes, interações humanas e integrações com sistemas externos. O fluxo de um fluxo de trabalho é definido explicitamente, permitindo mais controle sobre o caminho de execução.
Principais características
- Segurança de Tipo: a tipagem forte garante que as mensagens fluam corretamente entre os componentes, com validação abrangente que impede erros de execução.
-
Fluxo de Controle Flexível: a arquitetura baseada em grafo permite modelagem intuitiva de fluxos de trabalho complexos com
executorseedges. Há suporte para roteamento condicional, processamento paralelo e caminhos de execução dinâmica. - Integração externa: padrões internos de solicitação/resposta para integração perfeita com APIs externas e cenários humanos no loop.
- Checkpointing: salvar os estados do fluxo de trabalho por meio de checkpoints, permitindo a recuperação e a retomada de processos de execução prolongada do lado do servidor.
- Orquestração multi-agente: padrões internos para coordenar vários agentes de inteligência artificial, incluindo sequencial, simultâneo, delegação e magnético.
APIs de fluxo de trabalho
Microsoft Agent Framework oferece duas APIs complementares para criar fluxos de trabalho:
-
Functional Workflow API(Python, experimental): escreva fluxos de trabalho como funções
asyncsimples usando decoradores@workflowe@step. Use o fluxo de controle de Python nativo (if/else, loops,asyncio.gather) em vez de conceitos de grafo. Um bom ponto de partida antes de adotar a API de grafos. -
Construtor de Fluxo de Trabalho &Execução: criar fluxos de trabalho como grafos direcionados usando
WorkflowBuilder,executorseedges. Melhor para topologias fixas com roteamento de mensagens com validação de tipo e execução paralela baseada em superetapa.
Ambas as APIs têm suporte total e produzem os mesmos resultados observáveis (eventos, streaming, HITL, pontos de verificação). Escolha com base no que melhor se ajusta ao fluxo de trabalho:
Funcional (@workflow) |
Grafo (WorkflowBuilder) |
|
|---|---|---|
| Fluxo de controle | Python nativo (if, loops, asyncio.gather) |
Bordas e condições |
| Mais adequado para | Pipelines sequenciais, loops personalizados, paralelismo ad hoc | Grafos fixos, fan-out/fan-in, roteamento de mensagens validado por tipo |
| Parallelism | asyncio.gather |
Grupos de arestas paralelas, execução de superpasso |
| Observabilidade | Eventos por etapa com @step |
Eventos por executor |
| HITL | ctx.request_info() |
RequestInfoExecutor |
| Verificação |
@step Cache por resultado |
Pontos de verificação de limite de superstep |
| Encapsulamento do agente |
.as_agent() em FunctionalWorkflow |
.as_agent() em Workflow |
Comece com @workflow quando quiser expressar sua lógica em Python simples. Mova para WorkflowBuilder quando precisar de roteamento de mensagem com tipo rigorosamente validado ou do modelo de execução do grafo.
Conceitos principais
- Executores: representam unidades de processamento individuais em um fluxo de trabalho. Eles podem ser agentes de IA ou componentes lógicos personalizados. Eles recebem mensagens de entrada, executam tarefas específicas e produzem mensagens de saída.
- Bordas: defina as conexões entre executores, determinando o fluxo de mensagens. Eles podem incluir condições para controlar o roteamento com base no conteúdo da mensagem.
- Eventos: fornecem observabilidade na execução do fluxo de trabalho, incluindo eventos de ciclo de vida, eventos de executor e eventos personalizados.
- Construtor de Fluxo de Trabalho & Execução: vincula executores e bordas em um grafo direcionado, gerencia a execução por meio de supersteps e dá suporte a modos de streaming e não streaming.
Introdução
Comece sua jornada com os fluxos de trabalho do Microsoft Agent Framework explorando os exemplos de introdução: