Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Někdy může být pracovní postup, který má více exekutorů a složitých interakcí, obtížné pochopit od pouhého čtení kódu. Vizualizace vám pomůže jasněji zobrazit strukturu pracovního postupu, abyste mohli ověřit, že má zamýšlený návrh.
Vizualizaci pracovního postupu lze dosáhnout pomocí rozšiřujících metod třídy Workflow : ToMermaidString()a ToDotString(), které generují formát diagramu Mermaid a formát Graphviz DOT v uvedeném pořadí.
using Microsoft.Agents.AI.Workflows;
// Create a workflow with a fan-out and fan-in pattern
var workflow = new WorkflowBuilder()
.SetStartExecutor(dispatcher)
.AddFanOutEdges(dispatcher, [researcher, marketer, legal])
.AddFanInEdges([researcher, marketer, legal], aggregator)
.Build();
// Mermaid diagram
Console.WriteLine(workflow.ToMermaidString());
// DiGraph string
Console.WriteLine(workflow.ToDotString());
K vytvoření souboru obrázku z formátu DOT můžete použít nástroje GraphViz pomocí následujícího příkazu:
dotnet run | tail -n +20 | dot -Tpng -o workflow.png
Návod
Pokud chcete exportovat vizualizace obrázků, musíte nainstalovat GraphViz.
Kompletní funkční implementaci s vizualizací najdete v ukázce vizualizace.
Vizualizace pracovního postupu se provádí prostřednictvím objektu WorkflowViz, který lze vytvořit z objektu Workflow. Objekt WorkflowViz pak může generovat vizualizace v různých formátech, například ve formátu Graphviz DOT nebo ve formátu diagramu mermaid.
Vytvoření objektu WorkflowViz je jednoduché:
from agent_framework import WorkflowBuilder, WorkflowViz
# Create a workflow with a fan-out and fan-in pattern
workflow = (
WorkflowBuilder()
.set_start_executor(dispatcher)
.add_fan_out_edges(dispatcher, [researcher, marketer, legal])
.add_fan_in_edges([researcher, marketer, legal], aggregator)
.build()
)
viz = WorkflowViz(workflow)
Pak můžete vytvářet vizualizace v různých formátech:
# Mermaid diagram
print(viz.to_mermaid())
# DiGraph string
print(viz.to_digraph())
# Export to a file
print(viz.export(format="svg"))
# Different formats are also supported
print(viz.export(format="png"))
print(viz.export(format="pdf"))
print(viz.export(format="dot"))
# Export with custom filenames
print(viz.export(format="svg", filename="my_workflow.svg"))
# Convenience methods
print(viz.save_svg("workflow.svg"))
print(viz.save_png("workflow.png"))
print(viz.save_pdf("workflow.pdf"))
Návod
Pro základní textový výstup (Mermaid a DOT) nejsou potřeba žádné další závislosti. Pokud chcete exportovat image, musíte balíček Pythonu graphviz nainstalovat spuštěním příkazu pip install graphviz>=0.20.0 : a nainstalovat GraphViz.
Kompletní funkční implementaci s vizualizací najdete v ukázce Concurrent with Visualization (Souběžné s vizualizací).
Exportovaný diagram bude vypadat podobně jako v následujícím příkladu pracovního postupu:
flowchart TD
dispatcher["dispatcher (Start)"];
researcher["researcher"];
marketer["marketer"];
legal["legal"];
aggregator["aggregator"];
fan_in__aggregator__e3a4ff58((fan-in))
legal --> fan_in__aggregator__e3a4ff58;
marketer --> fan_in__aggregator__e3a4ff58;
researcher --> fan_in__aggregator__e3a4ff58;
fan_in__aggregator__e3a4ff58 --> aggregator;
dispatcher --> researcher;
dispatcher --> marketer;
dispatcher --> legal;
nebo ve formátu Graphviz DOT
Funkce vizualizace
Stylování uzlů
- Startování procesů: Zelené pozadí s označením "(Start)"
- Běžné exekutory: Modré pozadí s ID exekutoru
- Uzly ventilátoru: Zlaté pozadí se třemi tečkami (DOT) nebo dvojitými kruhy (Mermaid)
Stylování okrajů
- Normální hrany: Plné šipky
- Podmíněné hrany: Přerušované nebo tečkované šipky s "podmíněnými" popisky
- Fan-out/Fan-in: Automatické směrování přes prostřední uzly
Možnosti rozložení
- Rozložení shora dolů: Jasná vizualizace hierarchického toku
- Clustering podgrafů: Vnořené pracovní postupy zobrazené jako seskupené clustery
- Automatické umístění: GraphViz zpracovává optimální umístění uzlů.