La nouvelle IA de Google peut-elle lire vos fiches techniques à votre place ?

Nous avons vu beaucoup d’outils d’IA ces derniers temps et, bien sûr, nous savons qu’ils ne sont pas vraiment intelligents, mais ils trompent certainement les gens en leur faisant croire qu’ils sont réellement intelligents. Bien entendu, ces programmes ne peuvent choisir que leur formation, et cela dépend beaucoup de ce sur quoi ils sont formés. Lorsque vous utilisez quelque chose comme ChatGPT, par exemple, vous supposez qu’ils l’ont formé sur des données raisonnables. Bien sûr, il peut se tromper de toute façon, mais il existe également le risque qu’il ne sache tout simplement pas de quoi vous parlez. Ce serait comme appeler le service d’assistance de votre entreprise et lui demander où vous avez laissé vos chaussettes : ils ne le savent tout simplement pas.

Nous avons vu des tentatives pour que l’IA « lise » des pages Web ou des documents de votre choix et soit ensuite en mesure de répondre à des questions à leur sujet. La dernière en date vient de Google avec NotebookLM. Il intègre un espace de travail où vous pouvez prendre des notes, poser des questions et fournir des sources. Les sources peuvent être des extraits de texte, des documents de Google Drive ou des fichiers PDF que vous téléchargez.

Vous ne pouvez pas poser de questions tant que vous n’avez pas téléchargé quelque chose, et nous présumons que l’IA limite ses réponses au contenu des documents que vous fournissez. Ce ne sera toujours pas parfait, mais au moins cela ne vous donnera pas simplement de mauvaises informations provenant d’une source inconnue.

Le badge Hackaday

Pour l’essayer, nous avons décidé de voir à quel point cela ferait du bien si vous étiez trop paresseux pour lire le manuel de programmation du Hackaday Badge 2023. Une fois connecté à NotebookLM, vous créez des blocs-notes. Chaque cahier possède son propre ensemble de références et de notes. Dans ce cas, nous n’avons qu’une seule source : le manuel PDF.

Nous avons qualifié l’IA de « le pire stagiaire d’été de tous les temps », et ce n’est pas loin non plus. Ma première question était de savoir comment exécuter du code toutes les deux secondes. Les deux premières réponses m’ont conseillé d’utiliser asyncio.sleep(2) , ce qui n’est pas techniquement faux, mais cela suppose que j’ai le contrôle du processeur pour commencer. Bien sûr, je connais la réponse que je cherche, il est donc facile de l’ignorer, mais si c’était quelque chose pour lequel j’avais vraiment besoin d’aide, il me faudrait peut-être un certain temps pour réaliser que c’est une impasse.

Une question plus précise a aidé :

Comment puis-je demander à VectorOS d’exécuter mon code périodiquement ?

Vous pouvez utiliser le Minuteur classe pour planifier l’exécution périodique d’une fonction. Le tarif de base du minuteur est défini dans vos_lancement (timer_base_rate en millisecondes). Tous les délais d’attente sont calculés par rapport à ce taux de base. Le débit de base ne doit pas être trop rapide (par exemple, 10 millisecondes est probablement trop rapide et vous obtiendrez des erreurs de récursion lorsque la boucle du temporisateur se dépassera). La valeur par défaut est de 100 millisecondes.

Voici un exemple d’utilisation de la classe Timer pour exécuter une fonction toutes les secondes :

import timer

def my_function():
  # Do something

timer.add_timer(1000, my_function)
La transcription complète de mes requêtes de badge.

Fait intéressant, j’ai posé essentiellement la même question deux fois et j’ai obtenu des réponses correctes, mais subtilement différentes, à chaque fois. La première fois, j’ai utilisé « Comment puis-je… » au lieu de « Comment puis-je… » et le programme a fourni plus de détails. Il a également suggéré dix références dans le document pour la première question, mais une seule pour la deuxième question, ce qui semble étrange étant donné que la seule différence dans la requête était l’utilisation de do au lieu de can.

D’un autre côté, il y est arrivé. Je lui ai alors demandé ce qu’était un créneau. Je pense que c’était un bon exemple, car, dans le monde réel, un slot peut signifier un certain nombre de choses, mais pour VectorOS, il a une signification très spécifique. Voici ce que l’IA avait à dire à ce sujet :

Un slot est une fonction qui prend un seul argument, un objet Vectorscope. L’objet Vectorscope est utilisé pour produire des tensions analogiques à afficher sur l’écran de l’oscilloscope. Lorsque vous créez un slot, vous l’enregistrez auprès de VectorOS en éditant le fichier vos_launch.py. L’entrée doit être dans le dictionnaire vectorscope_slots. Les emplacements nommés slotA, slotB, slotC et slotD s’exécuteront lorsque vous appuyez sur le bouton A, B, C ou D depuis l’écran de menu.

Les machines à sous peuvent également être lancées à partir d’autres programmes. Pour cela, appelez vectoros.launch_vecslot avec le nom du slot.

Bien entendu, tout cela est dans le manuel. Mais c’est agréable de pouvoir simplement demander et de le laisser parcourir ce document de près de 50 pages. Dans ce cas, nous n’avons qu’une seule source, mais le programme vous donne un bref résumé de la source et vous permet d’activer ou de désactiver certaines sources quand vous le souhaitez.

Mise à niveau des imprimantes

J’ai suivi un cours d’impression 3D pour des élèves de 8e l’été dernier. Pour soutenir cela, j’ai acheté une imprimante Ender 3 V2 Neo « retournée » et je l’ai améliorée afin d’avoir une imprimante très bon marché que les enfants pourraient utiliser. Mais maintenant, je pense à des mises à niveau. Ce serait cool si l’ordinateur portable pouvait effectuer des recherches sur le Web – il vient de Google, après tout. Mais ce n’est pas possible.

