5단계: 워크플로

워크플로를 사용하면 여러 단계를 함께 연결할 수 있습니다. 각 단계는 데이터를 처리하고 다음 단계로 전달합니다.

워크플로 단계 정의(실행기):

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();

워크플로를 빌드하고 실행합니다.

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}");
    }
}

팁 (조언)

전체 실행 가능한 샘플 애플리케이션은 여기 를 참조하세요.

워크플로 단계(실행기)를 정의하고 에지와 연결합니다.

워크플로를 빌드하고 실행합니다.

팁 (조언)

전체 실행 가능한 파일에 대한 전체 샘플을 참조하세요.

다음 단계:

더 자세히 살펴보기: