Il ne faut pas se méprendre ; sous ses airs timides, Guillaume Baudart apprécie plus que tout les rencontres et les échanges. En sciences ou en musique ? Pourquoi pas les deux ! Curieux, il aime découvrir de nouvelles choses, et s'intéresse beaucoup aux nouvelles technologies. Rencontre avec Guillaume Baudart, nouveau chargé de recherche à l'IRIF.

“La programmation probabiliste est un projet que j'ai démarré à IBM. L'idée, c'est de prendre un language de programmation classique et d'ajouter la possibilité de manipuler des distributions et de faire du résonnement bayésien, donc de faire de l'apprentissage sur les distributions.” Guillaume Baudart, chargé de recherche | Pôle Preuves, programmes et systèmes - Équipes Analyse et conception de systèmes, Preuves et programmes et Picube (Inria).

J'ai un parcours assez classique pour la France. J'ai fait une classe préparatoire, puis ensuite je suis allé à l'ENS Rennes. J'ai poursuivi par un master un peu original, ATIAM, en informatique et mathématiques appliquées à la musique. Et ensuite je suis parti en thèse à l'ENS Paris où je ne faisais plus du tout ça, puisque je faisais des systèmes embarqués et des languages de programmation réactifs.

Depuis tout petit, je voulais faire de la musique. En même temps, j'avais beaucoup de goût pour les sciences, donc j'ai fait un parcours scientifique tout en voulant, pendant longtemps, concilier les deux, notamment jusqu'à la fin de mon master. Ça ne s'est finalement pas fait, j'ai été intéressé par d'autres sujets. Mais ce que je retiens de mon master, c'est une grande ouverture sur beaucoup d’autres domaines. Il y avait de l'apprentissage automatique, du traitement du signal, et des cours de composition et d'histoire de la musique, que je n'aurai pas eu dans d'autres masters plus spécialisés. Ce master est hébergé à l'IRCAM. Culturellement, c'était incroyable, nous avions notamment accès au Centre Pompidou.

Lors de mon stage, je faisais déjà un langage réactif, pour faire de la composition musicale. En termes informatiques, c'était du design de langage et de la sémantique. Marc Pouzet et Timothy Bourke m'ont proposé de poursuivre en thèse sur les langages réactifs pour les systèmes embarqués, en oubliant l'aspect musique.

Il se pourrait que je revienne sur des sujets de recherche musicaux, je vois toujours avec plaisir des conférences et des exposés liés à ce domaine, mais c'est devenu très éloigné pour moi. Je revois passer des cas d'études d'informatique musicale, qui illustrent des articles, ça revient de manière inattendu. Mais ce n'est absolument plus au cœur de ce que je fais aujourd'hui.

A la fin de ma thèse, j'ai eu la chance de pouvoir faire un stage à IBM Research à New-York, qui m'a ensuite embauché comme chercheur. J'y suis resté pendant quatre ans. Je travaillais dans le groupe nommé AI Programming Models, sur les intelligences artificielles, toujours du côté langage de programmation. C'est là où on a commencé à travailler sur la programmation probabiliste.

Au bout de ces quatre années, avec ma famille, nous avons décidé de rentrer en France. Initialement, je n'avais pas prévu de travailler dans le privé, c'est vraiment l'opportunité que m'a offert IBM qui m'a orienté dans une grande entreprise. Sinon, j'ai toujours voulu travailler dans la recherche publique, notamment car, dans le cadre d'une carrière de chercheur, le public offre une grande liberté. J'ai candidaté à l'INRIA en 2020, où j'ai été retenu. J'ai donc intégré pendant 2 ans l'équipe PARKAS de l'ENS. Et là je viens d'arriver pour de nouvelles aventures !

Concernant les difficultés, j'ai eu du mal à me réadapter lorsque je suis rentré des États-Unis, notamment pour me familiariser de nouveau à la culture française. Le fait de passer du domaine privé au public m'a aussi demandé un temps d'acclimatation.

Ma recherche se divise en deux parties :

  • la partie sur laquelle je travaille activement depuis un peu plus de deux ans, la programmation probabiliste,
  • et une nouvelle partie, qui a démarré avec mon arrivée à l'IRIF, sur l'utilisation des large language models, qui sont, par exemple, les technologies derrière ChatGPT, pour générer des preuves avec l'assistant de preuve Coq.

La programmation probabiliste est un projet que j'ai démarré à IBM. L'idée, c'est de prendre un langage de programmation classique et d'ajouter la possibilité de manipuler des distributions et de faire du résonnement bayésien, donc de faire de l'apprentissage sur les distributions.

