Dans le cadre de ma recherche d'emploi, je découvre un nouveau langage : Python.
En tant qu'heureux propriétaire d'un cerveau de primate d'une part, je suis bien conscient du pouvoir que la gamification , dans le cadre de l'apprentissage, peut avoir sur moi.
En tant que technophile, je ne pouvais pas manquer l'émergence des outils d'intelligence artificielle, notamment le phénomène d'IA conversationnelle qu'est ChatGPT, développé par OpenAI.
Comment ChatGPT peut-il m'aider à découvrir Python tout en rendant l'expérience la plus ludique possible ?
Bien que puissant, ChatGPT l’est encore plus lorsqu’il est soumis à des jeux de rôle . J'ai donc défini comment je souhaite que ChatGPT se charge de me former à Python, en suivant un certain formalisme pour lui donner le plus de contexte possible :
Au départ, ChatGPT m'a proposé une série d'« exercices » ; même si ça s'appelle ainsi, ce n'est rien d'autre que des extraits de code me permettant d'appréhender les bases de la syntaxe Python. Comme convenu, il m'a fourni de la documentation, m'a donné de l'expérience pour que je puisse monter de niveau et a listé les compétences acquises lors de cette première phase.
Ayant atteint le niveau 7, j'ai demandé à ChatGPT de me proposer un défi plus conséquent que la simple copie de code dans mon IDE.
Remarquez à quel point OpenAI doute de ma gentillesse lorsque je demande à ChatGPT de donner un coup de pied à des monstres laids.
Après avoir été félicité pour ma perspicacité face à ce premier patron, que j'ai facilement balayé, puis doté d'un nouvel "exercice" de copie de code, j'ai dû faire face à mes premiers vrais défis .
Peu impressionné par l’ennemi et aidé par une bonne documentation , j’ai naturellement massacré la créature au souffle chaud .
C’est là que l’apprentissage via l’IA conversationnelle prend tout son sens. ChatGPT est capable de proposer une solution alternative tout en expliquant la différence entre les deux propositions. Nous verrons un peu plus tard qu'il est capable d'être encore plus complet lorsqu'il s'agit d'analyser le code que je propose.
L’autre avantage est la facilité avec laquelle vous pouvez « façonner » la conversation. De cette façon, j’ai pu obtenir un artefact, c’est de la dopamine directement dans les veines .
Ouais, j'ai réclamé, et alors ?!?
Un peu de savoir, ça fait toujours plaisir.
Après une nouvelle série d'exercices/leçons, quelques questions sur l'instruction « avec », un petit défi sur la façon de lever des exceptions, un peu de lecture d'articles et beaucoup de mise à niveau ; J'ai demandé à affronter un nouveau monstre . ChatGPT m'a proposé un défi en plusieurs étapes (une succession de petits problèmes algorithmiques), avec la promesse d'un coffre rempli de butin bien mérité :
Encore une fois, ChatGPT apporte une correction de qualité et est suffisamment complète pour démontrer les avantages de sa solution par rapport à la mienne.
En plus, j'ai une amulette vraiment cool !
A ce stade de ma découverte de Python avec ChatGPT, j'ai pensé que ce serait une bonne idée de vérifier que j'avais bien acquis les notions vues précédemment. J'ai donc demandé à l'IA de me générer un QCM, que j'ai inclus dans une rencontre avec un PNJ (personnage non-joueur), avec la promesse d'être récompensé par un familier si je réussissais.
Ainsi, après avoir répondu aux questions d'un paysan étrange mais intelligent (sans doute Gandalf infiltré), j'ai pu choisir un compagnon pour la suite de mon aventure.
Conscient que j'ai parfois du mal à factoriser et optimiser mon code, j'ai choisi de mener mes prochains combats aux côtés du Shadowstalker. La bête dispose de tout un arsenal de techniques qui me permettront d'être plus efficace à l'avenir.
ChatGPT me permet d'appliquer une lecture différente à mon code selon les besoins que j'ai identifiés au préalable ! Ainsi, je peux demander des commentaires spécifiques sans avoir à définir de quel type de retour j’ai besoin.
Voici par exemple la première des techniques appliquées à un problème qui m'a été proposé lors d'une quête plus loin dans mon parcours initiatique : le but du problème était de générer tous les nombres premiers jusqu'au nombre saisi par l'utilisateur.
Ça a du style !
Compte tenu de ce que je savais déjà sur ChatGPT, l’IA a répondu à mes attentes quant à sa capacité à prendre en charge la découverte d’un nouveau langage de programmation.
J’étais cependant très enthousiasmé par sa capacité à apporter une couche de gamification au processus. Voici, sans ordre particulier, une liste des avantages et des inconvénients que j'ai rencontrés au cours de mon expérience :
Avantages:
Rapide et facile à installer.
Adaptable dans le temps.
Aperçu des progrès satisfaisants.
La tradition est ok.
Capacité à corriger un comportement qui ne répond pas à vos attentes.
Possibilité de relancer la dernière contribution ChatGPT si elle ne vous convient pas.
"Wow, ça peut faire ça ?!" effet.
Les inconvénients:
Commet quelques erreurs et inexactitudes : par exemple, la première version du QCM comportait une question à laquelle aucune réponse ne pouvait être donnée.
Nécessite des rappels de temps en temps : "N'oubliez pas de me fournir de la documentation", "distribuez des récompenses en cas de réussite", "vous devez inclure mes progrès dans le savoir général de notre conversation", etc.
Quelques conseils si vous souhaitez essayer cette façon d’apprendre :
J'ai demandé à ChatGPT de me fournir des invites pour générer des images à l'aide de Stable Diffusion .
ChatGPT :
Il n'a pas tort. Qu’en est-il de la gestion des droits d’auteur pour les artistes présents dans les jeux de données utilisés pour entraîner les modèles ? Vaste sujet.
Merci!