Les grands modèles de langage (LLM) tels que ChatGPT et Google Bard peuvent fournir des réponses décentes à certains types de questions, mais ces ordinateurs sont ironiquement assez mauvais en informatique. Google propose une nouvelle solution pour tenter d’amener les modèles de langage à effectuer correctement des tâches simples, comme les mathématiques : demander à l’IA d’écrire un programme.
Google explique que désormais, lorsque vous demandez à Bard d’effectuer une tâche « informatique » comme les mathématiques ou la manipulation de chaînes de caractères. Ainsi, au lieu d’afficher la sortie du modèle de langage, ce dernier écrira un programme, l’exécutera et affichera ensuite la sortie de ce programme à l’utilisateur en guise de réponse.
L’article de blog de Google donne l’exemple suivant : « Reverse the word ‘Lollipop’ for me ». ChatGPT ne répond pas à cette question et fournit la réponse incorrecte « pillopoL », parce que les modèles de langage voient le monde en morceaux de mots, ou « tokens », et qu’ils ne sont tout simplement pas doués pour cela. Voici l’exemple de sortie de Bard :
Il obtient le résultat correct « popilloL », mais le plus intéressant est qu’il inclut également le code python qu’il a écrit pour répondre à la question. C’est intéressant pour les développeurs de voir ce qu’il y a sous le capot, mais c’est probablement le résultat le plus effrayant pour les gens ordinaires. Ce n’est pas non plus très pertinent. Imaginez que Gmail vous montre un bloc de code alors que vous lui demandez simplement de récupérer des e-mails. C’est bizarre.
Google compare un modèle d’IA écrivant un programme à des humains effectuant une longue division, en ce sens qu’il s’agit d’un mode de pensée différent :
Cette approche s’inspire d’une dichotomie bien étudiée de l’intelligence humaine, notamment abordée dans l’ouvrage de Daniel Kahneman intitulé Thinking, Fast and Slow — la séparation entre la pensée du « système 1″ et celle du « système 2″.
La pensée du système 1 est rapide, intuitive et sans effort. Lorsqu’un musicien de jazz improvise sur le champ ou qu’un compositeur tactile pense à un mot et le regarde apparaître à l’écran, ils utilisent le système 1 de pensée.
La pensée du système 2, en revanche, est lente, délibérée et laborieuse. Lorsque vous effectuez une division longue ou que vous apprenez à jouer d’un instrument, vous utilisez le système 2.Dans cette analogie, on peut considérer que les LLM fonctionnent uniquement selon le système 1, c’est-à-dire qu’ils produisent du texte rapidement, mais sans réflexion approfondie. Cela permet d’obtenir des capacités incroyables, mais peut aussi s’avérer insuffisant de manière surprenante. (Imaginez que vous essayez de résoudre un problème mathématique en utilisant uniquement le système 1 : Vous ne pouvez pas vous arrêter pour faire l’arithmétique, vous devez simplement cracher la première réponse qui vous vient à l’esprit). Le calcul traditionnel s’aligne étroitement sur la pensée du système 2 : Il s’agit d’une formule inflexible, mais la bonne séquence d’étapes peut produire des résultats impressionnants, tels que la solution d’une division longue.
Selon Google, cette méthode « d’écriture de code à la volée » sera également utilisée pour des questions telles que : « Quels sont les facteurs premiers de 15 ? », « Quels sont les facteurs premiers de 15 683 615 ? » et « Calculez le taux de croissance de mon épargne ». L’entreprise précise : « Jusqu’à présent, nous avons constaté que cette méthode améliorait d’environ 30 % la précision des réponses de Bard aux problèmes de mots et de mathématiques basés sur le calcul dans nos ensembles de données internes ». Comme d’habitude, Google avertit Bard qu’il « pourrait ne pas répondre correctement » s’il interprétait mal la question ou si, comme nous tous, il écrivait un code qui ne fonctionnait pas du premier coup.