De mogelijkheden van AI-chatbots groeien snel. Maar kunnen ze al coderen, en wie is beter in de taak?

Toen Google Bard lanceerde, het antwoord op OpenAI's ChatGPT, miste het een functie die behoorlijk populair was bij ChatGPT-gebruikers: de mogelijkheid om code te schrijven. Op veler verzoek gaf Google Bard echter een schot in de arm, waardoor het code kon schrijven in tientallen programmeertalen.

Google heeft zich sindsdien uitgesproken over hoe goed Bard code kan schrijven en debuggen, maar hoe verhoudt het zich tot de fenomenale ChatGPT? Dat zoeken we uit.

ChatGPT vs. Bard: Taalondersteuning

Officieel kan Google's Bard werken met ongeveer 20 programmeertalen. Deze bestaan ​​voornamelijk uit populaire zoals Typescript, Python, C++, Go, Java, JavaScript en PHP. Het kan nog steeds overweg met minder populaire opties zoals Perl en Scala, maar is niet noodzakelijk even efficiënt.

ChatGPT daarentegen heeft geen officiële lijst met ondersteunde talen. De chatbot kan het meeste aan van wat Bard aankan en tientallen meer. ChatGPT kan code schrijven, debuggen en uitleggen in zowel nieuwere, populaire programmeertalen als

instagram viewer
minder populaire, verouderde talen zoals Fortran, Pascal, BASIC en COBOL.

Ondersteuning betekent echter niet noodzakelijkerwijs vaardigheid. We hebben enkele eenvoudige taken uitgeprobeerd in geselecteerde talen zoals PHP, JavaScript, BASIC en C++. Zowel Bard als ChatGPT waren in staat om de populaire programmeertalen waar te maken, maar alleen ChatGPT was in staat om op overtuigende wijze programma's in oudere talen aan elkaar te rijgen. Dus wat betreft taalondersteuning geven we de overwinning aan ChatGPT.

ChatGPT vs. Bard: nauwkeurigheid en codekwaliteit

Stel dat u ChatGPT of Bard vraagt ​​om een ​​stukje code te genereren dat iets doet, en het spuugt binnen enkele seconden tientallen regels code uit. Makkelijk, toch? Maar hoe vaak zal die code werken? Laten we zeggen dat de code werkt; hoe goed is die code?

Om de nauwkeurigheid en kwaliteit van de door de twee AI-chatbots gegenereerde code te vergelijken, hebben we ze allebei een aantal codeertaken gegeven om uit te voeren. We hebben Bard en ChatGPT gevraagd om een ​​eenvoudige takenlijst-app te genereren met behulp van HTML, CSS en JavaScript. Na het kopiëren en plakken en bekijken van de gegenereerde code in een browser, zag de app van ChatGPT er als volgt uit:

Met de versie van ChatGPT kunt u een nieuwe taak toevoegen, een taak verwijderen of een taak als voltooid markeren. Google's Bard kon ook een functionele takenlijst-app genereren. U kunt echter alleen een taak toevoegen, zonder de mogelijkheid om deze te verwijderen of als voltooid te markeren. De interface van Bard leek ook minder aantrekkelijk; zo zag het eruit:

We herhaalden de test, deze keer vroegen we beide chatbots om Twitter-tijdlijnkaarten opnieuw te maken. Dit is het resultaat van ChatGPT:

En dit is wat Google's Bard produceerde:

Beide resultaten hebben hun voor- en nadelen. We zouden voor de resultaten van Bard zijn gegaan als het de like-, retweet- en commentaarknoppen had gehad. Vreemd genoeg heeft het die echter weggelaten, dus we laten u beslissen welke beter is. Natuurlijk gaat de kwaliteit van code niet alleen over de esthetiek van wat het produceert.

Bij het analyseren van de code die door beide chatbots werd gegenereerd, leek die van Bard meer objectgericht te zijn, terwijl die van ChatGPT meer procedureel was. Onze keuze van programmeertaal zou dit kunnen beïnvloeden, maar ChatGPT leek schonere code te schrijven wanneer dat nodig was. Het heeft ook de neiging om meer complete oplossingen te genereren, wat meestal leidt tot meer regels code.

Wat de kwaliteit van de gegenereerde code betreft, gunnen we deze ronde aan ChatGPT.

ChatGPT vs. Bard: foutopsporing en foutdetectie

Fouten en bugs zijn als puzzels die programmeurs graag haten. Ze zullen je gek maken, maar ze repareren is best bevredigend. Dus als je bugs tegenkomt in je code, moet u een beroep doen op Bard of ChatGPT voor hulp? Om te beslissen, hebben we beide AI-chatbots twee foutopsporingsproblemen gegeven om op te lossen.

Ten eerste hebben we beide chatbots gevraagd een logische fout in een PHP-code op te lossen. Logische fouten zijn notoir moeilijker te herkennen omdat de code die ze bevat er niet verkeerd uitziet, het doet gewoon niet wat de programmeur bedoelde.

