Maison >Périphériques technologiques >IA >ChatGPT vs Gemini : quel chatbot IA est le meilleur en matière de codage ?

ChatGPT vs Gemini : quel chatbot IA est le meilleur en matière de codage ?

Lisa Kudrow
Lisa Kudroworiginal
2024-12-13 16:32:46576parcourir

Résumé

  • ChatGPT offre une prise en charge linguistique supérieure, couvrant une vaste gamme de langues anciennes et nouvelles.
  • ChatGPT offre une précision et une qualité de code supérieures à celles de Gemini pour les tâches de codage.
  • ChatGPT excelle dans le débogage, la détection des erreurs, la connaissance du contexte, la résolution de problèmes et les fonctionnalités globales de programmation.

Si vous êtes bloqué sur un projet de programmation, vous pouvez rechercher un outil pour vous aider à réfléchir à des idées, à écrire du code propre ou à expliquer un concept délicat. Quel chatbot IA choisissez-vous : le Gemini rapide et informatif, ou le ChatGPT complet et puissant ?

Prise en charge linguistique

En matière de prise en charge linguistique, ChatGPT surpasse Gemini en termes d'ampleur et compétence. Bien que Gemini prenne officiellement en charge environ 22 langages de programmation populaires, notamment Python, Go et TypeScript, les capacités linguistiques de ChatGPT sont bien plus étendues.

Contrairement à Gemini, ChatGPT n'a pas de liste officielle des langages pris en charge. Cependant, il peut gérer non seulement les langages populaires pris en charge par Gemini, mais également des dizaines de langages supplémentaires, depuis des langages plus récents comme TypeScript et Go jusqu'aux plus anciens comme Fortran, Pascal et BASIC.

Pour tester leurs capacités linguistiques, J'ai essayé des tâches de codage simples dans des langages comme PHP, JavaScript, BASIC et C . Gemini et ChatGPT ont tous deux bien fonctionné avec les langages populaires, mais seul ChatGPT pouvait enchaîner de manière convaincante des programmes dans des langages plus anciens comme BASIC.

Précision et qualité du code

Vous êtes en retard dans la date limite de votre projet et vous avez besoin d'un code passe-partout. Vous demandez à ChatGPT et Gemini de générer du code pour implémenter cette fonctionnalité, et les deux outils crachent des dizaines de lignes de code. Gain rapide, n'est-ce pas ?

Mais à quel code d'outil pouvez-vous faire confiance pour fournir la fonctionnalité que vous avez demandée ? Pour comparer la précision et la qualité du code généré par les deux chatbots IA, je leur ai confié une tâche de codage simple à accomplir. J'ai demandé à Gemini et ChatGPT de générer une application simple de liste de tâches en utilisant HTML, CSS et JavaScript. Je n'ai fourni aucune introduction ; l'objectif est de voir dans quelle mesure les deux chatbots peuvent fonctionner avec des informations limitées.

ChatGPT (GPT-4o) a produit un code fonctionnel avec une esthétique « assez bonne ». À l'aide du code de ChatGPT, vous pouvez ajouter ou supprimer une tâche. Voici ce que j'ai obtenu après avoir exécuté le résultat de ChatGPT sur le navigateur :

Todo list app by OpenAI's ChatGPT (GPT-4o)

Ensuite, j'ai demandé au Gemini de Google de répéter la même tâche. Gemini a également pu générer une application de liste de tâches fonctionnelle. Vous pouviez également ajouter et supprimer des tâches, mais la conception globale n'était pas aussi attrayante :

Todo list app by Google's Gemini

J'ai effectué un deuxième test, demandant cette fois aux deux chatbots de recréer le flux Twitter (X.com). ChatGPT a produit un flux Twitter de style vintage avec une fonction de tweet fonctionnelle. Je pourrais taper dans la zone de texte, envoyer un tweet et le charger dynamiquement sur la page. Ce n'était pas le flux Twitter que j'espérais, mais étant donné que la plupart des données de formation de ChatGPT sont inondées de code Twitter existant, les résultats sont compréhensibles.

Twitter (X.com) feed clone by ChatGPT-1

Malheureusement, lors de cette série, Gemini de Google n'a pas été en mesure de fournir du code fonctionnel. Il générait des centaines de lignes de code JavaScript, mais il y avait trop d'espaces réservés à remplir avec une logique manquante. Si vous êtes pressé, un code aussi lourd en espaces réservés ne serait pas particulièrement utile, car il nécessiterait tout de même un travail de développement important. Dans de tels cas, il pourrait être plus efficace d'écrire le code à partir de zéro.

