Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Alur kerja memungkinkan Anda menautkan beberapa langkah bersama-sama — setiap langkah memproses data dan meneruskannya ke langkah berikutnya.
Tentukan langkah-langkah alur kerja (pelaksana):
using Microsoft.Agents.AI.Workflows;
// Step 1: Convert text to uppercase
class UpperCase : Executor
{
[Handler]
public async Task ToUpperCase(string text, WorkflowContext<string> ctx)
{
await ctx.SendMessageAsync(text.ToUpper());
}
}
// Step 2: Reverse the string and yield output
[Executor(Id = "reverse_text")]
static async Task ReverseText(string text, WorkflowContext<Never, string> ctx)
{
var reversed = new string(text.Reverse().ToArray());
await ctx.YieldOutputAsync(reversed);
}
Bangun dan jalankan alur kerja:
var upper = new UpperCase();
var workflow = new AgentWorkflowBuilder(startExecutor: upper)
.AddEdge(upper, ReverseText)
.Build();
var result = await workflow.RunAsync("hello world");
Console.WriteLine($"Output: {string.Join(", ", result.GetOutputs())}");
// Output: DLROW OLLEH
Petunjuk / Saran
Lihat sampel lengkap untuk file lengkap yang dapat dijalankan.
Tentukan langkah-langkah alur kerja (pelaksana) dan sambungkan dengan tepi:
# Step 1: A class-based executor that converts text to uppercase
class UpperCase(Executor):
def __init__(self, id: str):
super().__init__(id=id)
@handler
async def to_upper_case(self, text: str, ctx: WorkflowContext[str]) -> None:
"""Convert input to uppercase and forward to the next node."""
await ctx.send_message(text.upper())
# Step 2: A function-based executor that reverses the string and yields output
@executor(id="reverse_text")
async def reverse_text(text: str, ctx: WorkflowContext[Never, str]) -> None:
"""Reverse the string and yield the final workflow output."""
await ctx.yield_output(text[::-1])
def create_workflow():
"""Build the workflow: UpperCase → reverse_text."""
upper = UpperCase(id="upper_case")
return (
WorkflowBuilder(start_executor=upper)
.add_edge(upper, reverse_text)
.build()
)
Buat dan jalankan alur kerja:
workflow = create_workflow()
events = await workflow.run("hello world")
print(f"Output: {events.get_outputs()}")
print(f"Final state: {events.get_final_state()}")
Petunjuk / Saran
Lihat sampel lengkap untuk file lengkap yang dapat dijalankan.
Langkah selanjutnya
Masuk lebih dalam:
- Gambaran umum alur kerja — memahami arsitektur alur kerja
- Alur kerja berurutan — pola langkah demi langkah linier
- Agen dalam alur kerja — menggunakan agen sebagai langkah-langkah alur kerja