Sauf si vous vivez dans une grotte, sur une planète sans ordinateur ni télévision, le terme ChatGPT doit maintenant résonner à vos oreilles comme le dernier jouet à la mode.
Après avoir fait des ravages considérables dans le domaine du traitement du langage, de l'imagerie et de nombreux autres domaines, le Deep Learning est en train de bouleverser durablement notre quotidien avec le nouveau cycle de la révolution : l'IA générative. Aujourd'hui, j'aimerais aborder avec vous plusieurs points. En commençant par la manière dont je perçois la recherche académique sur l'IA générative, j'aimerais ensuite mettre en avant un outil qui, je pense, est en train de devenir incontournable pour nos usages : Copilot. Enfin, pour ouvrir la discussion, j'aimerais évoquer avec vous tous les usages amusants que nous pourrions faire de ces outils et que j'ai hâte de voir se concrétiser.
Petit disclaimer habituel : ces derniers mois, j'ai publié sur ce blog de nombreux articles d'opinion. Comme à chaque fois, ces mots ne reflètent que ma pensée à un instant T. Je ne suis ni Dieu, ni un grand maître de la connaissance. Simplement une personne curieuse qui aime partager le peu de savoir qu'elle accumule. De plus, je me considère comme relativement débutant dans le domaine de l'IA générative, n'ayant pas autant de temps que je le souhaiterais pour en exploiter pleinement le potentiel.
Opinion divergente : la recherche est à la traîne sur le genIA
En janvier, j'assistais à la journée sur l'IA générative et la bio-informatique. Après lecture des résultats du sondage qui en a découlé, j'aimerais partager une opinion radicalement différente de la majorité des participants. Pourquoi ? Car je ne faisais pas partie de cette majorité, loin de là.
Quand on observe les questions que se posent les chercheurs aujourd'hui, on constate que la principale est : comment mes étudiants vont-ils l'utiliser ? Une caricature un peu facile et de mauvaise foi résumerait cette interrogation à : « Mes étudiants vont-ils devenir idiots à force d'utiliser un outil qui ne les oblige plus à réfléchir ? » Et c'est ainsi qu'une conférence sur l'IA générative et la bio-informatique a fini par se concentrer sur toutes les questions que cela soulève dans l'enseignement. Certes, ces questions sont pertinentes car il n'est ni possible (ni souhaitable) d'interdire l'usage d'un nouvel outil. Mais est-ce vraiment le seul sujet qui mérite d'être abordé ? J'ai eu le sentiment, malheureusement, que comme l'accès à ces technologies est souvent payant, les chercheurs ont eu des difficultés à s'y essayer et se sont pour la plupart contentés de tester la version gratuite de ChatGPT sans penser aux formidables possibilités qui s'ouvrent peu à peu à nous et qui vont transformer nos pratiques. De mon point de vue, en tant que personne ayant eu la chance d'avoir rapidement accès à ces outils, j'étais frustré de voir des personnes que je considérais comme éclairées en train de rattraper leur retard sur le sujet.
Aujourd'hui, les grandes entreprises se sont toutes mises massivement à utiliser ChatGPT et les autres outils d'IA générative. Elles l'ont probablement fait par peur de perdre un avantage concurrentiel face à une telle puissance. Il est intéressant de noter que la connaissance de l'IA générative figure désormais parmi les compétences requises pour de nombreux postes en dehors du milieu académique. Ces outils s'imposent comme une nouvelle norme, une compétence à maîtriser.
Copilot : pourquoi l'utiliser et pas chatGPT ?
Actuellement, si vous suivez de près les EXCELLENTES chaînes de vulgarisation sur l'IA générative, vous avez sans doute remarqué l'émergence d'une multitude d'outils. Parmi ceux-ci, j'aimerais aujourd'hui vous parler de Copilot, la version « code » de ChatGPT proposée par GitHub. Cet outil se veut être, comme son nom l'indique, un copilote pour nous assister dans nos tâches de programmation. Le principal avantage qu'il présente par rapport à ChatGPT est qu'il est conçu pour coder sans avoir besoin d'un "prompt" pour l'orienter mais se base principalement sur le code qu'on lui donne. Les prompts sont en fait déjà pré-écris dans les différentes options de bases pour répondre à des usages communs : commenter un code, le comprendre.
J'apprécie beaucoup utiliser ChatGPT pour éviter de solliciter constamment mes collègues pour des questions triviales. La méthode du canard en plastique étant un de mes besoins principaux au quotidien, il devient mon premier interlocuteur quand j'ai du mal à poser un problème. Cependant, il faut reconnaître que Copilot va encore plus loin. Pour l'utiliser, il est nécessaire de posséder un compte GitHub et de payer pour cette extension (ce qui peut être un frein pour la recherche de rajouter 10 euros de facture mensuelle par personne, effectivement…). Ensuite, la seconde étape consiste à l'intégrer à un éditeur de code qui le supporte que tel que Visual Studio Code. Après avoir installé l'extension Copilot sur cet éditeur, vous êtes prêt à l'utiliser.
Voyons ensemble les trois fonctionnalités principales. Pour des raisons évidentes de confidentialité liées à mon travail actuel, je vais illustrer mon propos avec des exemples tirés au hasard dans mes vieux codes.
- Comprendre le code : Oh Léopold du passé, toi qui a écrit un bout de code vachement bien il y a 2 ans… mais… il fait quoi déjà ? Pourquoi j'ai écris ces lignes ? Oh toi Léopold qui a la flemme et prend un code de quelqu'un d'autre… mais pourquoi il a écrit ça… à quoi sa sert ?
Vous vous reconnaissez dans cet exemple ? Dans ce cas, depuis l'invite de code, il suffit de cliquer sur 'explique moi ce code' et lui demander très poliment, et hop, il génère une explication très claire. Cette fonctionnalité semble être redoutable même dans les pires cas de code pas clair donc TRÈS utile !
- Commenter le code : MAIS QUI A COMMENTÉ AUSSI MAL CE CODE ? Ah oui moi. Bon le code marche, est-ce que j'ai vraiment envie de passer du temps à le commenter ? Aller, demandons à Copilot de le faire. Pour ce coup il suffit de cliquer sur le bouton 'générer les documents'.
Et bim, une jolie signature de fonction toute propre ce qui est soyons sincère, le minimum syndical qui manquait dans la publication précédente.
Voila ce que mon bon Copilot a ajouté au début de ma fonction :
1 2 3 4 5 6 |
""" Size of windows in contact probability generator Little bit tricky for complexity optimisation VdT : index of every bin in Vs Vs : Size of every probability bloc """ |
Ou comment ne plus passer de temps à écrire toutes les signatures des fonctions de tes codes ! Le faire sur un fichier de code entier pour toute les fonctions marche pour les plus curieux !
- Coder à sa place : Autre cas d'usage très simple. Aujourd'hui j'ai une fonction simple à écrire mais j'ai alors vraiment, mais vraiment pas envie d'écrire comme un robot les 10 lignes de codes que je dois écrire.
Je vais alors écrire la signature de ma fonction un petit peu rapidement comme ceci, ouvrir le Copilot et lui dire 'écris moi le code'. Et là, magie la fonction est écrite.
Alors oui j'ai écris un exemple assez simple et pas forcement plus pertinent, mais il était largement suffisant montrer le potentiel de l'outil.
Vous l'aurez compris, je montre ici des usages simples qui sont principalement un gain de temps considérable sur des petites tâches du quotidien que nous avons tous effectuées pendant des dizaines d'heures. Copilot est vendu tel quel : il ne fera pas votre travail, mais il vous rendra plus productif dans ce que vous savez faire. À mon sens, il faut utiliser ces outils dans cette direction : simplifier le travail et les utiliser comme des assistants pour les parties les plus simples. Demander à chatGPT d'écrire un code complexe fonctionnera dans la plupart des cas, mais si vous n'en comprenez pas un traître mot, cela finira par devenir un obstacle pour vous. Avec Copilot, le risque est le même, c'est pourquoi il est essentiel de savoir faire ou reproduire tout ce qu'il aurait pu écrire (comme tout chef de projet quand il demande du renfort hum…). La seule différence est que, pour le faire, vous n'aurez pas à lire toutes les pages de documentation que vous avez oubliées.
Le futur est en marche, alors marchons !
Oh mes très chers amis bioinformaticiens, entendez mon appel. Quand aurons-nous un chatGPT entraîné sur l'ensemble des réseaux métaboliques de l'univers ? Pour ceux qui ne le savent pas, ces IA sont très fortes pour produire du texte cohérent avec un contexte donné. Il est donc possible de donner 'à manger' à un chatGPT un gros ensemble de bibliographie et lui en demander un résumé. En général, ça fait à peu près le job (même si parfois ça te dit qu'un chercheur X ou Y est un expert d'un domaine… qu'il ne connaît pas). Au-delà des problèmes d'hallucinations qui sont un sujet entier, on comprend assez vite que ces modèles peuvent accumuler une grande quantité de connaissances et nous servir de base de réflexion moyennement pas trop mauvaise (et surtout, plus rapide qu'un mois à lire des papiers).
On pourrait alors lui demander : "J'ai vu que dans mon analyse RNA-seq ce gène ressort, a‑t-il du sens ?", "Si je supprime ce gène de mon analyse, que se passera-t-il ?". Où sont les rêves de tout ce que nous pourrons construire pour comprendre le lien entre différentes omiques ?
À quand des conférences où l'on verra toutes les données publiques mises dans des chatGPT demander des explications sur le sens d'une molécule X ou Y dans un collègue de poche ? (Oui, je veux mon biologiste de poche plutôt que parler a un être humain casse pied plein de savoir). Si on met toutes les publications scientifiques sur la chromatine dans un chatGPT, aura-t-on enfin quelqu'un qui comprend quelque chose à ma protéine d'intérêt ?
Si aujourd'hui nous en sommes collectivement à comprendre comment l'usage de chatGPT et de ses concurrents impacte notre quotidien, à quand un usage ultra massif dans nos questions scientifiques ? Voilà ce que j'aurais rêvé au début de ma raillerie de jeune vieux grincheux impatient sur l'état de notre communauté.
Qu'on soit très clair, je n'écris pas cet article pour critiquer qui que ce soit. Ces lignes ne sont que l'expression d'un ressenti, celui de ma peur. Aujourd'hui, je pense que le train est en marche, que les plus curieux et les plus anxieux ont pris ce train. Mais demain, ceux qui n'ont pas pris ce train auront alors de sérieuses difficultés. Je ne souhaite qu'une chose, encourager la communauté à faire ce bond et prendre pleinement conscience que les outils mis à notre disposition deviennent une nouvelle norme.
Alors à tous ceux qui ont un jour prêché qu'internet ne serait pas une révolution et à tous ceux qui se sont jetés dedans à corps perdu, je vous souhaite une bonne évolution professionnelle.
P.S. : Cet article, comme tous mes autres articles depuis 1 an, a été relu en premier par chatGPT pour corriger l'orthographe et apaiser les supers relecteurs de cette charge 🙂
Merci aux relecteurs : Ista, Pierre Marijon, Azerin
Merci a notre chère admin : Zazo0o
Laisser un commentaire