J'ai essayé quelques autres tâches de codage de base, et dans tous les cas, la solution de ChatGPT était clairement la meilleure option.

Débogage et détection des erreurs

Les erreurs et les bugs sont comme des énigmes que les programmeurs adorent détester. Ils vous rendront fou, mais les réparer est très satisfaisant. Alors, lorsque vous rencontrez des bugs dans votre code, devriez-vous faire appel à Gemini ou ChatGPT pour obtenir de l'aide ? Cela peut dépendre du type d'erreur que vous essayez d'éviter.

Pour décider, j'ai donné aux deux chatbots IA deux problèmes de débogage à résoudre. Tout d’abord, j’ai invité les deux chatbots à résoudre une erreur logique dans un simple code PHP. Les erreurs logiques sont notoirement plus difficiles à repérer que les erreurs de syntaxe car elles dépendent de l'intention du code :

PHP code with logical error

Le code de cette capture d'écran s'exécute et produit même le bon résultat dans de nombreux cas. Cependant, il comporte plusieurs erreurs logiques qui ne sont pas immédiatement apparentes ; peux-tu les repérer ? J'ai demandé de l'aide à Gemini et, malheureusement, le chatbot n'a pas pu identifier l'erreur logique dans le code :

Gemini fails to spot a logical error

Aucune des trois tentatives de Gemini pour résoudre le problème n’était exacte. J'ai essayé un problème similaire il y a six mois avec le même résultat décevant ; il semble que Gemini ne se soit pas amélioré dans ce domaine.

J'ai ensuite demandé de l'aide à ChatGPT, et il a immédiatement détecté l'erreur logique.

ChatGPT spots logical error in code

Gemini a également réécrit le code pour corriger l'erreur :

ChatGPT rewrites code to fix logical error

Après avoir essayé quelques autres tâches de recherche de bugs et de correction, ChatGPT était clairement meilleur dans son travail. Cependant, les Gémeaux n’étaient pas totalement une cause perdue. Il a été capable de corriger de nombreuses erreurs de syntaxe que je lui ai lancées, mais il a eu du mal avec des erreurs complexes, en particulier des erreurs logiques.

Conscience du contexte

L'un des plus grands défis liés à l'utilisation de chatbots IA pour le codage est leur connaissance du contexte relativement limitée. Ils peuvent être capables de créer des extraits de code distincts pour des tâches bien définies, mais ont du mal à créer la base de code pour un projet plus vaste.

Par exemple, disons que vous créez une application Web avec un chatbot IA. Vous lui dites d’écrire du code pour votre page HTML d’inscription et de connexion, et il le fait parfaitement. Vous demandez ensuite au chatbot de générer un script côté serveur pour gérer la logique de connexion. Il s'agit d'une tâche simple, mais en raison d'une connaissance limitée du contexte, elle pourrait finir par générer un script de connexion avec de nouvelles variables et des conventions de dénomination qui ne correspondent pas au reste du code.

Quel chatbot est le meilleur pour retenir conscience du contexte ? J'ai confié aux deux outils la même tâche de programmation : une application de chat que nous savons que ChatGPT peut déjà créer.

Depuis l'arrivée de GPT-4 Turbo et sa fenêtre contextuelle de 128 Ko, la capacité de ChatGPT à conserver beaucoup plus de contexte, sur une période plus longue, a considérablement augmenté. Lorsque j'ai créé pour la première fois une application de chat avec ChatGPT à l'aide de la fenêtre contextuelle 4k GPT-4, cela s'est déroulé relativement bien avec seulement des incidents mineurs de déviation du contexte.

Recréer le même projet en novembre 2023 avec le 128k GPT-4. Turbo a montré une nette amélioration de la connaissance du contexte. Six mois plus tard, en mai 2024, il n'y a pas eu de changement significatif dans la conscience du contexte, mais pas de détérioration non plus.

Malheureusement, lorsque j'ai essayé pour la première fois Gemini (alors appelé Bard) sur le même projet, il a perdu suivi du contexte du projet et n'a pas réussi à terminer l'application. Plusieurs séries de mises à jour plus tard, j'ai retesté Gemini sur le même projet, et il semble s'être encore détérioré. Donc, encore une fois, en termes de connaissance du contexte, ChatGPT gagne.

