Predstavljamo Amazon CodeWhisperer, spremljevalca kodiranja PlatoBlockchain Data Intelligence, ki ga poganja ML. Navpično iskanje. Ai.

Predstavljamo Amazon CodeWhisperer, spremljevalca kodiranja, ki ga poganja ML

Z veseljem objavljamo Amazon Code Whisperer, storitev, ki temelji na strojnem učenju (ML), ki pomaga izboljšati produktivnost razvijalcev z zagotavljanjem priporočil za kodo na podlagi naravnih komentarjev in predhodne kode razvijalcev. S programom CodeWhisperer lahko razvijalci preprosto napišejo komentar, ki opisuje določeno nalogo v preprosti angleščini, na primer »naloži datoteko v S3«. Na podlagi tega CodeWhisperer samodejno določi, katere storitve v oblaku in javne knjižnice so najprimernejše za določeno nalogo, sproti gradi specifično kodo in priporoči ustvarjene delčke kode neposredno v IDE.

Čeprav je oblak demokratiziral razvoj aplikacij s tem, da je na zahtevo omogočil dostop do računalništva, shranjevanja, baze podatkov, analitike in strojnega učenja, tradicionalni proces izdelave programskih aplikacij še vedno zahteva, da razvijalci porabijo veliko časa za pisanje okvirnih delov kode, ki niso neposredno povezani s temeljnim problemom, ki ga poskušajo rešiti. Celo najbolj izkušeni razvijalci težko sledijo več programskim jezikom, ogrodjem in knjižnicam programske opreme, hkrati pa zagotavljajo, da sledijo pravilni sintaksi programiranja in najboljšim praksam kodiranja. Posledično razvijalci porabijo veliko časa za iskanje in prilagajanje izrezkov kode iz spleta. S programom CodeWhisperer lahko razvijalci ostanejo osredotočeni na IDE in izkoristijo kontekstualna priporočila v realnem času, ki so že prilagojena in pripravljena za uporabo. Manj motenj stran od IDE in priporočila v realnem času, pripravljena za uporabo, vam pomagajo hitreje dokončati opravila kodiranja in zagotavljajo povečanje produktivnosti.

V tej objavi razpravljamo o prednostih CodeWhispererja in o tem, kako začeti.

Prinašanje moči ML na dosegu roke razvijalcem

CodeWhisperer je na voljo kot del razširitve AWS Toolkit za glavne IDE-je, vključno z JetBrains, Visual Studio Code in AWS Cloud9. Na AWS Lambda konzoli, je CodeWhisperer na voljo kot izvorna funkcija predlaganja kode. Ob zagonu lahko uporabite CodeWhisperer za ustvarjanje priporočil kode za Python, Java in JavaScript. Komplet orodij AWS lahko namestite tako, da odprete zaslon vtičnika ali razširitve svojega IDE in poiščete komplet orodij AWS.

Predstavljamo Amazon CodeWhisperer, spremljevalca kodiranja PlatoBlockchain Data Intelligence, ki ga poganja ML. Navpično iskanje. Ai.

Ko je CodeWhisperer omogočen, začnete samodejno prejemati priporočila za kodo v svojem IDE, ko začnete pisati kodo ali komentarje. S tem, ko se srečamo z razvijalci tam, kjer ste, naredimo CodeWhisperer preprost za uporabo in eksperimentiranje. Začnete lahko v nekaj minutah in takoj začnete uživati ​​v prednostih produktivnosti.

Veliko več kot tradicionalno samodokončanje

Tradicionalna orodja za samodokončanje omogočajo dokončanje ene besede, na primer seznam lastnosti ali metod za predmet. CodeWhisperer zagotavlja veliko boljše povečanje produktivnosti z generiranjem celotnih funkcij in blokov logične kode naenkrat. Poleg tega CodeWhisperer razume namero razvijalca, izraženo v preprostih angleških komentarjih. Naslednji primer prikazuje, kako CodeWhisperer ustvari celotno funkcijo za pretvorbo datoteke JSON v datoteko CSV, pri čemer upošteva namero razvijalca glede uporabe ključev v datoteki JSON kot glav datoteke CSV.

Predstavljamo Amazon CodeWhisperer, spremljevalca kodiranja PlatoBlockchain Data Intelligence, ki ga poganja ML. Navpično iskanje. Ai.

Gradnja aplikacij na AWS je pravkar postala lažja

CodeWhisperer razvijalcem olajša uporabo storitev AWS z zagotavljanjem priporočil kode za vmesnike za programiranje aplikacij (API) AWS v najbolj priljubljenih storitvah, vključno z Amazonski elastični računalniški oblak (Amazon EC2), Lambda in Preprosta storitev shranjevanja Amazon (Amazon S3). Ko pišete kodo v svojem IDE, CodeWhisperer samodejno analizira komentar, sestavi kodo z uporabo ustreznih storitev v oblaku in javnih knjižnic programske opreme za želeno funkcionalnost ter priporoči delčke kode in celo celotne funkcije neposredno v IDE, ki ustrezajo najboljšim praksam. Naslednji primer prikazuje, kako lahko CodeWhisperer ustvari celotno funkcijo za nalaganje datoteke v Amazon S3 z uporabo šifriranja na strani strežnika.

Predstavljamo Amazon CodeWhisperer, spremljevalca kodiranja PlatoBlockchain Data Intelligence, ki ga poganja ML. Navpično iskanje. Ai.

Odgovorno izkoriščanje moči umetne inteligence