De code in deze schermafbeelding wordt uitgevoerd, maar werkt niet. Kun jij de logische fout ontdekken? We hebben Google's Bard om hulp gevraagd en helaas kon de chatbot de logische fout in de code niet ontdekken. Interessant is dat de Bard van Google doorgaans drie conceptpogingen heeft om een ​​probleem op te lossen, we hebben alle drie de concepten gecontroleerd en ze waren allemaal fout.

Vervolgens hebben we ChatGPT om hulp gevraagd en het heeft meteen de logische fout opgespoord.

Het PHP-script had geen syntaxisfouten, maar de logica in het is vreemd() functie was achterhaald. Om te zien of een getal oneven is, controleer je meestal of het een rest heeft na deling door 2. Als dat zo is, is het een oneven getal.

Hoewel Bard deze bug bij lange na niet identificeerde, pikte ChatGPT het bij de eerste poging op. We hebben nog vier logische fouten geprobeerd en Bard kon de fout maar in één instantie opsporen, terwijl ChatGPT consistent leverde. Nadat hij was overgeschakeld op code met syntaxisfouten, kon Google's Bard het bijhouden en identificeerde ze in bijna alle gepresenteerde voorbeelden.

Google's Bard is relatief goed in debuggen, maar we zullen deze overwinning opnieuw aan ChatGPT geven.

ChatGPT vs. Bard: Contextbewustzijn

Een van de grootste uitdagingen bij het gebruik van AI-chatbots voor codering is hun relatief beperkte contextbewustzijn. Je vraagt ​​de chatbot om wat code te schrijven, en dan nog wat... langs de lijn vergeet het volledig dat het volgende dat het bouwt deel uitmaakt van hetzelfde project.

Stel dat u een webapp bouwt met een AI-chatbot. U vertelt het om code te schrijven voor uw registratie en login HTML-pagina, en het doet het perfect. En dan, terwijl je doorgaat met bouwen, vraag je de chatbot om een ​​server-side script te genereren om de inloglogica af te handelen. Dit is een eenvoudige taak, maar vanwege een beperkt contextbewustzijn kan het uiteindelijk leiden tot het genereren van een inlogscript met nieuwe variabelen en naamgevingsconventies die niet overeenkomen met de rest van de code.

Dus, welke chatbot is beter in het behouden van contextbewustzijn? We hebben beide tools dezelfde programmeertaak gegeven: een chat-app waarvan we weten dat ChatGPT deze al kan bouwen.

Helaas kon Bard de app gewoon niet voltooien omdat hij de context van het project uit het oog verloor nadat hij enige tijd inactief was geweest. Ondanks dezelfde voorwaarden, heeft ChatGPT de app voltooid. Nogmaals, in termen van contextbewustzijn geven we het aan ChatGPT.

ChatGPT vs. Bard: probleemoplossend

Op dit moment ontbreekt de Bard van Google op veel manieren. Maar kan het eindelijk een overwinning scoren? Laten we zijn probleemoplossend vermogen testen. Soms heb je gewoon een probleem, maar weet je niet zeker hoe je het programmatisch moet weergeven, laat staan ​​hoe je het moet oplossen.

In dit soort situaties kunnen AI-chatbots zoals Bard en ChatGPT erg van pas komen. Maar welke chatbot heeft een beter probleemoplossend vermogen? We hebben ze allebei gevraagd om "schrijf een JavaScript-code die telt hoe vaak een bepaald woord in een tekst voorkomt."

Bard reageerde met werkende code, hoewel het niet lukt als leestekens dicht bij een woord staan ​​of als het woord in verschillende gevallen voorkomt.

We gooiden hetzelfde probleem bij ChatGPT en hier is het resultaat:

De code van ChatGPT hanteert een robuustere en nauwkeurigere benadering voor het tellen van woordvermeldingen in een tekst. Het houdt rekening met woordgrenzen en hoofdlettergevoeligheid, verwerkt interpunctie op de juiste manier en geeft betrouwbaardere resultaten. Nogmaals, in termen van probleemoplossing geven we het aan ChatGPT.

Aangezien Google Bard vrijwel verloren is gegaan in elke statistiek die we ter vergelijking hebben gebruikt, hebben we besloten om het een kans op inwisseling te geven. We vroegen het aan de chatbot "Wat is beter in coderen? ChatGPT of Google Bard?"

Hoewel het bedrijf het ermee eens was dat ChatGPT creatiever was, zei Bard dat de kans groter was dat zijn concurrent fouten maakte en dat ChatGPT code produceerde die minder efficiënt was, niet goed gestructureerd en over het algemeen minder was betrouwbaar. We moeten het oneens zijn!

ChatGPT is een klasse apart

Bard van Google heeft veel gehyped, dus het kan een verrassing zijn om te zien hoeveel het mist in vergelijking met ChatGPT. Hoewel ChatGPT duidelijk een voorsprong had, zou je kunnen denken dat de enorme middelen van Google zouden helpen om dat voordeel uit te hollen.

Ondanks deze resultaten zou het onverstandig zijn om Bard af te schrijven als programmeerhulpmiddel. Hoewel het niet zo krachtig is als ChatGPT, heeft Bard nog steeds een flinke klap en evolueert hij in een snel tempo. Gezien de middelen van Google is de opkomst van Bard als een waardige rivaal zeker een kwestie van tijd.