On a beaucoup travaillé sur ce sujet, qui nous a mené à mélanger ce point de vue probabiliste avec les langages réactifs sur lesquels j'avais travaillé quand j'étais en thèse, pour faire de la programmation réactive probabiliste. C'était mon sujet principal, avec comme questionnement de savoir comment définir la sémantique de ces objets. L'aspect probabiliste, c'est manipuler les distributions, l'aspect réactif c'est écrire des programmes qui ne terminent jamais, qui manipulent des flots infinis ; c'est ce qui est utilisé pour faire des contrôleurs embarqués pour les avions par exemple.

Donc l'idée était de savoir comment mélanger les deux et ce que ça peut apporter. Ça nous permet de résonner sur l'incertitude du monde dans lequel évolue le système embarqué.

Le deuxième aspect porte sur un lancement de projet : les large language models ont des capacités qui leur permettent de faire des choses pour lesquelles ils n'ont pas forcément été entrainés. On voit beaucoup de travaux de chercheurs qui essaient d'utiliser cela en ce moment. Nous, on veut l’utiliser pour faire un assistant d’assistant de preuves. On essaye d'ajouter une intelligence artificielle à l'assistant de preuve Coq avec laquelle on peut dialoguer pour aider à formaliser un résultat, puis à réaliser la preuve. C'est un projet qui vient de se lancer depuis mon arrivée à l'IRIF, c'est pourquoi je suis très heureux d'avoir rejoint le laboratoire et l'équipe Picube de l'INRIA, en particulier avec tous ses experts.

Dans la première partie, il y a le design de langage de programmation, la programmation réactive et la programmation probabiliste qui couvre les aspects sémantiques, moteurs d'exécution, inférences, etc.
Sur le deuxième point, les concepts sont les assistants de preuves, la formalisation mathématique, l'IA au sens Large language models, et le fait de faire une interface interactive avec à la fois l'utilisateur, une AI et un assistant de preuve pour brancher les trois en même temps.

C'est difficile pour moi de répondre à cette question. En fait, je me suis laissé guider par les sujets qui m'intéressaient pendant mes études. Comme je le disais précédemment, j'ai eu un parcours assez classique et je suis arrivé en informatique, pas tout à fait, mais un peu par hasard quand même et ensuite, j'ai suivi les sujets qui m’intéressaient.
Mon parcours fait que je me suis assez vite intéressé aux langages de programmation, avec tout ce qui va autour, les aspects sémantiques et preuves, et des aspects un peu plus nouveaux pour moi, que j'ai creusé en allant aux États-Unis, qui sont les aspects génie logiciel.

Ces deux projets justement !
Mais aussi développer des relations humaines ; j'ai hâte de discuter avec différents profils à l'IRIF, dont les membres font des choses complètement différentes tout en se côtoyant. J'aime l'idée de pouvoir se croiser par hasard et échanger, sans travailler sur les mêmes thématiques. Les séminaires seront également un espace de rencontres et d'échanges pour moi. Je vois déjà des liens avec des personnes et des sujets auxquels je n'avais pas du tout pensé. Et ça me plaît beaucoup. Je suis également très curieux de rencontrer des personnes qui ont une grande expertise en Coq et en méthodes formelles, qui est incroyable à l'IRIF. Et enfin, sur les aspects probabilistes, je suis très heureux de pouvoir discuter avec les experts en sémantique et en programmation probabiliste. Il y a tout un pôle de recherche sur cette thématique ici.

J'ai actuellement un poste de chercheur, ce qui est assez stable. J'imagine que mes projets vont évoluer et aboutir, j'espère juste continuer à faire des choses que j’aime avec des gens que j’apprécie, car j'aime énormément travailler en équipe.

Quand je suis arrivé en stage de M2 pour faire de la musique, j'ai travaillé avec quelqu'un qui s'appelle Louis Mandel, qui est très important pour moi et qui est parti à IBM Research au moment où je commençais ma thèse. Et trois ans plus tard, c'est donc grâce à lui que j'ai pu avoir un stage là-bas, et c'est avec lui que l'on a commencé toute l'aventure probabiliste. On continue d'ailleurs toujours à travailler ensemble aujourd'hui.
Ce genre de rencontres exceptionnelles, c’est ce qui me porte dans le travail.

J'ai deux enfants de 2 et 6 ans avec qui je passe autant de temps que je peux (parfois même plusieurs fois par nuit…), et s'il me reste un peu d'énergie, je joue du violon dans un quintette à corde (environ 1 fois par mois).


2020-2023 : Chargé de recherche ISFP dans l'équipe PARKAS à l'ENS Paris
2017-2020 : Research Staff Member IMB TJ Watson Research Center
2017 : Thèse avec Marc Pouzet et Timoty Bourke à l'ENS Paris