Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Os fluxos de trabalho permitem encadear múltiplos passos — cada passo processa dados e passa-os para o seguinte.
Defina os passos do fluxo de trabalho (executores):
using Microsoft.Agents.AI.Workflows;
// Step 1: Convert text to uppercase
Func<string, string> uppercaseFunc = s => s.ToUpperInvariant();
var uppercase = uppercaseFunc.BindAsExecutor("UppercaseExecutor");
// Step 2: Reverse the string and yield output
class ReverseTextExecutor() : Executor<string, string>("ReverseTextExecutor")
{
public override ValueTask<string> HandleAsync(string message, IWorkflowContext context, CancellationToken cancellationToken = default)
{
return ValueTask.FromResult(string.Concat(message.Reverse()));
}
}
ReverseTextExecutor reverse = new();
Construa e execute o fluxo de trabalho:
WorkflowBuilder builder = new(uppercase);
builder.AddEdge(uppercase, reverse).WithOutputFrom(reverse);
var workflow = builder.Build();
await using Run run = await InProcessExecution.RunAsync(workflow, "Hello, World!");
foreach (WorkflowEvent evt in run.NewEvents)
{
if (evt is ExecutorCompletedEvent executorComplete)
{
Console.WriteLine($"{executorComplete.ExecutorId}: {executorComplete.Data}");
}
}
Sugestão
Veja aqui uma aplicação de exemplo completa e executável.
Defina os passos do fluxo de trabalho (executores) e ligue-os às arestas (edges):
Construa e execute o fluxo de trabalho:
Sugestão
Veja o exemplo completo para o ficheiro executável completo.
Próximos passos
Vai mais fundo:
- Visão geral dos fluxos de trabalho — compreenda a arquitetura dos fluxos de trabalho
- Fluxos de trabalho sequenciais — padrões lineares passo a passo
- Agentes em fluxos de trabalho — usando agentes como etapas do fluxo de trabalho