Przepływy pracy programu Microsoft Agent Framework

Przegląd

Przepływy pracy programu Microsoft Agent Framework umożliwiają tworzenie inteligentnych systemów automatyzacji, które bezproblemowo łączą agentów sztucznej inteligencji z procesami biznesowymi. Dzięki typowo bezpiecznej architekturze i intuicyjnemu projektowi, można koordynować złożone przepływy pracy, nie tonąc w złożoności infrastruktury, co pozwala skupić się na podstawowej logice biznesowej.

Czym różni się przepływ pracy od agenta?

Agent i przepływ pracy mogą obejmować wiele kroków w celu osiągnięcia celu, ale obsługują różne cele i działają na różnych poziomach abstrakcji:

  • Agent: agent jest zwykle oparty na dużym modelu językowym (LLM) i ma dostęp do różnych narzędzi, które ułatwiają wykonywanie zadań. Kroki podejmowane przez agenta są elastyczne i określane przez LLM w zależności od kontekstu rozmowy oraz dostępnych narzędzi.

    Agent sztucznej inteligencji

  • Przepływ pracy: Z drugiej strony przepływ pracy to wstępnie zdefiniowana sekwencja operacji, które mogą obejmować agentów sztucznej inteligencji jako składniki. Przepływy pracy są przeznaczone do obsługi złożonych procesów biznesowych, które mogą obejmować wielu agentów, interakcje ludzkie i integracje z systemami zewnętrznymi. Przepływ przepływu pracy jest jawnie zdefiniowany, co pozwala na większą kontrolę nad ścieżką wykonywania.

    Przegląd przepływów pracy

Najważniejsze funkcje    

  • Bezpieczeństwo typu: restrykcyjne typowanie zapewnia prawidłowy przepływ komunikatów między składnikami, dzięki kompleksowej weryfikacji, która zapobiega błędom w czasie wykonywania.
  • Elastyczny przepływ sterowania: architektura oparta na grafach umożliwia intuicyjne modelowanie złożonych przepływów pracy za pomocą poleceń executors i edges. Wszystkie ścieżki routingu warunkowego, przetwarzania równoległego i dynamicznego wykonywania są obsługiwane.
  • Integracja zewnętrzna: wbudowane wzorce żądań/odpowiedzi na potrzeby bezproblemowej integracji z zewnętrznymi interfejsami API i scenariuszami pętli human-in-the-loop.
  • Punktowanie kontrolne: Zapisywanie stanów przepływu pracy za pomocą punktów kontrolnych, umożliwiając odzyskiwanie i wznowienie długotrwałych procesów po stronie serwera.
  • Orkiestracja wielu agentów: wbudowane wzorce koordynujące wielu agentów sztucznej inteligencji, w tym sekwencyjne, współbieżne, hand-off i magentyczne.

API interfejsy przepływu pracy

platforma Microsoft Agent Framework oferuje dwa uzupełniające interfejsy API do tworzenia przepływów pracy:

  • Functional Workflow API(Python, experimental): Zapisuj przepływy pracy jako zwykłe funkcje async przy użyciu @workflow i @step dekoratorów. Używaj natywnego przepływu sterowania w Pythonie (if/else, pętle, asyncio.gather) zamiast koncepcji grafów. Dobry punkt wyjścia przed wdrożeniem interfejsu API do grafów.
  • Konstruktor i wykonanie przepływów pracy: Buduj przepływy pracy w postaci grafów skierowanych przy użyciu WorkflowBuilder, executors oraz edges. Najlepsze dla statycznych topologii z routingiem wiadomości weryfikowanym typem i równoległym wykonywaniem opartym na superkroku.

Oba interfejsy API są w pełni obsługiwane i generują te same zauważalne wyniki (zdarzenia, przesyłanie strumieniowe, HITL, punkty kontrolne). Wybierz zależnie od tego, co najlepiej pasuje do przepływu pracy:

Funkcjonalne (@workflow) Graf (WorkflowBuilder)
Przepływ sterowania Natywna Python (if, pętle, asyncio.gather) Krawędzie i warunki
Najlepsze dla Sekwencyjne rury, pętle niestandardowe, ad-hoc równoległość Stałe wykresy, fan-out/fan-in, routing komunikatów z weryfikacją typu
Równoległość asyncio.gather Równoległe grupy krawędzi, wykonanie superkroku
Obserwowalność Zdarzenia na każdym etapie z @step Zdarzenia funkcji wykonawczej
HITL ctx.request_info() RequestInfoExecutor
Tworzenie punktów kontrolnych Buforowanie wyników per-@step Punkty kontrolne na granicy superkroku
Opakowywanie agentów .as_agent() na FunctionalWorkflow .as_agent() na Workflow

Zacznij od @workflow, gdy chcesz wyrazić logikę w czystym Pythonie. Przejdź do WorkflowBuilder , gdy potrzebujesz ścisłego routingu komunikatów z weryfikacją typów lub wykonywania modelu grafu.

Podstawowe pojęcia

  • Funkcje wykonawcze: reprezentują poszczególne jednostki przetwarzania w przepływie pracy. Mogą to być agenci sztucznej inteligencji lub niestandardowe składniki logiki. Odbierają komunikaty wejściowe, wykonują określone zadania i generują komunikaty wyjściowe.
  • Krawędzie: definiują połączenia między wykonawcami, określając przepływ komunikatów. Mogą one obejmować warunki kontrolowania routingu na podstawie zawartości komunikatów.
  • Zdarzenia: zapewniają wgląd w wykonywanie przepływu pracy, w tym zdarzenia cyklu życia, zdarzenia funkcji wykonawczej i zdarzenia niestandardowe.
  • Kreator przepływów pracy i wykonywanie: łączy funkcje wykonawcze i krawędzie ze sobą w skierowany graf, zarządza wykonywaniem za pośrednictwem superkroków i obsługuje tryby przesyłania strumieniowego i nieprzesyłania strumieniowego.

Wprowadzenie

Rozpocznij pracę z przepływami pracy programu Microsoft Agent Framework, eksplorując przykłady wprowadzające:

Dalsze kroki