Umjetna inteligencija
Microsoft AutoGen: Multi-Agent AI Workflows s naprednom automatizacijom

Predstavljen Microsoft Research AutoGen u rujnu 2023. kao Python okvir otvorenog koda za izgradnju AI agenata sposobnih za složenu suradnju više agenata. AutoGen je već postao popularan među istraživačima, programerima i organizacijama, s više od 290 suradnika na GitHub i gotovo 900,000 preuzimanja od svibnja 2024. Nadovezujući se na ovaj uspjeh, Microsoft je predstavio AutoGen Studio, sučelje s niskim kodom koje programerima omogućuje brzu izradu prototipa i eksperimentiranje s AI agentima.
Ova biblioteka je za razvoj inteligentnih, modularnih agenata koji mogu besprijekorno komunicirati radi rješavanja zamršenih zadataka, automatiziranja donošenja odluka i učinkovitog izvršavanja koda.
Microsoft je nedavno također predstavio AutoGen Studio koji pojednostavljuje razvoj agenata umjetne inteligencije pružajući interaktivnu platformu prilagođenu korisniku. Za razliku od svog prethodnika, AutoGen Studio minimizira potrebu za opsežnim kodiranjem, nudeći grafičko korisničko sučelje (GUI) gdje korisnici mogu povući i ispustiti agente, konfigurirati tijek rada i testirati rješenja vođena umjetnom inteligencijom bez napora.
Što AutoGen čini jedinstvenim?
Razumijevanje AI agenata
U kontekstu umjetne inteligencije, agent je autonomna softverska komponenta sposobna obavljati određene zadatke, često koristeći obradu prirodnog jezika i strojno učenje. Microsoftov okvir AutoGen poboljšava mogućnosti tradicionalnih AI agenata, omogućujući im da se uključe u složene, strukturirane razgovore, pa čak i da surađuju s drugim agentima kako bi postigli zajedničke ciljeve.
AutoGen podržava široku lepezu tipova agenata i obrazaca razgovora. Ova svestranost omogućuje automatizaciju radnih procesa koji su prije zahtijevali ljudsku intervenciju, što ga čini idealnim za aplikacije u različitim industrijama kao što su financije, oglašavanje, softversko inženjerstvo itd.
Agenti za razgovor i prilagodljivost
AutoGen uvodi koncept "konverzibilnih" agenata, koji su dizajnirani za obradu poruka, generiranje odgovora i izvođenje radnji na temelju uputa prirodnog jezika. Ovi agenti ne samo da su sposobni sudjelovati u bogatim dijalozima, već se također mogu prilagoditi za poboljšanje njihove izvedbe na određenim zadacima. Ovaj modularni dizajn čini AutoGen moćnim alatom za jednostavne i složene AI projekte.
Ključne vrste agenata:
- Pomoćni agent: Pomoćnik s LLM-om koji se može nositi sa zadacima kao što su kodiranje, otklanjanje pogrešaka ili odgovaranje na složene upite.
- Korisnički proxy agent: Simulira ponašanje korisnika, omogućujući programerima testiranje interakcija bez uključivanja stvarnog ljudskog korisnika. Također može samostalno izvršavati kod.
- Agenti za grupni razgovor: Skup agenata koji surađuju, idealno za scenarije koji zahtijevaju više vještina ili perspektiva.
Suradnja s više agenata
Jedna od najimpresivnijih značajki AutoGena je podrška za višeagentna suradnja. Programeri mogu stvoriti mrežu agenata, svaki sa specijaliziranim ulogama, kako bi se učinkovitije uhvatili u koštac sa složenim zadacima. Ovi agenti mogu međusobno komunicirati, razmjenjivati informacije i kolektivno donositi odluke, pojednostavljujući procese koji bi inače bili dugotrajni ili skloni pogreškama.
Osnovne značajke programa AutoGen
1. Multi-Agent Framework
AutoGen olakšava stvaranje mreža agenata gdje svaki agent može raditi samostalno ili u koordinaciji s drugima. Okvir pruža fleksibilnost za dizajniranje radnih procesa koji su potpuno autonomni ili uključuju ljudski nadzor kada je to potrebno.
Obrasci razgovora uključuju:
- Razgovori jedan na jedan: Jednostavna interakcija između dva agenta.
- Hijerarhijske strukture: Agenti mogu delegirati zadatke podagentima, što olakšava rješavanje složenih problema.
- Grupni razgovori: Grupni razgovori s više agenata u kojima agenti surađuju kako bi riješili zadatak.
2. Izvršenje koda i automatizacija
Za razliku od mnogih AI okvira, AutoGen omogućuje agentima da automatski generiraju, izvršavaju i otklanjaju pogreške. Ova je značajka neprocjenjiva za softversko inženjerstvo i zadatke analize podataka, budući da smanjuje ljudsku intervenciju i ubrzava razvojne cikluse. Korisnički proxy agent može identificirati blokove izvršnog koda, pokrenuti ih, pa čak i samostalno poboljšati izlaz.
3. Integracija s alatima i API-jima
AutoGen agenti mogu komunicirati s vanjskim alatima, uslugama i API-jima, značajno proširujući svoje mogućnosti. Bilo da se radi o dohvaćanju podataka iz baze podataka, postavljanju web zahtjeva ili integraciji s Azure uslugama, AutoGen pruža robustan ekosustav za izgradnju aplikacija bogatih značajkama.
4. Čovjek-u-petlji rješavanje problema
U scenarijima u kojima je potreban ljudski unos, AutoGen podržava interakcije čovjek-agent. Programeri mogu konfigurirati agente da zatraže upute ili odobrenje od ljudskog korisnika prije nastavka s određenim zadacima. Ova značajka osigurava da se ključne odluke donose promišljeno i uz pravu razinu nadzora.
Kako AutoGen radi: Duboko zaranjanje
Inicijalizacija i konfiguracija agenta
Prvi korak u radu s AutoGen-om uključuje postavljanje i konfiguriranje vaših agenata. Svaki agent može se prilagoditi za obavljanje specifičnih zadataka, a programeri mogu prilagoditi parametre kao što su LLM model koji se koristi, omogućene vještine i okruženje izvršenja.
Orkestriranje interakcija agenata
AutoGen upravlja tijek razgovora između agenata na strukturiran način. Tipičan tijek rada mogao bi izgledati ovako:
- Zadatak Uvod: Korisnik ili agent uvodi upit ili zadatak.
- Obrada agenta: relevantni agenti analiziraju unos, generiraju odgovore ili izvode akcije.
- Međuagentska komunikacija: Agenti dijele podatke i uvide, surađujući kako bi dovršili zadatak.
- Izvršenje zadatka: Agenti po potrebi izvršavaju kod, dohvaćaju informacije ili komuniciraju s vanjskim sustavima.
- Završetak: Razgovor završava kada je zadatak dovršen, dosegnut je prag pogreške ili se aktivira uvjet prekida.
Rješavanje pogrešaka i samousavršavanje
AutoGen-ovi agenti dizajnirani su za inteligentno rukovanje pogreškama. Ako zadatak ne uspije ili proizvede netočan rezultat, agent može analizirati problem, pokušati ga popraviti, pa čak i ponoviti njegovo rješenje. Ova sposobnost samoiscjeljivanja ključna je za stvaranje pouzdanih AI sustava koji mogu raditi autonomno tijekom duljeg razdoblja.
Preduvjeti i instalacija
Prije nego počnete raditi s AutoGenom, provjerite dobro razumijete AI agente, okvire orkestracije i osnove programiranja u Pythonu. AutoGen je okvir temeljen na Pythonu, a njegov se puni potencijal ostvaruje u kombinaciji s drugim AI uslugama, poput GPT modela OpenAI ili Microsoft Azure AI.
Instalirajte AutoGen pomoću pip
:
Za dodatne značajke, kao što su optimizirane mogućnosti pretraživanja ili integracija s vanjskim bibliotekama:
Postavljanje vašeg okruženja
AutoGen zahtijeva da sigurno konfigurirate varijable okoline i API ključeve. Prođimo kroz temeljne korake potrebne za pokretanje i konfiguriranje vašeg radnog prostora:
- Učitavanje varijabli okruženja: Pohranite osjetljive API ključeve u a
.env
datoteku i učitajte ih pomoćudotenv
za održavanje sigurnosti. (api_key = os.environ.get(“OPENAI_API_KEY”)) - Odabir konfiguracije vašeg jezičnog modela: Odlučite se za LLM koji ćete koristiti, kao što je GPT-4 iz OpenAI-ja ili bilo koji drugi preferirani model. Postavke konfiguracije kao što su krajnje točke API-ja, nazivi modela i ključevi moraju biti jasno definirani kako bi se omogućila besprijekorna komunikacija između agenata.
Izrada AutoGen agenata za složene scenarije
Da biste izgradili višeagentski sustav, trebate definirati agente i navesti kako se trebaju ponašati. AutoGen podržava različite vrste agenata, svaki s različitim ulogama i mogućnostima.
Stvaranje pomoćnika i korisničkih proxy agenata: Definirajte agente sa sofisticiranim konfiguracijama za izvršavanje koda i upravljanje korisničkim interakcijama: