Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Microsoft Agent Framework to zestaw deweloperów typu open source do tworzenia agentów sztucznej inteligencji i przepływów pracy obejmujących wiele agentów dla platform .NET i Python. Łączy ona i rozszerza pomysły z projektów Semantic Kernel i AutoGen , łącząc ich mocne strony, dodając nowe możliwości. Zbudowany przez te same zespoły jest to ujednolicona podstawa do tworzenia agentów sztucznej inteligencji w przyszłości.
Struktura agenta oferuje dwie główne kategorie możliwości:
- Agenci sztucznej inteligencji: indywidualni agenci, którzy używają llMs do przetwarzania danych wejściowych użytkownika, wywoływania narzędzi i serwerów MCP do wykonywania akcji i generowania odpowiedzi. Agenci obsługują dostawców modeli, w tym usług Azure OpenAI, OpenAI i Azure AI.
- Przepływy pracy: przepływy pracy oparte na grafach, które łączą wielu agentów i funkcje w celu wykonywania złożonych, wieloetapowych zadań. Przepływy pracy obsługują routing oparty na typach, zagnieżdżanie, tworzenie punktów kontrolnych i wzorce żądań/odpowiedzi dla scenariuszy pętli człowieka.
Platforma udostępnia również podstawowe bloki konstrukcyjne, w tym klientów modelu (zakończenia czatu i odpowiedzi), wątku agenta do zarządzania stanem, dostawców kontekstu dla pamięci agenta, oprogramowania pośredniczącego do przechwytywania akcji agenta i klientów MCP na potrzeby integracji narzędzi. Razem te składniki zapewniają elastyczność i możliwości tworzenia interaktywnych, niezawodnych i bezpiecznych aplikacji sztucznej inteligencji.
Dlaczego inna struktura agenta?
Semantyczne jądro i autogen zapoczątkowały koncepcje agentów sztucznej inteligencji i orkiestracji wielu agentów. Struktura agentów jest bezpośrednim następcą utworzonym przez te same zespoły. Łączy ona proste abstrakcje rozwiązania AutoGen dla wzorców pojedynczego i wielu agentów z funkcjami klasy korporacyjnej Semantic Jądra, takimi jak zarządzanie stanem opartym na wątkach, bezpieczeństwo typów, filtry, telemetria i rozbudowana obsługa modelu i osadzania. Poza scaleniem tych dwóch platformy Agent Framework wprowadza przepływy pracy, które zapewniają deweloperom jawną kontrolę nad ścieżkami wykonywania wielu agentów oraz niezawodny system zarządzania stanem na potrzeby długotrwałych i działających scenariuszy pętli człowieka. Krótko mówiąc, Struktura agentów to następna generacja zarówno semantycznego jądra, jak i autogenu.
Aby dowiedzieć się więcej na temat migracji z semantycznego jądra lub autogenu, zobacz Przewodnik migracji z narzędzia Semantic Kernel and Migration Guide from AutoGen (Przewodnik po migracji z narzędzia AutoGen).
Zarówno jądro semantyczne, jak i autogen znacznie skorzystały ze społeczności typu open source, a to samo jest oczekiwane w przypadku platformy Agent Framework. Program Microsoft Agent Framework z zadowoleniem przyjmuje wkład i będzie nadal ulepszać nowe funkcje i możliwości.
Uwaga / Notatka
Program Microsoft Agent Framework jest obecnie w publicznej wersji zapoznawczej. Prześlij wszelkie opinie lub problemy w repozytorium GitHub.
Ważne
Jeśli używasz programu Microsoft Agent Framework do tworzenia aplikacji działających z serwerami lub agentami innych firm, możesz to zrobić na własne ryzyko. Zalecamy przejrzenie wszystkich danych udostępnianych serwerom lub agentom innych firm i zapoznanie się z praktykami innych firm w zakresie przechowywania i lokalizacji danych. Twoim zadaniem jest zarządzanie tym, czy dane będą przepływać poza granice geograficzne i zgodność platformy Azure w organizacji oraz wszelkie powiązane implikacje.
Instalacja
Pyton:
pip install agent-framework --pre
.SIEĆ:
dotnet add package Microsoft.Agents.AI
Agenci sztucznej inteligencji
Co to jest agent sztucznej inteligencji?
Agent sztucznej inteligencji używa usługi LLM do przetwarzania danych wejściowych użytkownika, podejmowania decyzji, wywoływania narzędzi i serwerów MCP do wykonywania akcji i generowania odpowiedzi. Na poniższym diagramie przedstawiono podstawowe składniki i ich interakcje w agencie sztucznej inteligencji:
Agent sztucznej inteligencji można również rozszerzyć o dodatkowe składniki, takie jak wątek, dostawca kontekstu i oprogramowanie pośredniczące , aby zwiększyć jego możliwości.
Kiedy używać agenta sztucznej inteligencji?
Agenci sztucznej inteligencji są odpowiedni dla aplikacji, które wymagają autonomicznego podejmowania decyzji, planowania ad hoc, eksploracji prób i błędów oraz interakcji z użytkownikami opartymi na konwersacjach. Są one szczególnie przydatne w scenariuszach, w których zadanie wejściowe jest nieustrukturyzowane i nie może być łatwo zdefiniowane z wyprzedzeniem.
Poniżej przedstawiono kilka typowych scenariuszy, w których agenci sztucznej inteligencji excel:
- Obsługa klienta: agenci sztucznej inteligencji mogą obsługiwać zapytania wielomodalne (tekst, głos, obrazy) od klientów, używać narzędzi do wyszukiwania informacji i zapewniania odpowiedzi w języku naturalnym.
- Edukacja i korepetycje: Agenci sztucznej inteligencji mogą korzystać z zewnętrznych baz wiedzy w celu zapewnienia spersonalizowanych korepetycji i odpowiadania na pytania uczniów.
- Generowanie i debugowanie kodu: w przypadku deweloperów oprogramowania agenci sztucznej inteligencji mogą pomóc w implementacji, przeglądach kodu i debugowaniu przy użyciu różnych narzędzi programistycznych i środowisk.
- Pomoc badawcza: w przypadku badaczy i analityków agenci sztucznej inteligencji mogą przeszukiwać internet, podsumowywać dokumenty i łączyć informacje z wielu źródeł.
Kluczem jest to, że agenci sztucznej inteligencji mają działać w dynamicznym i nieokreślonym ustawieniu, gdzie dokładna sekwencja kroków realizacji żądania użytkownika nie jest znana z wyprzedzeniem i może wymagać eksploracji i ścisłej współpracy z użytkownikami.
Kiedy nie należy używać agenta sztucznej inteligencji?
Agenci sztucznej inteligencji nie są dobrze przystosowani do zadań, które są wysoce ustrukturyzowane i wymagają ścisłego przestrzegania wstępnie zdefiniowanych reguł. Jeśli aplikacja przewiduje określony rodzaj danych wejściowych i ma dobrze zdefiniowaną sekwencję operacji do wykonania, użycie agentów sztucznej inteligencji może powodować niepotrzebne niepewność, opóźnienie i koszty.
Jeśli możesz napisać funkcję do obsługi zadania, zrób to zamiast używać agenta sztucznej inteligencji. Możesz użyć sztucznej inteligencji, aby ułatwić pisanie tej funkcji.
Pojedynczy agent sztucznej inteligencji może zmagać się ze złożonymi zadaniami, które obejmują wiele kroków i punktów decyzyjnych. Takie zadania mogą wymagać dużej liczby narzędzi (na przykład ponad 20), którymi pojedynczy agent nie może zarządzać.
W takich przypadkach rozważ użycie przepływów pracy.
Workflows
Co to jest przepływ pracy?
Przepływ pracy może wyrazić wstępnie zdefiniowaną sekwencję operacji, które mogą obejmować agentów sztucznej inteligencji jako składniki przy zachowaniu spójności i niezawodności. Przepływy pracy są przeznaczone do obsługi złożonych i długotrwałych procesów, które mogą obejmować wielu agentów, interakcje ludzkie i integracje z systemami zewnętrznymi.
Sekwencja wykonywania przepływu pracy może być jawnie zdefiniowana, co pozwala na większą kontrolę nad ścieżką wykonywania. Na poniższym diagramie przedstawiono przykład przepływu pracy, który łączy dwóch agentów sztucznej inteligencji i funkcję:
Przepływy pracy mogą również wyrażać sekwencje dynamiczne przy użyciu routingu warunkowego, podejmowania decyzji opartych na modelu i współbieżnego wykonywania. W ten sposób są implementowane wzorce aranżacji wielu agentów . Wzorce aranżacji zapewniają mechanizmy koordynowania wielu agentów do pracy nad złożonymi zadaniami, które wymagają wielu kroków i punktów decyzyjnych, zwracając się do ograniczeń pojedynczych agentów.
Jakie problemy rozwiązuje przepływy pracy?
Przepływy pracy zapewniają ustrukturyzowany sposób zarządzania złożonymi procesami, które obejmują wiele kroków, punktów decyzyjnych i interakcji z różnymi systemami lub agentami. Typy przepływów pracy zadań są przeznaczone do obsługi często więcej niż jednego agenta sztucznej inteligencji.
Oto niektóre z najważniejszych zalet przepływów pracy platformy Agent Framework:
- Modułowość: przepływy pracy można podzielić na mniejsze składniki wielokrotnego użytku, co ułatwia zarządzanie i aktualizowanie poszczególnych części procesu.
- Integracja agenta: przepływy pracy mogą zawierać wielu agentów sztucznej inteligencji wraz ze składnikami nie agentów, co umożliwia zaawansowaną aranżację zadań.
- 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: architektura oparta na grafach umożliwia intuicyjne modelowanie złożonych przepływów pracy za pomocą poleceń
executorsiedges. Wszystkie ścieżki routingu warunkowego, przetwarzania równoległego i dynamicznego wykonywania są obsługiwane. - Integracja zewnętrzna: wbudowane wzorce żądań/odpowiedzi umożliwiają bezproblemową integrację z zewnętrznymi interfejsami API i obsługują scenariusze pętli human-in-the-loop.
- Tworzenie punktów kontrolnych: zapisywanie stanów przepływu pracy za pośrednictwem punktów kontrolnych, włączanie odzyskiwania i wznowienia 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 Magentic.
- Komponowanie: przepływy pracy można zagnieżdżać lub łączyć w celu tworzenia bardziej złożonych procesów, co pozwala na skalowalność i możliwość dostosowania.