Modele i platformy AI
Microsoft AutoGen: Multi-Agent AI Workflows z Zaawansowaną Automatyzacją

Microsoft (MSFT ) Research wprowadził AutoGen we wrześniu 2023 roku jako otwarty framework Python do budowy agentów AI zdolnych do złożonej, wieloagentowej współpracy. AutoGen zdobył już uznanie wśród badaczy, deweloperów i organizacji, z ponad 290 współpracownikami na GitHubie i prawie 900 000 pobrań do maja 2024 roku. Budując na tym sukcesie, Microsoft zaprezentował AutoGen Studio, interfejs niskiego kodu, który umożliwia deweloperom szybkie prototypowanie i eksperymentowanie z agentami AI.
Ta biblioteka służy do tworzenia inteligentnych, modułowych agentów, które mogą współpracować bezproblemowo w celu rozwiązania złożonych zadań, automatyzacji podejmowania decyzji oraz wydajnego wykonania kodu.
Microsoft niedawno wprowadził również AutoGen Studio, który ułatwia rozwój agentów AI, zapewniając interaktywną i przyjazną platformę. W przeciwieństwie do swojego poprzednika, AutoGen Studio minimalizuje potrzebę obszernego kodowania, oferując graficzny interfejs użytkownika (GUI), w którym użytkownicy mogą przeciągać i upuszczać agenty, konfigurować przepływy pracy i testować rozwiązania napędzane przez AI bez wysiłku.
Czym jest unikalne AutoGen?
Poznawanie agentów AI
W kontekście AI, agent to autonomiczny składnik oprogramowania, który może wykonywać określone zadania, często wykorzystując przetwarzanie języka naturalnego i uczenie maszynowe. Ramy AutoGen zwiększają możliwości tradycyjnych agentów AI, umożliwiając im angażowanie się w złożone, ustrukturyzowane rozmowy i nawet współpracę z innymi agentami w celu osiągnięcia wspólnych celów.
AutoGen obsługuje szeroki zakres typów agentów i wzorców rozmów. Ta wszechstronność pozwala mu automatyzować przepływy pracy, które wcześniej wymagały interwencji ludzkiej, co sprawia, że jest idealnym rozwiązaniem dla aplikacji w różnych branżach, takich jak finanse, reklama, inżynieria oprogramowania i wiele innych.
Agenci rozmowni i dostosowywani
AutoGen wprowadza pojęcie “rozmownych” agentów, które są zaprojektowane do przetwarzania wiadomości, generowania odpowiedzi i wykonywania działań na podstawie instrukcji języka naturalnego. Agenci ci nie tylko potrafią angażować się w bogate dialogi, ale mogą być również dostosowywani do poprawy ich wydajności w określonych zadaniach. Ten modułowy projekt sprawia, że AutoGen jest potężnym narzędziem zarówno dla prostych, jak i złożonych projektów AI.
Kluczowe typy agentów:
- Agent asystent: LLM-powered asystent, który może obsługiwać zadania takie jak kodowanie, debugowanie lub odpowiedzi na złożone pytania.
- Agent proxy użytkownika: Symuluje zachowanie użytkownika, umożliwiając deweloperom testowanie interakcji bez udziału rzeczywistego użytkownika. Może również wykonywać kod autonomicznie.
- Agenci czatu grupowego: Zbiór agentów, których współpraca jest idealna dla scenariuszy wymagających wielu umiejętności lub perspektyw.
Współpraca wieloagentowa
Jedną z najbardziej imponujących funkcji AutoGen jest jego obsługa współpracy wieloagentowej. Deweloperzy mogą tworzyć sieć agentów, z których każdy ma specjalistyczne role, aby rozwiązać złożone zadania bardziej efektywnie. Agenci ci mogą komunikować się ze sobą, wymieniać informacje i podejmować decyzje zbiorowo, usprawniając procesy, które w przeciwnym razie byłyby czasochłonne lub podatne na błędy.
Podstawowe funkcje AutoGen
1. Ramy wieloagentowe
AutoGen ułatwia tworzenie sieci agentów, z których każdy może pracować niezależnie lub we współpracy z innymi. Ramy zapewniają elastyczność w projektowaniu przepływów pracy, które mogą być w pełni autonomiczne lub zawierać nadzór ludzki, gdy jest to konieczne.
Wzorce rozmów obejmują:
- Rozmowy jeden-na-jeden: Proste interakcje między dwoma agentami.
- Struktury hierarchiczne: Agenci mogą delegować zadania do agentów podrzędnych, co ułatwia rozwiązywanie złożonych problemów.
- Rozmowy grupowe: Wieloagentowe rozmowy grupowe, w których agenci współpracują, aby rozwiązać zadanie.
2. Wykonanie kodu i automatyzacja
W przeciwieństwie do wielu ram AI, AutoGen pozwala agentom generować, wykonywać i debugować kod automatycznie. Ta funkcja jest niezwykle cenna dla zadań inżynierii oprogramowania i analizy danych, ponieważ minimalizuje interwencję ludzką i przyspiesza cykle rozwoju. Agent proxy użytkownika może identyfikować bloki kodu wykonywalnego, uruchamiać je i nawet udoskonalać wynik autonomicznie.
3. Integracja z narzędziami i API
Agenci AutoGen mogą współpracować z zewnętrznymi narzędziami, usługami i API, znacznie rozszerzając ich możliwości. Niezależnie od tego, czy chodzi o pobieranie danych z bazy danych, wysyłanie żądań sieciowych czy integrację z usługami Azure, AutoGen zapewnia solidne środowisko do budowy aplikacji o bogatych funkcjach.
4. Rozwiązywanie problemów z udziałem człowieka
W scenariuszach, w których wymagana jest interwencja ludzka, AutoGen obsługuje interakcje człowiek-agent. Deweloperzy mogą konfigurować agenty do żądania wskazówek lub zatwierdzenia od użytkownika przed podjęciem określonych zadań. Ta funkcja zapewnia, że krytyczne decyzje są podejmowane w sposób przemyślany i z odpowiednim poziomem nadzoru.
Jak działa AutoGen: Głębokie zanurzenie
Inicjacja i konfiguracja agenta
Pierwszym krokiem w pracy z AutoGen jest ustawienie i konfiguracja agentów. Każdy agent może być dostosowany do wykonywania określonych zadań, a deweloperzy mogą dostosowywać parametry, takie jak model LLM, umiejętności i środowisko wykonania.
Orchestracja interakcji agentów
AutoGen obsługuje przepływ rozmowy między agentami w sposób ustrukturyzowany. Typowy przepływ pracy może wyglądać następująco:
- Wprowadzenie zadania: Użytkownik lub agent wprowadza zapytanie lub zadanie.
- Przetwarzanie agenta: Odpowiedni agenci analizują dane wejściowe, generują odpowiedzi lub wykonują akcje.
- Komunikacja między agentami: Agenci wymieniają dane i informacje, współpracując, aby ukończyć zadanie.
- Wykonanie zadania: Agenci wykonują kod, pobierają informacje lub współpracują z zewnętrznymi systemami, jeśli jest to konieczne.
- Zakończenie: Rozmowa kończy się, gdy zadanie jest ukończone, osiągnięty jest próg błędu lub wyzwolony jest warunek zakończenia.
Obsługa błędów i samodoskonalenie
Agenci AutoGen są zaprojektowani do inteligentnego obsługi błędów. Jeśli zadanie nie powiedzie się lub wyprodukuje niepoprawny wynik, agent może analizować problem, próbować go naprawić i nawet iterować nad swoim rozwiązaniem. Ta zdolność do samodoskonalenia jest kluczowa dla tworzenia niezawodnych systemów AI, które mogą działać autonomicznie przez dłuższy czas.
Wymagania wstępne i instalacja
Przed rozpoczęciem pracy z AutoGen upewnij się, że masz solidne zrozumienie agentów AI, ram orchestracji i podstaw programowania Python. AutoGen to framework oparty na Pythonie, a jego pełny potencjał jest realizowany w połączeniu z innymi usługami AI, takimi jak modele GPT OpenAI lub Microsoft Azure AI.
Instalacja AutoGen za pomocą pip :
Dla dodatkowych funkcji, takich jak zoptymalizowane możliwości wyszukiwania lub integracja z bibliotekami zewnętrznymi:
Konfigurowanie środowiska
AutoGen wymaga od Ciebie konfiguracji zmiennych środowiskowych i kluczy API w sposób bezpieczny. Przejdźmy przez podstawowe kroki niezbędne do inicjacji i konfiguracji Twojego środowiska:
- Ładowanie zmiennych środowiskowych: Przechowuj wrażliwe klucze API w pliku
.envi ładuj je za pomocądotenv, aby utrzymać bezpieczeństwo. (api_key = os.environ.get(“OPENAI_API_KEY”)) - Wybór konfiguracji modelu językowego: Zdecyduj, który model LLM będziesz używał, taki jak GPT-4 z OpenAI lub inny preferowany model. Ustawienia konfiguracyjne, takie jak punkty końcowe API, nazwy modeli i klucze, muszą być wyraźnie zdefiniowane, aby umożliwić płynną komunikację między agentami.
Budowanie agentów AutoGen dla złożonych scenariuszy
Aby zbudować system wieloagentowy, musisz zdefiniować agenty i określić, jak powinny one działać. AutoGen obsługuje różne typy agentów, z których każdy ma odrębne role i możliwości.
Tworzenie agentów asystentów i proxy użytkownika: Zdefiniuj agenty z zaawansowanymi konfiguracjami do wykonywania kodu i zarządzania interakcjami użytkownika:












