Fluxos de trabalho do Microsoft Agent Framework

Visão geral

O Microsoft Agent Framework Workflows permite que você crie sistemas de automação inteligentes que combinam perfeitamente agentes de IA com processos de negócios. Com sua arquitetura segura para tipos 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.

Em que é que um fluxo de trabalho difere de um agente?

Embora um agente e um fluxo de trabalho possam envolver múltiplos passos para alcançar um objetivo, servem propósitos diferentes e operam em diferentes níveis de abstração:

  • Agente: Um agente é normalmente orientado por um grande modelo de linguagem (LLM) e tem acesso a várias ferramentas para o ajudar a realizar tarefas. As etapas que um agente toma são dinâmicas e determinadas pelo LLM com base no contexto da conversa e nas ferramentas disponíveis.

    Agente de IA

  • 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 é explicitamente definido, permitindo mais controle sobre o caminho de execução.

    Visão geral dos fluxos de trabalho

Principais características

  • Segurança de tipos: A tipagem forte assegura que as mensagens fluam corretamente entre os componentes, com validação abrangente que previne erros durante a execução.
  • Fluxo de controle flexível: A arquitetura baseada em gráficos permite a modelagem intuitiva de fluxos de trabalho complexos com executors e edges. Roteamento condicional, processamento paralelo e caminhos de execução dinâmica são suportados.
  • Integração externa: padrões internos de solicitação/resposta para integração perfeita com APIs externas e cenários human-in-the-loop.
  • Ponto de verificação: salve os estados do fluxo de trabalho por meio de pontos de verificação, permitindo a recuperação e a retomada de processos de longa execução no lado do servidor.
  • Orquestração Multiagente: Padrões integrados para coordenar vários agentes de IA, incluindo sequencial, simultâneo, hand-off e magentic.

Workflow APIs

O Microsoft Agent Framework oferece duas APIs complementares para construir fluxos de trabalho:

  • Functional Workflow API(Python, experimental): Escrever fluxos de trabalho como funções simples async usando decoradores @workflow e @step. Utilize o fluxo de controlo nativo do Python (if/else, ciclos asyncio.gather) em vez de conceitos de grafos. Um bom ponto de partida antes de adotar a API do Graph.
  • Construtor e Execução de Fluxos de Trabalho: Construa fluxos de trabalho como grafos direcionados usando WorkflowBuilder, executors, e edges. Ideal para topologias fixas com encaminhamento de mensagens validado por tipo e execução paralela baseada em superstep.

Ambas as APIs são totalmente suportadas e produzem os mesmos resultados observáveis (eventos, streaming, HITL, checkpoints). Escolha com base no que melhor se adequa ao seu fluxo de trabalho:

Funcional (@workflow) Gráfico (WorkflowBuilder)
Fluxo de controlo Python nativo (if, loops, asyncio.gather) Arestas e condições
Melhor para Linhas de processamento sequenciais, loops personalizados, paralelismo ad hoc Grafos fixos, fan-out/fan-in, encaminhamento de mensagens validado por tipo
Paralelismo asyncio.gather Grupos de arestas paralelas, execução em superpasso
Observabilidade Eventos por passo com @step Eventos por executor
HITL ctx.request_info() RequestInfoExecutor
Pontos de controlo Cache por@step resultado Pontos de verificação de limite de superetapa
Encapsulamento do agente .as_agent() sobre FunctionalWorkflow .as_agent() sobre Workflow

Começa com @workflow quando quiseres expressar a tua lógica de forma Python. Avance para WorkflowBuilder quando precisar de roteamento de mensagens validado por tipo estritamente ou do modelo de execução de grafos.

Conceitos fundamentais

  • Executores: representam unidades individuais de processamento dentro de 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.
  • Arestas: definem as conexões entre executores, determinando o fluxo das mensagens. Eles podem incluir condições para controlar o roteamento com base no conteúdo da mensagem.
  • Eventos: proporcionam observabilidade na execução do fluxo de trabalho, incluindo eventos do ciclo de vida, eventos do executor e eventos personalizados.
  • Workflow Builder & Execution: une os executores e as arestas formando um grafo dirigido, gere a execução através de superpassos e suporta modos com e sem streaming.

Introdução

Comece a sua jornada com os Fluxos de Trabalho do Microsoft Agent Framework explorando os exemplos de iniciação:

Próximas Etapas