Model CodeWhisperer smo usposobili na ogromnih količinah javno dostopne kode, da bi izboljšali natančnost priporočil. Preprosto povedano, natančnost modela je neposredno sorazmerna z velikostjo podatkov o usposabljanju. In čeprav nam je to pomagalo na sprednji strani natančnosti, se lahko tovrstni modeli naučijo tudi nekaterih neželenih vzorcev. Verjamemo, da čeprav lahko AI nedvomno poveča produktivnost, moramo to moč izkoristiti na odgovoren način. Obstaja nekaj izstopajočih zmogljivosti, zaradi katerih je CodeWhisperer edinstven v tem prostoru.

Pri AWS radi rečemo, da je varnost naloga nič. Zato CodeWhisperer ponuja tudi možnost izvajanja pregledov vaše kode (ki jo ustvari CodeWhisperer in jo napišete vi) za odkrivanje varnostnih ranljivosti. Naslednji posnetek zaslona prikazuje funkcijo varnostnega skeniranja programa CodeWhisperer. Vključili smo delček kode, ki lahko povzroči uhajanje virov. Ko izberete Zaženite varnostni pregled, CodeWhisperer zazna to ranljivost in prikaže težavo.

Predstavljamo Amazon CodeWhisperer, spremljevalca kodiranja PlatoBlockchain Data Intelligence, ki ga poganja ML. Navpično iskanje. Ai.

Drugič, nudimo referenčni sledilnik, ki lahko zazna, kdaj so lahko ustvarjeni rezultati podobni določenim podatkom o usposabljanju. Čeprav se je model naučil pisati kodo in na podlagi učenja ustvari popolnoma novo kodo, je lahko v zelo redkih primerih neodvisno ustvarjeno priporočilo kode podobno edinstvenemu izrezku kode v podatkih za usposabljanje. S tem, ko vas obvesti, ko se to zgodi, in vam zagotovi repozitorij in informacije o licenciranju, vam CodeWhisperer olajša odločitev, ali boste kodo uporabili v svojem projektu, in dodeli ustrezne izvorne kode, kot se vam zdi primerno.

CodeWhisperer vam v realnem času sporoči, da je trenutno priporočilo kode, ki ga vidite, morda podobno referenčni kodi, tako da prikaže obvestilo v pojavnem oknu s priporočili. Na naslednjem posnetku zaslona je ugotovljeno, da je ustvarjena koda podobna referenčni kodi, ki je pod licenco MIT. Če razvijalec sprejme priporočilo, CodeWhisperer zabeleži sprejem in ustrezne informacije o licenciranju. Nato si lahko ogledate referenčni dnevnik tako, da izberete Odpri referenčno ploščo CodeWhisperer pod vozliščem CodeWhisperer.

Predstavljamo Amazon CodeWhisperer, spremljevalca kodiranja PlatoBlockchain Data Intelligence, ki ga poganja ML. Navpično iskanje. Ai.

Nazadnje izvajamo tehnike za odkrivanje pristranskosti na podlagi običajnih stereotipov. Implementirali smo filtre, ki zaznajo očitno pristranskost v ustvarjeni kodi in odstranijo priporočila kode, ki se lahko štejejo za pristranska in nepoštena. Na primer, predstavljajte si programsko opremo za zaposlovanje, ki pomaga pri zaposlovanju menedžerjev s samodejnim izborom kandidatov. V primeru neodločenega izida je programska oprema odvisna od logike razbijalca izenačenih rezultatov. Med ustvarjanjem priporočila za ta scenarij je možno, da model AI ustvari kodo, ki daje prednost kandidatom na podlagi neustreznih parametrov. CodeWhisperer lahko zazna pristranskost v svojih priporočilih in jih filtrira, preden sploh prikaže priporočila razvijalcu.

Odklepanje povečanja produktivnosti s programom CodeWhisperer

»Motnje so stalen izziv med kodiranjem, zlasti ko je treba preklopiti kontekst, da poiščete vzorce kode in dokumentacijo na spletu. Amazon CodeWhisperer me osredotoča na kodo, tako da samodejno ponudi koristne predloge, ko jih potrebujem, tako da mi nikoli ni treba zapustiti urejevalnika.«

– Ryan Grove, zaposleni programski inženir pri SmugMug.

»Navdušeni smo nad sodelovanjem z AWS pri uvajanju Amazon CodeWhisperer na platformo IntelliJ. Pri JetBrains si prizadevamo, da bi bil razvoj programske opreme gladka in prijetna izkušnja. Razpoložljivost vtičnika za naša orodja bo razvijalcem pomagala ostati osredotočeni na njihov IDE in zmanjšala potrebo po iskanju in prilagajanju izrezkov kode iz spleta. Od danes naprej lahko uporabniki IntelliJ IDEA, PyCharm in WebStorm začnejo delati z Amazon CodeWhisperer neposredno v svojem IDE-ju, v bližnji prihodnosti pa bo podprtih še več IDE-jev.«

– Max Shafirov, izvršni direktor JetBrains.

Začetek

V obdobju predogleda je CodeWhisperer na voljo vsem razvijalcem po vsem svetu brezplačno. Za dostop do storitve v predogledu se pridružite čakalni listi do vpišeš. Za več informacij o storitvi obiščite Amazon Code Whisperer.


O avtorjih

Predstavljamo Amazon CodeWhisperer, spremljevalca kodiranja PlatoBlockchain Data Intelligence, ki ga poganja ML. Navpično iskanje. Ai.Ankur Desai je glavni produktni vodja v skupini AWS AI Services.

Predstavljamo Amazon CodeWhisperer, spremljevalca kodiranja PlatoBlockchain Data Intelligence, ki ga poganja ML. Navpično iskanje. Ai.Atul Deo je direktor produktnega upravljanja pri ekipi AWS AI Services.

Časovni žig:

Več od Strojno učenje AWS