Résolution de problèmes

À ce stade, le Gemini de Google manque à bien des égards. Mais peut-il enfin remporter une victoire ? Testons ses capacités à résoudre des problèmes. Parfois, vous avez juste un problème, mais vous ne savez pas comment le représenter par programmation, et encore moins comment le résoudre.

Dans ces situations, les chatbots comme Gemini et ChatGPT peuvent s'avérer utiles. Je leur ai demandé à tous les deux de "Écrire un code JavaScript qui compte combien de fois un mot particulier apparaît dans un texte."

Voici le résultat de Gemini de Google :

Gemini fails to make an optimized Javascript function

Et voici le résultat de ChatGPT :

ChatGPT attempts to create a function to count words in a text segment

Au début, les deux approches semblent assez solides. L'approche des Gémeaux semble même concise. Cependant, le code de ChatGPT adopte une approche plus robuste et plus précise pour compter les occurrences de mots dans un texte. Il prend en compte les limites des mots et la sensibilité à la casse, gère correctement la ponctuation et donne des résultats plus fiables. Encore une fois, ChatGPT est supérieur.

L'approche de ChatGPT divise le texte saisi en mots de manière à pouvoir gérer tous les caractères autres que des mots, comme les signes de ponctuation, et les caractères spéciaux comme séparateurs de mots. Pendant ce temps, les Gémeaux ne considèrent les espaces que comme séparateur. Cette approche peut échouer si le texte contient des signes de ponctuation ou d'autres caractères autres que des mots dans les mots, ou si les mots ne sont pas séparés par des caractères d'espacement.

Depuis que Google Gemini a pratiquement perdu dans chaque métrique que j'ai utilisée pour la comparaison , j'ai décidé de lui donner une chance de rédemption. J'ai demandé au chatbot "Qu'est-ce qui est le meilleur en codage ? ChatGPT ou Gemini ?" Voici sa réponse :

Gemini answers a question about itself

On dirait que c'est quelque chose avec lequel je serais en partie d'accord ! J'ai demandé à ChatGPT ce qu'il pensait de l'évaluation et il a accepté :

ChatGPT agrees with Gemini's assessement of its abilities

Maintenant, même si cela semble tout à fait normal, il y a une tournure intéressante ici. Pendant la majeure partie de l’année dernière, Gemini (à l’époque Bard) a toujours affirmé avec confiance qu’il pouvait produire un meilleur code, qu’il était plus efficace et qu’il faisait moins d’erreurs. Voici une capture d'écran d'un de mes tests en novembre 2023 :

Google Bard boast of being better than ChatGPT

Il semblerait que les Gémeaux soient désormais un peu plus conscient de soi et modeste !

Fonctionnalités de programmation

Ni ChatGPT ni Gemini n'ont de fonctionnalités majeures exclusivement destinées à la programmation. Cependant, les deux chatbots sont dotés de fonctionnalités qui peuvent améliorer considérablement votre expérience de programmation si vous savez comment les utiliser efficacement.

ChatGPT offre une gamme de fonctionnalités qui peuvent rationaliser le processus de programmation lors de l'utilisation du chatbot. Des ajouts utiles tels que Memory et Custom GPT vous permettent de personnaliser ChatGPT pour vos besoins de programmation spécifiques.

Par exemple, la fonctionnalité Custom GPT peut vous aider à créer des mini-versions spécialisées de ChatGPT pour des projets particuliers, en téléchargeant des fichiers pertinents. Cela simplifie grandement les tâches telles que le débogage du code, l’optimisation et l’ajout de nouvelles fonctionnalités. Dans l'ensemble, par rapport à Gemini de Google, ChatGPT inclut davantage de fonctionnalités qui peuvent améliorer votre expérience de programmation.

ChatGPT est dans une ligue à part

Gemini de Google a a bénéficié de beaucoup de battage médiatique, il peut donc être surprenant de voir à quel point il manque par rapport à ChatGPT. Même si ChatGPT avait clairement une longueur d'avance, on pourrait penser que les ressources massives de Google l'aideraient à éroder cet avantage.

Malgré ces résultats, il serait imprudent de considérer Gemini comme une aide à la programmation. Bien qu'il ne soit pas aussi puissant que ChatGPT, Gemini a toujours un impact important et évolue à un rythme rapide.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn