La clé du véritable assistant IA: l’infrastructure IA personnelle (PAI) [en]

Même si je ne suis pas en train de vibe-coder à tour de bras, j’ai bien sauté dans le train côté IA. Depuis deux ans environ, je dis que ce que je ressens concernant l’importance et le potentiel de l’IA générative est quelque chose que je n’ai pas senti depuis ma découverte d’internet il y a 20-25 ans.

Et là mes amis, j’ai l’impression de m’être pris un train en pleine figure. Enfin, je le vois arriver depuis un moment, le train, mais là il est sur moi. Mon vieux pote Jens-Christian vient de me montrer, en live (bon, par visio) à quoi ressemblait son assistant IA et l’infrastructure (PAI) qui le rendait possible. Je vais vous expliquer tout ça en français, ne vous en faites pas, mais sachez déjà qu’en gros, le fameux “assistant IA” qui est véritablement capable de nous aider à organiser nos vacances, choisir un menu pour ce soir, nous briefer pour préparer notre journée, garder le fil de nos multiples projets et évidemment, automatiser notre administratif récurrent, sans juste faire semblant qu’il en est capable – eh bien on y est.

Je précise d’emblée, parce que le dégueulis d’IA – je sais pas comment traduire mieux “AI slop” – envahit non seulement le web, les réseaux, nos conversations WhatsApp et les blogs, que j’écris ce texte avec mes dix petits doigts sur mon clavier. Le jour où je vous refile un truc “écrit avec IA”, je vous le dirai, et je vous dirai aussi “combien écrit avec l’IA” c’est.

OK. Maintenant j’explique pourquoi je suis en train de vous dire que l’ordinateur de Star Trek, c’est déjà aujourd’hui. Enfin avant, un petite digression préalable.

On le sait bien: ce qu’on appelle aujourd’hui “une IA”, c’est en fait un “LLM” (Large Language Model). C’est une intelligence artificielle (un type de programme) qui produit des mots. En très simplifié, c’est du texte prédictif dopé. Le LLM, il ne fait qu’une chose, à la base: il regarde le “contexte” (le texte déjà écrit) et fait une prédiction statistique sur le prochain mot. Et le prochain. Et le prochain. L’IA (le LLM) ne “sait” rien. C’est juste une machine à aligner des mots. Mais ce qui est dingue, c’est que cette machine est capable de produire du texte que l’on reconnaît comme “discours”, et qui nous donne le sentiment d’être en train de parler à une vraie personne. C’est le côté “chatbot” ou “interface conversationnelle”. Ça veut dire que pour faire faire des choses à une machine, aujourd’hui, on peut simplement lui expliquer avec nos mots – pas besoin de cliquer sur tel bouton, donner telle commande, utiliser un langage de programmation. On dit quelque chose, et quelque chose se passe.

Si vous avez déjà l’habitude de fréquenter Claude ou ChatGPT, vous savez comme ça va. On chatte avec, et on est tour à tour bluffé (quand ça marche) et désespéré (quand ça marche pas). On se casse vite le nez sur les limites du truc, il nous dit un truc qui est faux, et on se dit qu’il est bien con et que l’IA, ça ne marche pas si bien que ça. On pense aux rêves qu’on avait de pouvoir dire à notre IA “fais ma déclaration d’impôts” ou “planifie mon projet” (pourquoi pas “fais mon job”, pendant qu’on y est), ou plus modestement, “envoie les factures vétérinaires à l’assurance pour qu’ils remboursent”. L’IA nous promet monts et merveilles mais ne livre pas toujours – d’autant plus si on se contente de lui parler dans une conversation qui s’allonge à l’infini, qu’on ne comprend comment travailler avec la fenêtre de contexte, que les skills ça nous dépasse, qu’on ne maîtrise pas les subtilités du prompting et qu’on n’a pas encore fait le pas d’organiser nos interactions en projets ou d’essayer Cowork. On entend bien ceux qui développent des trucs incroyables à l’aide de l’IA, mais bon, on n’est pas tous développeurs, et franchement les résultats médiocres qu’on obtient nous laissent penser que c’est beaucoup de hype, toute cette histoire. On est d’accord?

Et là au milieu, je suis en train de vous dire (je vous promets j’ai pas fumé) qu’en fait oui, l’IA est bien capable de nous offrir cet “assistant digital” dont on rêve. Je crois franchement qu’on y est. Mais c’est pas “en chattant avec Claude”. Et il n’y a pas besoin non plus d’apprendre à programmer pour y arriver.

La clé, c’est cette infrastructure mentionnée en début d’article: PAI. C’est pas une “alternative” à Claude ou ChatGPT ou Gemini. C’est un système qui se construit dessus. Une collection d’instructions pour IA et de scripts (comme des mini-programmes) qui vont tourner sur l’ordinateur.

Comme dit plus haut, une IA ne “sait” rien. On peut lui donner une liste de tâches en début de conversation, en rajouter 3 nouvelles, parler de la pluie et du beau temps, et lui redemander les tâches 10 minutes plus tard, et il y a fort à parier qu’il y aura une erreur dans la liste. Qu’elle reconnaîtra de bonne grâce quand on la lui fera remarquer. Par contre, si au début de la conversation on lui demande de créer un fichier contenant cette liste, et que deux jours plus tard on lui demande nous lire la liste qui est sur le fichier, là, ça marche. Suivant quelle est votre expérience dans l’utilisation de l’IA, vous avez peut-être fait ce constat de vous-même: c’est vachement plus fiable de faire mettre des infos dans des fichiers, de faire écrire des scripts pour extraire de l’information d’un document ou d’un tableau de données. Et d’ailleurs, aujourd’hui, votre “Claude chatbot” le fera spontanément ou vous le proposera, suivant ce que vous lui demandez.

Donc: l’assistant IA de nos rêves, c’est pas “juste” une IA, c’est surtout des tas de scripts et des fichiers contenant des informations. Et bien sûr quand même une IA, pour interagir avec nous (la fameuse “interface conversationnelle”) et faire évoluer le système en fonction de nos besoins.

Vous êtes encore là? Soyons un peu concrets. PAI c’est donc un truc qu’on télécharge sur son ordi et qui une fois lancé, va premièrement installer ce dont il a besoin (y compris Claude Code si on ne l’a pas déjà). Ensuite, quand on le lance, il va nous prendre par la main (via l’interface conversationnelle, donc en discutant déjà avec l’IA) pour le configurer et démarrer avec. Oui, il faut taper un truc dans la ligne de commande, il y a un premier pas ou deux un peu geek, mais après, c’est “juste du blabla” comme on a l’habitude de faire normalement avec une IA.

Ce qui fait que PAI c’est pas “juste une IA”, c’est que c’est un système prévu pour créer ce dont vous avez besoin de votre assistant. On ne vous livre pas une voiture: on met à votre disposition tout ce qu’il faut pour concevoir et produire la voiture qui correspond exactement à vos besoins – les ingénieurs, les designers, les mécanos, l’usine de production, et aussi le chef de projet qui va vous prendre par la main pour vous aider à décrire la voiture dont vous avez besoin. PAI c’est ça.

L’infrastructure comprend un système et une structure pour stocker des infos de contexte vous concernant – pas juste la façon dont vous aimez que l’IA vous parle, mais aussi vos valeurs, vos domaines d’expertise, vos préoccupations et buts dans la vie. Et pas sous forme de laborieux champs texte à remplir. L’IA va vous interviewer, ou dans mon cas, avaler mon blog, et en tirer les informations pertinentes. Ou pas, si on veut pas. L’infrastructure comprend aussi des processus: en particulier, comment développer un système dont vous avez besoin.

Un exemple en guise de démo (on a fait ça en direct avec Jens-Christian et son assistant pendant notre visio): un truc dont je rêve, perso, ce serait un système qui est au courant de ce que j’ai dans mon frigo et mes armoires, de ce que j’aime manger et cuisiner, et qui puisse me dire “ah ben ce soir, tu pourrais te faire ceci ou cela”. Pour de vrai, c’est une grosse charge mentale chez moi ce genre de truc. Donc hop, on soumet cette idée à l’assistant. J’ai deux ou trois idées en plus: si je donne à l’assistant mes tickets de caisse de courses, il pourrait savoir ce que j’ai acheté comme nourriture. Et si je lui montre ce que je mange ou me cuisine, il pourrait en déduire ce que j’ai utilisé. Peut-être de temps en temps il faut lui faire une photo du frigo ou de l’armoire pour vérifier si son inventaire est à jour. Et il pourrait aussi avoir à dispo une collection de recettes que j’ai faites, et d’idées-repas (j’ai commencé à compiler ça, manuellement). On donne donc ces infos à l’assistant, et on observe. Honnêtement, c’est là que je me suis retrouvée sur le cul.

PAI comprend donc un processus, ou une méthode, pour approcher ce genre de demande: clarifier à quoi ressemblerait le système fini, puis, selon une logique similaire au “rétro-planning” (du reverse-engineering, en fait) il produit un concept, les différentes parties du système à créer, évalue de quelle façon les créer (scripts, IA, quels outils sont à disposition, parce que bien sûr il sait quels outils on a sur l’ordi et ce qu’on a l’habitude d’utiliser), à quoi ressemblerait une version minimale fonctionnelle du système (le “MVP”=minimum viable product du jargon dev/business), et (après feu vert bien entendu) produit un prototype. En dix minutes, on avait un prototype interactif à qui je pouvais demander quoi manger ce soir, après avoir rempli une liste bidon de ce qui était dans mon frigo – et surtout, un plan pour développer le reste du système.

Avant aujourd’hui, j’avais prévu d’écrire un article sur ce que j’étais en train de faire avec l’IA en ce moment. Je me suis mise à Cowork, et je suis en train de créer un système qui m’aide à garder le fil de mes multiples projets en cours. Pas juste à savoir où j’en étais et quelle était la prochaine chose à faire quand je reprends un dossier trois semaines après l’avoir laissé en plan, mais aussi à avoir une vue d’ensemble du “portfolio de projets”. Dans mon système, il y a un fichier dans lequel je note les unes derrières les autres toutes les idées qui me passent par la tête, et ensuite il y a un script (et un peu d’IA) qui avale ce fichier et qui dispatche chaque idée ou info dans une sorte de boîte de réception pour le projet en question.

Exemple (parce que c’est mieux les exemples). J’ai trois tonnes de fichiers d’archives pas mal en bordel sur deux disques durs externes. Ça prend beaucoup de place, et je sais qu’il y a du contenu dupliqué, mais pas où et lequel. Je suis donc en train d’utiliser Claude pour m’aider à faire ça de façon méthodique. Donc ça c’est un de mes projets avec Claude. Mettons que pendant qu’on est en train d’avancer dans ce projet, je me retrouve dans le dossier qui contient les sauvegardes des vidéos live que j’ai faites sur Facebook. Il y a celles des chats diabétiques, mais aussi des vidéos sur d’autres sujets et dont je voudrais faire un article dans le blog. Comme je suis en grande conversation avec Claude, je mentionne ça, et peut-être que j’évoque les 3-4 articles que j’ai en tête, pour qu’il en prenne note. Il va noter ça (parce que je lui ai donné des instructions dans ce sens à l’aide d’un skill) dans le fichier “de sortie” du projet, prêt à être importé dans le fichier d’entrée du projet “idées pour le blog”. Ou alors, je suis en train de faire à manger et une idée de génie pour l’aménagement de mon balcon me traverse le cerveau: je la note rapidement dans mon fichier central, sachant que Claude rangera cette info au bon endroit.

Donc créer ce genre de système, avec Cowork, c’est possible, mais je fais beaucoup manuellement. Je micro-manage beaucoup. Je dois être directive, parce que sinon Claude me dit “ouais ouais c’est bon je m’en charge, c’est super simple” et en fait… non.