J’ai adopté différentes approches pour charger les sources. Tout d’abord, j’ai trouvé le manuel d’Ender 3 et je l’ai téléchargé au format PDF. J’ai également récupéré quelques sites Web et collé du texte ou imprimé au format PDF à charger. Dans la plupart des cas, j’ai utilisé le mode lecture pour supprimer tous les éléments supplémentaires avant d’imprimer les PDF, en supposant que cela aiderait.

Au final, j’avais sept sources différentes. L’un d’eux était un fil de discussion Reddit qui ne s’imprimait pas très bien mais contenait de bonnes informations.

J’ai demandé au portable de me parler de quelques mises à niveau simples que je pourrais apporter à l’imprimante. Il a proposé une liste raisonnable, comprenant l’utilisation de meilleurs tubes, un ventilateur plus silencieux et quelques autres. Il a également fourni trois liens pertinents. Cependant, ne commettez pas l’erreur de penser qu’il a vraiment compris ce qui se passait. Par exemple, il proposait le nivellement automatique du lit à titre de suggestion. Cependant, le V2 Neo dispose déjà d’un nivellement du lit. Il a également suggéré de remplacer les tubes Bowden et d’utiliser une extrudeuse à entraînement direct. Rien de mal avec aucune de ces suggestions, mais vous ne les feriez pas ensemble. Il a également suggéré plusieurs mods pour un hot end qui n’est pas en stock sur l’imprimante sans préciser que ceux-ci ne s’appliqueraient que si vous aviez déjà mis à niveau le hot end.

Pour être honnête, c’est l’effet « mauvais stagiaire d’été ». L’IA ne sait rien de ce sujet à part ce que nous lui racontons via les sources. Je suis sûr que les sources ont parlé de toutes ces choses. Donc, si vous demandiez à un débutant de lire tous ces documents et que vous posiez ensuite des questions, vous pourriez obtenir le même genre de réponses.

Le Pi Pico

Il existe de nombreux fichiers PDF liés au Raspberry Pi Pico, cela semble donc être un bon cahier à créer. Cependant, la tentative d’ajout de la fiche technique principale du RP2040 échoue sans message d’erreur. Je soupçonne qu’il est trop long, environ 700 pages. J’ai cependant pu ajouter plusieurs autres documents, y compris la version PDF de la documentation du package Arduino. Finalement, j’ai divisé la fiche technique en quatre parties et cela a semblé faire l’affaire. Malheureusement, vous ne pouvez pas télécharger plusieurs fichiers, il a donc fallu quatre téléchargements distincts pour démarrer.

En fin de compte, j’avais dix documents différents à parcourir (même si quatre d’entre eux étaient la grande fiche technique). L’ordinateur portable était capable de répondre à des questions de base telles que le nombre de canaux DMA disponibles, quel était le plus petit transfert DMA possible et si les broches étaient compatibles TTL.

Il a également été en mesure de répondre à des questions plus difficiles, comme celles de savoir quelles fonctions Arduino utilisent le système PIO. Avant d’être trop impressionné, cependant, il m’a informé plus tard que le RP2040 n’avait pas de mode esclave I2C, seulement un mode maître. Ensuite, dans la réponse suivante, il m’a dit que le mode esclave I2C fonctionne à 100 kHz et que la puce n’a pas de mode maître I2C. Ces réponses étaient en réponse au fait que j’avais parlé des limitations de l’horloge SPI lorsque j’avais posé des questions sur l’horloge principale. Ce n’est pas son heure de gloire.

Certes, vous pouvez au moins cliquer sur les références qu’il fournit pour voir quelle partie du document il interprète mal. Mais si vous devez faire autant de travail et, plus important encore, en savoir beaucoup à ce sujet, l’outil a peut-être besoin d’un peu de travail. Il est vrai qu’il s’agit d’une version anticipée, donc elle s’améliorera probablement.

Déchets entrants, déchets sortants

Il ne fait aucun doute qu’un outil comme celui-ci ne peut avoir autant de succès que les données que vous y mettez. Cependant, les erreurs que nous avons constatées ici étaient davantage des interprétations erronées des données fournies qu’un humain aurait été moins susceptible de commettre.

Impressionnant? Bien sûr. Mais pensez au cas d’utilisation. Si vous en savez déjà beaucoup sur le RP2040, par exemple, vous venez peut-être d’effectuer une recherche sur le Web pour répondre à ces questions. Ou même recherché des mots-clés dans le PDF. Cela aurait probablement été aussi rapide une fois que vous avez déduit le temps nécessaire pour décider si la réponse semble légitime ou non. Le véritable pouvoir de ce type d’outil serait destiné aux personnes qui ne connaissent pas le sujet et n’ont pas les connaissances nécessaires pour réfléchir à la façon de trouver des choses comme celle-ci. Imaginez un navire en mer sans médecin et une version IA du manuel Merck. Vous espérez que cela ferait mieux que ça.

François Zipponi
Je suis François Zipponi, éditorialiste pour le site 10-raisons.fr. J'ai commencé ma carrière de journaliste en 2004, et j'ai travaillé pour plusieurs médias français, dont le Monde et Libération. En 2016, j'ai rejoint 10-raisons.fr, un site innovant proposant des articles sous la forme « 10 raisons de... ». En tant qu'éditorialiste, je me suis engagé à fournir un contenu original et pertinent, abordant des sujets variés tels que la politique, l'économie, les sciences, l'histoire, etc. Je m'efforce de toujours traiter les sujets de façon objective et impartiale. Mes articles sont régulièrement partagés sur les réseaux sociaux et j'interviens dans des conférences et des tables rondes autour des thèmes abordés sur 10-raisons.fr.