Learning playground for Microsoft Agent Framework (MAF) - exploring workflow concepts with practical examples.
- Python 3.13+
- uv package manager
uv sync-
Built-in Agent (
built_in_agent.py) - Demonstrates using the built-in ChatAgent executor with Azure OpenAI for creating AI agents in workflows. Shows a writer-reviewer pipeline with streaming execution. Documentation -
Direct Edges (
direct_edge.py) - Chain operations that always execute in sequence. Documentation -
Conditional Edges (
conditional_edge.py) - Branch execution based on runtime conditions. Documentation -
Switch-Case Edges (
switch_edge_cases.py) - Multi-way branching with case conditions and default fallback. Documentation -
Fan-Out Edges (Broadcast) (
fan_out_edges_all.py) - Distribute messages to multiple executors in parallel, where all targets receive every message. Documentation -
Fan-Out Edges (Selective) (
fan_out_edges_selective.py) - Selectively route messages to specific executors based on custom logic usingselection_func. Note: Requires a newer library version than currently published (>1.0.0b251028). Documentation -
Fan-In Edges (
fan_out_edges_all_fan_in.py) - Collect messages from multiple executors into a single aggregator, demonstrating the scatter-gather pattern. Documentation -
Streaming Workflow Execution (
fan_out_edges_all_streaming.py) - Process workflow events in real-time usingrun_stream()instead of waiting for completion. Note: Currently does not work with available library version (1.0.0b251028). Documentation