Avec PAI, il y a déjà des instructions et des “compétences” (skills) dans l’infrastructure exprès pour que créer ce genre de système se fasse bien et simplement. C’est donc une boîte à outils, accessible via le chat, qui nous permet de “forger” le système dont nous avons besoin – créer l’assistant qui va simplifier les tâches à peu de valeur ajoutée de notre quotidien, ou celles qui sont difficiles pour nous, qui va nous permettre d’avoir plus d’énergie à disposition pour les choses qui comptent pour nous.

Je vais gentiment prendre congé de vous pour aujourd’hui, parce que ça devient un article-fleuve (qui plus est pas super bien structuré et clair peut-être) et que mon cerveau n’a plus beaucoup de batterie. On va en reparler quand je sauterai le pas (dès que j’ai un peu de temps à dispo) pour installer PAI chez moi.

Juste deux mots de prudence avant de clore:

  • Claude Code, Cowork, PAI: des outils puissants mais qui présentent également des risques côté sécurité. Ce n’est pas une bonne idée, aujourd’hui, de laisser votre IA contrôler votre navigateur web, de lui donner libre accès à vos fichiers ou à votre e-mail, surtout si vous ne comprenez pas bien les enjeux sécuritaires
  • faire tourner quelque chose comme PAI “coûte” en termes d’utilisation d’IA – tout comme ça coûte de faire produire des images par l’IA, des pages de code, de manipuler des fichiers sur un disque dur, de lire des PDFs de 500 pages… sur un plan gratuit, oubliez; même un plan à 20.-, c’est probablement bien chaud

Quelques liens (en vrac parce que je suis trop raide):

Reminders With Future Triggers: Building an Intelligent Calendar [en]

[fr] L'idée que j'ai pitchée au StartupWeekend Lausanne, plus en détail et mieux expliquée: un système de rappels ("rappelle-moi") qui pourrait rappeler des choses comme "la prochaine fois que tu vois Sophie, ramène-lui son pull" -- même si on ne sait pas quand ni où on verra Sophie pour la prochaine fois.

Wouldn’t it be great if you could set a reminder somewhere so that you don’t forget to take your grandmother for a day in the mountains next time she comes to visit — even though you don’t know when that’s going to be?

Or if you had a way to remember to bring back Sophie’s sweater that she forgot at her place, next time you have a meeting in Geneva — but you have no trips planned to the city so far?

How about reminding you to wear woolly socks every time you take the plane, because it gets freezing cold once you’re up there? And your ear plugs, in case your seat neighbour is a heavy snorer?

We usually keep track of this kind of stuff in our heads. Or we have manual GTD-style lists — ever forgot to check them before meeting somebody, only to realize afterwards there was something written under their name?

There are existing systems that provide an inch or two of the solution, but nothing exists at this stage which actually does what I’m thinking of. Let’s go around some of these services, then I’ll share my ideas on how I think this can be done.

ifttt

This is, to be honest, the service that gave me my main inspiration. It has a trigger => action architecture, but so far triggers are limited to social media events. Some exceptions: the weather, for example. Possible task: “send me an SMS if it’s going to be cold tomorrow”.

But that weather example is pretty much an exception: ifttt triggers are present events. E-mail received. Post published. Tweet with #somehashtag found. Calendar event starts.

We would need triggers like “trip to Geneva planned in 24 hours” or “Grandma coming to Lausanne in 2 weeks” or even, if we pushed it further, “on the phone with James” or “checked in with Tania”. (More on the different types of trigger I’m thinking about later.)

My idea could be an extension of ifttt, but it might also be a separate service altogether. I’m not sure at this stage.

ZMS

ZMS has part of the solution: “next time I’m in Geneva station, remind me to get a croissant at the little coffee shop”. But that won’t be much help for remembering to take Sophie’s sweater with me next time I leave my house for Geneva.

Calendar reminders

Reminders are pretty standard in calendars. But you need to set them when you enter an event in your calendar. But the basic idea here is that an event in the future, as recorded by your calendar, triggers a reminder in the present. “One month before any trip to India, remind me to ask people what they want me to bring back.”

Evernote

For some reason I spoke about this idea when I stopped by the Evernote booth at LeWeb. After discussion, it didn’t really seem to be their space, but one thing they do well is capture information from all sorts of different sources and in all shapes and sizes and help you organize it. Text on photos is parsed, everything is tagged and geolocated, and available whether you’re on your phone, your tablet, your own computer or somebody else’s. It has this “central nervous system” touch to it that my reminder service would need.

Also, somebody suggested storing my rules/reminders in Evernote, using tags for triggers. #gotoGeneva, for example. Or #Grandma. But that won’t work, because I’m not going to be actively checking for triggers each time I go somewhere or meet somebody or do something. This is clearly a service which needs to work with push, and not pull. The whole point of it is that it will do the pushing for us.

Dopplr

Based on your calendar of future trips and your connections, Dopplr lets you know if you’re going to bump into people you know when you travel.

TripIt

One thing that TripIt has been doing for a long time and which I think is really cool is that you can forward your flight booking confirmation e-mails to it, and it will automatically parse them and enter the corresponding trip in your itinerary. Some people might find this creepy, but it’s a great way to painlessly transition information from one bucket (inbox) to another (calendar).

Path

Path monitors where you are, and when you change cities, makes a note in your Path. I feel there is more intelligence coming our way from Path, but let’s wait and see. What’s interesting is that as it’s limited to (reasonably) close friends, a service like this can learn a lot about the dynamics with the people you interact with the most. This could come in handy…

Siri

Speech recognition. “Remind me to buy flowers tomorrow.” One step further: “Next time I go to Geneva, remind me to take Sophie’s sweater with me.”

How would this be done?

The service would have two main layers:

  1. gathering data to build an “implicit calendar” of your future activities
  2. rule storage and triggering

I think the second layer is pretty “straightforward”. Store rules in an “if then” format like ifttt does very well, with the extra twist that the triggers will probably look something like “N days/hours/minutes before X”. We can also get fancy about how the rule is input (from code-like to Siri-like) and how the reminder (action) takes shape.

The part that sounds a bit like SF is “how will the system know my Grandma is coming to visit?” What are the sources to generate this intelligent calendar of my future activities? Here’s what I can imagine:

  • your normal calendar (it has attendee and location fields already, that’s a pretty good start)
  • your e-mails: either explicitly (you forward e-mails with relevant parsable information to the engine) or implicitly (the engine monitors your e-mail for things like travel reservations, conversations about future activities that it might recognize — yes, people will find this creepy)
  • geolocation: where you are, where your contacts are
  • and a step further: who you’re on the phone with, who you are exchanging text messages with, parsing content of your chats and text messages (people will find it even more creepy, but aren’t organisations already monitoring this kind of thing, without us benefitting from it?)

If I were doing this thing, I would start tame and simple, by gathering information from the calendar. I would focus on one type of reminder to start with. Here are the types of reminders that I can think of, off the top of my head:

  • meeting somebody
  • going somewhere
  • doing a certain activity
  • combinations: meeting somebody somewhere (e.g. Grandma in Lausanne)

Two obvious ones are the two first ones: I could set rules for when I’ve planned to see somebody, and when I’ve planned to go somewhere. Then, once that is working, widen the trigger set, the rule set, and the scope of the input engine.

When I pitched this idea at Lausanne StartupWeekend, I was surprised by some of the feedback I got: either people misunderstood and assumed it was already possible (“but such-and-such service already does geolocalized alerts! you can do this with Evernote or RememberTheMilk“), or understood but wrote it off as science fiction. This made me realize that this idea isn’t as easy to get across as I assumed it was, but that when people do understand it, they go “oh that would be useful”.

So, this is my attempt at explaining this idea correctly, maybe in more detail. I’d like to thank all the people I’ve talked about this idea with up to now (including ZMS and Evernote with whom I had brief chats) for helping me refine the way I present it. (Somebody in particular said “oh, a kind of intelligent calendar” — but I can’t remember who… sorry.)

Do you have questions or comments? Does this explanation sound clear to you? Would you explain it differently? I’d love to hear back from you if you’ve read this article to the end.