uutiset

OpenDevin on julkaissut teknisen raportin, joka on pakollista luettavaa suurten mallien agenttien kehittäjille

2024-08-02

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina



Koneen sydänraportti

Toimittaja: Chen Chen, Zenan

Suosittu yleiskäyttöinen laaja malli Agent-alusta.

Tämän vuoden maaliskuussa Devin, "maailman ensimmäinen AI-ohjelmistosuunnittelija", räjäytti tekoälyympyrän. Toisin kuin aiemmat tekoälyohjelmointiavustajat, Devin ei toimi vain ohjelmoinnin avustajana, vaan voi suorittaa koko kehitysprojektin itsenäisesti ja päästä päähän.



Devinin syntymä antoi meille mahdollisuuden arvostaa suurten malliagenttien tehokkaita ominaisuuksia. Pian alalle ilmestyi monia avoimen lähdekoodin projekteja, jotka yrittivät kopioida sitä. Niistä OpenDevin erottui ja sai eniten huomiota.

OpenDevin on alusta yleiskäyttöisten agenttien kehittämiseen, jotka ovat vuorovaikutuksessa maailman kanssa ohjelmistojen avulla.

Vuorovaikutusmekanismi suuren mallin Agentin, käyttöliittymän ja ympäristön välillä;

Sandbox-käyttöjärjestelmä + verkkoselainympäristö Agentin käytettävissä;

Käyttöliittymä koodin luomiseen ja suorittamiseen;

Multi-Agent-tuki;

Arviointikehys.

Tällä hetkellä OpenDevinin GitHub on saanut yli 29 000 tähteä.



Äskettäin OpenaDevin-tiimi julkaisi teknisen raportin tästä työkalusta.



Raportin osoite: https://arxiv.org/pdf/2407.16741

Teknisessä raportissa OpenDevinin kirjoittajat, tutkijat Illinoisin yliopistosta Urbana-Champaignista, Carnegie Mellonin yliopistosta ja muista oppilaitoksista, kertovat yksityiskohtaisesti OpenDevinistä, yhteisövetoisesta alustasta yleisen ja erikoistuneen tekoälyn kehittämiseen, joka on vuorovaikutuksessa maailman kanssa ohjelmistojen kautta.

Vielä tärkeämpää on, että OpenDevin ei ole vain käsitteellinen kehys, vaan se sisältää myös kattavan ja käyttövalmiin agentin, ympäristön ja arvioinnin toteutuksen. Tämän raportin julkaisuhetkellä OpenDevin sisältää Agent Centerin, joka on ottanut käyttöön yli 10 agenttia, mukaan lukien tehokkaan CodeAct-arkkitehtuuriin perustuvan yleisagentin, ja siihen on lisätty toimintoja Web-selailuun ja koodin muokkaamiseen. Käyttäjävuorovaikutus agentin kanssa toteutetaan chat-rajapinnalla, joka visualisoi agentin tämänhetkiset toiminnot ja mahdollistaa reaaliaikaisen palautteen. Lisäksi arviointikehys tukee tällä hetkellä 15 vertailuarvoa, joita voidaan käyttää agentin suorituskyvyn arvioimiseen.

OpenDevin-arkkitehtuuri

Tässä artikkelissa kirjoittaja kuvaa OpenDeviniä seuraavista näkökohdista: (1) kuinka agentit määritellään ja toteutetaan (2) kuinka toiminnan suorittaminen edistää havainnointia (3) kuinka agenttien käyttämiä taitoja voidaan hallita ja laajentaa; kuinka integroida useat agentit työskentelevät yhdessä tehtävän ratkaisemiseksi.



Kuinka määritellä ja toteuttaa agentti

Agentit voivat aistia ympäristön tilan ja generoida suoritettaviksi toimintoja käyttäjän määrittämiä tehtäviä ratkaiseessaan.

Tila ja tapahtumakulku. OpenDevinissä tila on tietorakenne, joka kapseloi kaikki olennaiset tiedot agentille tehtävien suorittamista varten. Tämän tilan avainkomponentti on tapahtumien suoratoisto, aikaisempien toimien ja havaintojen kronologinen kokoelma.

toiminta. CodeActin inspiroima OpenDevin yhdistää agentit ympäristöön ydintoimintojen avulla. Toiminnot IPythonRunCellAction ja CmdRunAction antavat agenteille mahdollisuuden suorittaa mielivaltaisia ​​Python-koodi- ja bash-komentoja hiekkalaatikkoympäristössä (esim. turvallisesti eristetyssä Linux-käyttöjärjestelmässä). BrowserInteractiveAction tukee agentin ja verkkoselaimen välistä vuorovaikutusta.

tarkkailla. Havainnot kuvaavat muutoksia tekijän havaitsemassa ympäristössä. Se voi johtua agentin toiminnasta tai ei: se voi olla 1) käyttäjän antama luonnollisen kielen käsky, 2) agentin edellisen toiminnon suoritustulos (esim. koodin suoritustulos jne.).

