AI-mallit ja alustat
Microsoft AutoGen: Moniagenttinen AI-työkalu Edistyneellä Automatiikalla

Microsoft (MSFT ) Research esitteli AutoGenin syyskuussa 2023 avoimena lähdekoodina toimivana Python-kehyksenä, joka mahdollistaa monimutkaisten moniagenttien luomisen. AutoGen on jo saavuttanut suosiota tutkijoiden, kehittäjien ja organisaatioiden keskuudessa, ja sillä on yli 290 osallistujaa GitHubissa ja lähes 900 000 latausta toukokuuhun 2024 mennessä. Microsoft on myös esittellyt AutoGen Studion, joka on matalan koodin käyttöliittymä, joka mahdollistaa nopean prototyyppien ja kokeilujen luomisen AI-agentteja varten.
Tämä kirjasto on tarkoitettu älymäisten, modulaaristen agenttien kehittämiseen, jotka voivat vuorovaikuttaa sulavasti monimutkaisten tehtävien ratkaisemiseksi, päätöksenteon automatisoimiseksi ja koodin suorittamiseksi tehokkaasti.
Microsoft on myös esittellyt AutoGen Studion, joka yksinkertaa AI-agenttien kehittämisen tarjoamalla interaktiivisen ja käyttäjäystävällisen alustan. Toisin kuin edeltäjänsä, AutoGen Studio vähentää laajan koodauksen tarvetta tarjoamalla graafisen käyttöliittymän, jossa käyttäjät voivat vetää ja pudottaa agenteja, konfiguroida työvirran ja testata AI-vetäjiä vaivattomasti.
Mikä tekee AutoGenista ainutlaatuisen?
Ymmärtäminen AI-agenteista
AI-agenteissa agentti on itsenäinen ohjelmistokomponentti, joka pystyy suorittamaan tiettyjä tehtäviä, usein luonnollisen kielen prosessoinnin ja koneoppimisen avulla. Microsoftin AutoGen-kehys parantaa perinteisten AI-agenttien kykyjä, mahdollistaen niiden osallistumisen monimutkaisiin, rakenteellisiin keskusteluihin ja jopa yhteistyöhön muiden agenttien kanssa jaettujen tavoitteiden saavuttamiseksi.
AutoGen tukee laajaa valikoimaa agenttityyppejä ja keskustelumalleja. Tämä joustavuus mahdollistaa sen, että se automatisoi työvirran, jotka aiemmin vaativat ihmisen väliintuloa, mikä tekee siitä ihanteellisen sovelluksia monissa eri aloilla, kuten rahoituksessa, mainonnassa, ohjelmistosuunnittelussa ja muissa.
Keskustelu- ja mukautettavat agentit
AutoGen esittelee “keskusteluagentit”, jotka on suunniteltu prosessoimaan viestejä, generoimaan vastauksia ja suorittamaan toimintoja luonnollisen kielen ohjeiden mukaan. Nämä agentit eivät ainoastaan osallistu rikkaaseen dialogiin, vaan ne voidaan myös mukauttaa parantamaan suorituskykyä tiettyjä tehtäviä varten. Tämä modulaarinen suunnittelu tekee AutoGenista voimakkaan työkalun sekä yksinkertaisille että monimutkaisille AI-projekteille.
Avainagentit:
- Avustaja-agentti: LLM-pohjainen avustaja, joka voi hoitaa tehtäviä kuten koodausta, virheenkorjausta tai monimutkaisten kysymysten vastaamista.
- Käyttäjän edustaja-agentti: Simuloi käyttäjän käyttäytymistä, mahdollistaen kehittäjien testaamisen ilman oikean käyttäjän osallistumista. Se voi myös suorittaa koodia itsenäisesti.
- Ryhmäkeskusteluagentit: Agenttien kokoelma, joka toimii yhteistyössä, ihanteellinen tilanteissa, joissa vaaditaan useita taitoja tai näkökulmia.
Moniagenttien yhteistyö
Yksi AutoGenin vaikuttavimmista ominaisuuksista on sen tuki moniagenttien yhteistyölle. Kehittäjät voivat luoda agenttien verkoston, joilla on erikoistuneet roolit, jotta voidaan ratkaista monimutkaisia tehtäviä tehokkaammin. Nämä agentit voivat viestiä toistensa kanssa, vaihtaa tietoja ja tehdä yhteisiä päätöksiä, sujuvoittaen prosesseja, jotka olisivat muuten aikaa vieviä tai altis virheille.
AutoGenin ydinominaisuudet
1. Moniagenttikehys
AutoGen mahdollistaa agenttien verkoston luomisen, jossa jokainen agentti voi toimia itsenäisesti tai yhteistyössä muiden kanssa. Kehys tarjoaa joustavuuden suunnitella työvirran, jotka ovat täysin itsenäisiä tai sisältävät ihmisen valvontaa, kun tarve vaatii.
Keskustelumallit sisältävät:
- Yksilökeskustelut: Yksinkertaiset vuorovaikutukset kahden agentin välillä.
- Hierarkkiset rakenteet: Agentit voivat delegoida tehtäviä aliamenteille, helpottaen monimutkaisten ongelmien käsittelyä.
- Ryhmäkeskustelut: Moniagenttiryhmäkeskustelut, joissa agentit yhteistyössä ratkaisevat tehtävän.
2. Koodin suorittaminen ja automaatio
Toisin kuin monet AI-kehykset, AutoGen sallii agenttien generoimisen, suorittamisen ja virheenkorjauksen automaattisesti. Tämä ominaisuus on arvokas ohjelmistosuunnittelun ja data-analytiikan tehtävissä, koska se vähentää ihmisen väliintuloa ja nopeuttaa kehitysprosessia. Käyttäjän edustaja-agentti voi tunnistaa suoritettavan koodin, ajaa sen ja jopa parantaa tulosta itsenäisesti.
3. Integraatio työkalujen ja API:en kanssa
AutoGen-agentit voivat vuorovaikuttaa ulkoisten työkalujen, palvelujen ja API:en kanssa, laajentaen merkittävästi heidän kykyjään. Riippumatta siitä, onko kyse tietojen hakemisesta tietokannasta, web-pyynnöistä tai integroimisesta Azure-palveluihin, AutoGen tarjoaa vankkan kehyssovellusten rakentamiseen.
4. Ihmisen osallistuminen ongelmanratkaisuun
Tilanteissa, joissa ihmisen syöttäminen on välttämätöntä, AutoGen tukee ihmisen ja agentin välistä vuorovaikutusta. Kehittäjät voivat konfiguroida agenteja pyytämään ohjeita tai hyväksyntää ihmiseltä ennen tiettyjen tehtävien suorittamista. Tämä ominaisuus varmistaa, että kriittiset päätökset tehdään tarkoituksenmukaisesti ja oikealla valvonnalla.
AutoGenin toimintaperiaate: Syväanalyysi
Agenttien alkuasetukset ja konfigurointi
Ensimmäinen askel AutoGenin kanssa työskentelemisessä on agenttien asettaminen ja konfigurointi. Jokainen agentti voidaan räätälöidä suorittamaan tiettyjä tehtäviä, ja kehittäjät voivat mukauttaa parametreja, kuten käytettävän LLM-mallin, kykyjen ottamisen käyttöön ja suoritusympäristön.
Agenttien vuorovaikutusten orkesterointi
AutoGen käsittelee agenttien välisen keskustelun rakenteellisella tavalla. Tyypillinen työvirta saattaa näyttää tältä:
- Tehtävän esittely: Käyttäjä tai agentti esittää kysymyksen tai tehtävän.
- Agenttien prosessointi: Asianmukaiset agentit analysoivat syötteen, generoivat vastauksia tai suorittavat toimintoja.
- Agenttien välinen viestintä: Agentit jakavat tietoja ja näkemyksiä, yhteistyössä tehtävän suorittamiseksi.
- Tehtävän suorittaminen: Agentit suorittavat koodia, hakevat tietoja tai vuorovaikuttavat ulkoisten järjestelmien kanssa tarpeen mukaan.
- Päättäminen: Keskustelu päättyy, kun tehtävä on suoritettu, virhetaso saavutetaan tai päättymisehto laukaistaan.
Virheiden käsittely ja itseparantaminen
AutoGenin agentit on suunniteltu käsittelemään virheitä älykkäästi. Jos tehtävä epäonnistuu tai tuottaa virheellisen tuloksen, agentti voi analysoida ongelman, yrittää korjata sen ja jopa iteroida ratkaisunsa. Tämä itseparantamiskyky on olennainen luotettavien AI-järjestelmien luomiseksi, jotka voivat toimia itsenäisesti pitkän ajan.
Edellytykset ja asennus
Ennen AutoGenin käyttämistä varmista, että sinulla on vankka ymmärrys AI-agenteista, orkesterointikehyksistä ja Python-ohjelmoinnin perusteista. AutoGen on Python-pohjainen kehys, ja sen täysi potentiaali toteutuu yhdistettynä muihin AI-palveluihin, kuten OpenAI:n GPT-malleihin tai Microsoft Azure AI:hin.
Asenna AutoGen käyttäen pip:
Lisäominaisuuksien, kuten optimoidun hakutoiminnallisuuden tai integroinnin ulkoisten kirjastojen kanssa:
Ympäristön määritys
AutoGen vaatii ympäristömuuttujien ja API-avainvarastojen määrityksen turvallisesti. Käydään läpi perusaskelten, joita tarvitaan työtilan alustamiseen ja konfiguroimiseen:
- Ladataan ympäristömuuttujat: Tallenna herkät API-avaimet
.env-tiedostoon ja lataa nedotenv:n avulla turvallisuuden ylläpitämiseksi. (api_key = os.environ.get(“OPENAI_API_KEY”)) - Valitse kielen mallin konfiguraatio: Päätä, mitä LLM:ää käytät, kuten GPT-4 OpenAI:sta tai mikä tahansa muu suosittu malli. Konfiguraatio-asetukset, kuten API-päätepisteet, mallinimet ja avaimet, on määriteltävä selkeästi, jotta voidaan varmistaa viihtyisä viestintä agenttien välillä.
Rakentaminen AutoGen-agenteja monimutkaisiin skenaarioihin
Moniagenttijärjestelmän rakentamiseksi on määriteltävä agentit ja määriteltävä, miten heidän toimintansa on. AutoGen tukee useita agenttityyppejä, joilla on eri roolit ja kyvyt.
Luo avustaja- ja käyttäjän edustaja-agenteja: Määrittele agenteja, joilla on monimutkaiset konfiguraatiot koodin suorittamiseen ja käyttäjän vuorovaikutuksen hallintaan:












