Zmogljivosti klepetalnih robotov z umetno inteligenco hitro rastejo. Toda ali lahko že kodirajo in kateri je boljši pri nalogi?

Ko je Google lansiral Bard, svoj odgovor na OpenAI's ChatGPT, mu je manjkala funkcija, ki je bila zelo priljubljena pri uporabnikih ChatGPT: možnost pisanja kode. Vendar pa je Google po množičnem povpraševanju dal Bardu priložnost, saj mu je omogočil pisanje kode v desetinah programskih jezikov.

Google je od takrat glasno govoril o tem, kako dobro zna Bard pisati in odpravljati kodo, toda kako je v primerjavi s fenomenalnim ChatGPT? Pa ugotovimo.

ChatGPT vs. Bard: Jezikovna podpora

Uradno lahko Googlov Bard deluje s približno 20 programskimi jeziki. Ti so večinoma sestavljeni iz priljubljenih, kot so Typescript, Python, C++, Go, Java, JavaScript in PHP. Še vedno lahko obravnava manj priljubljene možnosti, kot sta Perl in Scala, vendar ni nujno tako učinkovit.

ChatGPT na drugi strani nima uradnega seznama podprtih jezikov. Klepetalni robot zmore večino tega, kar zmore Bard, in na desetine več. ChatGPT lahko piše, odpravlja in razlaga kodo tako v novejših, priljubljenih programskih jezikih kot v

instagram viewer
manj priljubljeni podedovani jeziki, kot sta Fortran, Pascal, BASIC in COBOL.

Vendar podpora ne pomeni nujno strokovnosti. Preizkusili smo nekaj preprostih nalog v izbranih jezikih, kot so PHP, JavaScript, BASIC in C++. Oba, Bard in ChatGPT, sta bila sposobna zagotoviti priljubljene programske jezike, vendar je samo ChatGPT uspel prepričljivo združiti programe v starejših jezikih. Kar zadeva jezikovno podporo, dajemo zmago ChatGPT.

ChatGPT vs. Bard: Natančnost in kakovost kode

Recimo, da prosite ChatGPT ali Bard, naj ustvari del kode, ki nekaj naredi, in v nekaj sekundah izpljune na desetine vrstic kode. Enostavno, kajne? Toda kako pogosto bo ta koda delovala? Recimo, da koda deluje; kako dobra je ta koda?

Za primerjavo natančnosti in kakovosti kode, ki sta jo ustvarila oba klepetalna robota z umetno inteligenco, smo obema dali nekaj nalog kodiranja, ki jih morata opraviti. Bard in ChatGPT smo prosili, naj ustvarita preprosto aplikacijo za seznam opravil z uporabo HTML, CSS in JavaScript. Po kopiranju in lepljenju in ogledu ustvarjene kode v brskalniku je bila aplikacija ChatGPT videti takole:

Z različico ChatGPT lahko dodate novo opravilo, izbrišete opravilo ali označite opravilo kot dokončano. Googlovemu Bardu je uspelo ustvariti tudi funkcionalno aplikacijo za seznam opravil. Vendar pa lahko samo dodate nalogo, ne da bi jo lahko izbrisali ali označili kot dokončano. Tudi Bardov vmesnik se je zdel manj privlačen; takole je izgledalo:

Ponovili smo preizkus, tokrat pa smo oba klepetalna robota pozvali, naj ponovno ustvarita kartice časovne premice Twitterja. Tukaj je rezultat ChatGPT:

In tukaj je, kaj je ustvaril Googlov Bard:

Oba rezultata imata svoje prednosti in slabosti. Izbrali bi Bardove rezultate, če bi imeli gumbe za všečkanje, ponovno tvitanje in komentiranje. Vendar jih je nenavadno izpustil, zato vam bomo dovolili, da se odločite, kateri je boljši. Seveda kakovost kode ni le estetika tega, kar proizvede.

Pri analizi kode, ki sta jo ustvarila oba chatbota, se je zdelo, da je Bardov bolj objektno usmerjen, medtem ko je bil ChatGPT bolj proceduralen. Naša izbira programskega jezika bi lahko vplivala na to, vendar se je zdelo, da ChatGPT piše čistejšo kodo, ko je to potrebno. Prav tako se nagiba k ustvarjanju popolnejših rešitev, ki običajno vodijo do več vrstic kode.

Kar zadeva kakovost ustvarjene kode, ta krog podelimo ChatGPT.

ChatGPT vs. Bard: Odpravljanje napak in odkrivanje napak

Napake in hrošči so kot uganke, ki jih programerji radi sovražijo. Obnoreli vas bodo, vendar je njihovo popravljanje zelo zadovoljivo. Ko torej naletite na hrošče v kodi, če za pomoč pokličete Bard ali ChatGPT? Za odločitev smo obema klepetalnima robotoma z umetno inteligenco dali rešiti dve težavi z odpravljanjem napak.

Prvič, oba chatbota smo pozvali, naj rešita logično napako v kodi PHP. Znano je, da je logične napake težje opaziti, ker koda, ki jih vsebuje, ni videti napačna, ampak le ne naredi, kar je načrtoval programer.

Koda na tem posnetku zaslona se izvaja, vendar ne deluje. Ali lahko opazite logično napako? Za pomoč smo prosili Googlovega Barda in na žalost klepetalni robot ni mogel odkriti logične napake v kodi. Zanimivo je, da ima Googlov Bard običajno tri poskuse osnutka za rešitev problema, preverili smo vse tri osnutke in vsi so bili napačni.

Nato smo za pomoč prosili ChatGPT, ki je takoj odkril logično napako.

Skript PHP ni imel sintaksnih napak, vendar je logika v je Odd() funkcija je bila nazaj. Če želite ugotoviti, ali je število liho, običajno preverite, ali ima ostanek po deljenju z 2. Če se, je liho število.

Medtem ko Bard še zdaleč ni odkril te napake, jo je ChatGPT odkril v prvem poskusu. Poskusili smo še s štirimi logičnimi napakami in Bard je napako lahko odkril samo v enem primeru, medtem ko je ChatGPT dosledno zagotavljal. Po preklopu na kodo s sintaksnimi napakami je Googlov Bard uspel slediti in jih prepoznal v skoraj vseh predstavljenih vzorcih.

Googlov Bard je razmeroma dober pri odpravljanju napak, vendar bomo to zmago znova dali ChatGPT.

ChatGPT vs. Bard: Zavedanje konteksta

Eden največjih izzivov pri uporabi klepetalnih robotov AI za kodiranje je njihovo razmeroma omejeno zavedanje o kontekstu. Od chatbota zahtevate, da napiše kodo, nato še nekaj... ob tem popolnoma pozabi, da je naslednja stvar, ki jo gradi, del istega projekta.

Recimo, da izdelujete spletno aplikacijo s klepetalnim robotom AI. Naročite mu, naj napiše kodo za vašo stran HTML za registracijo in prijavo, in to naredi odlično. In potem, ko nadaljujete z gradnjo, od chatbota zahtevate, da ustvari skript na strani strežnika za obdelavo logike prijave. To je preprosta naloga, a zaradi omejenega poznavanja konteksta se lahko konča z generiranjem prijavnega skripta z novimi spremenljivkami in poimenovanjem, ki se ne ujemajo s preostalo kodo.

Torej, kateri chatbot je boljši pri ohranjanju zavedanja konteksta? Obema orodjema smo dali isto programsko nalogo: aplikacijo za klepet, za katero vemo, da jo ChatGPT že lahko zgradi.

Na žalost Bard preprosto ni mogel dokončati aplikacije, ker je izgubil sled o kontekstu projekta, potem ko je nekaj časa miroval. Kljub temu, da zanj veljajo enaki pogoji, je ChatGPT dokončal aplikacijo. Še enkrat, v smislu zavedanja konteksta, ga damo ChatGPT.

ChatGPT vs. Bard: Reševanje problemov

Na tej točki Googlov Bard manjka v mnogih pogledih. Toda ali lahko končno doseže zmago? Preizkusimo njegove sposobnosti reševanja problemov. Včasih imate preprosto težavo, vendar niste prepričani, kako jo programsko predstaviti, kaj šele, kako jo rešiti.

V takih situacijah so lahko klepetalni roboti z umetno inteligenco, kot sta Bard in ChatGPT, zelo priročni. Toda kateri chatbot ima boljše sposobnosti reševanja težav? Oba smo prosili, da "napišite kodo JavaScript, ki šteje, kolikokrat se določena beseda pojavi v besedilu."

Bard se je odzval z delujočo kodo, čeprav ne uspe, ko so ločila blizu besede ali se beseda pojavi v različnih velikih in malih črkah.

Enako težavo smo sprožili pri ChatGPT in tukaj je rezultat:

Koda ChatGPT uporablja bolj robusten in natančen pristop k štetju pojavitev besed v besedilu. Upošteva meje besed in občutljivost na velike in male črke, pravilno obravnava ločila in daje bolj zanesljive rezultate. Še enkrat, kar zadeva reševanje problemov, ga damo ChatGPT.

Ker je Google Bard precej izgubil pri vseh meritvah, ki smo jih uporabili za primerjavo, smo se odločili, da mu damo priložnost za odkup. Vprašali smo chatbota "Kateri je boljši pri kodiranju? ChatGPT ali Google Bard?"

Medtem ko so se strinjali, da je ChatGPT bolj ustvarjalen, je Bard dejal, da bo njegov konkurent bolj verjetno delal napake in da je ChatGPT ustvaril kodo, ki je bila manj učinkovita, ni dobro strukturirana in je bila na splošno manjša zanesljiv. Ne strinjamo se!

ChatGPT je v lastni ligi

Googlov Bard je bil deležen velikega navdušenja, zato bo morda presenetljivo videti, koliko manjka v primerjavi s ChatGPT. Čeprav je ChatGPT očitno imel prednost, bi lahko mislili, da bi mu Googlovi ogromni viri pomagali zmanjšati to prednost.

Kljub tem rezultatom bi bilo nespametno odpisati Bard kot pomoč pri programiranju. Čeprav ni tako močan kot ChatGPT, ima Bard še vedno veliko moč in se hitro razvija. Glede na Googlove vire je pojav Barda kot vrednega tekmeca zagotovo vprašanje časa.