Ota käyttöön uusia agentteja. Agenttisuunnittelu on yksinkertainen mutta tehokas, joten käyttäjät voivat helposti luoda ja mukauttaa agentteja erilaisiin tehtäviin. Ydin on askelfunktiossa, joka ottaa syötteeksi nykyisen tilan ja generoi asianmukaiset toiminnot agentin logiikan perusteella. Kuvassa 2 on yksinkertaistettu esimerkkikoodi agentin abstraktiolle.



Tarkkaile toimintojen suorittamisen tuloksia

Agent Runtime tarjoaa agenteille toimintatilan, joka on verrattavissa ihmisten ohjelmistokehittäjiin, minkä ansiosta OpenDevin voi käsitellä erilaisia ​​ohjelmistokehitys- ja Web-pohjaisia ​​tehtäviä, mukaan lukien monimutkaiset ohjelmistokehityksen työnkulut, data-analyysiprojektit, Web-selaustehtävät jne. Sen avulla agentit voivat käyttää bash-päätettä suorittaakseen koodia ja komentorivityökaluja, hyödyntää Jupyter-muistikirjoja koodin kirjoittamiseen ja suorittamiseen lennossa ja olla vuorovaikutuksessa verkkoselaimen kanssa verkkopohjaisten tehtävien suorittamiseen (esimerkiksi tiedonhakuun).

Skaalautuva agentti - Tietokoneliitäntä

Kirjoittajat rakensivat AgentSkills-kirjaston, työkalupakin, joka on suunniteltu parantamaan agenttien ominaisuuksia tarjoamalla apuohjelmia, jotka eivät ole helposti saatavilla perusbash-komennoilla tai python-koodilla.

Monen agentin vuorovaikutus

OpenDevin sallii useiden agenttien olla vuorovaikutuksessa. Tämän saavuttamiseksi kirjoittajat käyttivät erityistä toimintotyyppiä, AgentDelegateAction, jonka avulla agentti voi delegoida tiettyjä alitehtäviä toiselle agentille.

Arvioida

Tässä osiossa verrataan OpenDeviniä (lyhennetty OD seuraavissa kokeellisissa tuloksissa) avoimen lähdekoodin toistettavissa oleviin perusmenetelmiin. 15 vertailuarvoa kattavat tehtäviä, kuten ohjelmistosuunnittelun ja verkkoselailun.



Taulukko 3 osoittaa, että vaikka OpenDevin-agentti ei välttämättä saavuta optimaalista suorituskykyä kaikissa luokissa, se on suunniteltu yleisyyttä ajatellen.



Taulukko 4 raportoi agentin tulokset ohjelmistosuunnittelun vertailuarvoista.



erityisesti:

SWE-penkki on suunniteltu arvioimaan agentin kykyä ratkaista GitHub-ongelmia, kuten virheraportteja tai ominaisuuspyyntöjä. Kuten taulukosta 4 käy ilmi, tämän artikkelin CodeActAgent v1.8:n uusimmassa versiossa, joka perustuu claude-3.5-sonetiin, ongelmanratkaisuaste on jopa 26 % verrattuna muihin avoimen lähdekoodin agentteihin, joita käytetään erityisesti ohjelmistokehitykseen.

HumanEvalFix. OpenDevin CodeActAgent korjasi onnistuneesti 79,3 % Python-jakojen virheistä, mikä ylitti merkittävästi kaikki muut kuin agenttimenetelmät ja lähes kaksinkertaisti StarCoder2-15B:n suorituskyvyn.

GPT-4o-pohjainen OpenDevin-agentti saavutti korkeimman onnistumisprosentin, 76,47 % ML-Benchissä, mikä on parempi kuin SWE-Agent (42,64 %).

Gorilla APIBench tutkii agentin kykyä käyttää sovellusliittymiä. GPT-4o:ta käyttävän OpenDevinin onnistumisprosentti on 36,4 %, mikä on parempi kuin perusviiva, jota ei ole erityisesti hienosäädetty API-kutsuille.

ToolQA arvioi agentin kykyä käyttää ulkoisia työkaluja. OpenDevin, jossa on GPT-4o, näyttää parhaan suorituskyvyn kaikkiin lähtötasoihin verrattuna. Agentti suoriutui paremmin CSV- ja tietokantatyökalujen käyttöön liittyvissä tehtävissä, mutta tarvitsi parannuksia matematiikan ja laskintyökalujen käyttöön.

Taulukko 5 raportoi web-selailuvertailun arviointitulokset.



Taulukossa 6 on esitetty erilaisten apuvertailujen tulokset.



Niistä GAIAa käytetään arvioimaan agentin kykyä ratkaista yleisiä tehtäviä. Tulokset osoittavat, että agentti saavutti 32,1 pistettä GAIA:lla, mikä on huomattavasti parempi kuin alkuperäisessä AutoGPT:ssä.

GPQA:ta käytetään arvioimaan agentin kykyä koordinoida työkalujen käyttöä ja samalla ratkaista haastavia jatko-tason ongelmia. Tulokset on esitetty taulukoissa 6 ja 7. OpenDevin integroi toimintoja, jotka tukevat useiden työkalujen käyttöä ja verkkohakuja, jolloin agentti pystyy paremmin ratkaisemaan monimutkaisia ​​monivaiheisia ongelmia.



Katso lisää tuloksia alkuperäisestä paperista.