Bruno:
Depuis l'arrivée de GPT, les développeurs du monde entier ont pris une claque. Une IA capable de générer du texte, du code et même de répondre à des questions complexes. C'est clairement impressionnant. Mais rapidement, une question s'est posée. Comment aller au-delà de la simple génération ? Et c'est là qu'intervient notamment LongChain, un outil qui permet d'orchestrer la puissance des IA pour en faire quelque chose de vraiment utile. Mais alors, LongChain, est-ce vraiment un framework ? Est-ce si différent d'une simple librairie ? Et surtout, au-delà du buzz autour des IA agentiques, que peut-on vraiment construire avec ? Pour répondre à ces questions de full stack, je ne reçois pas David Copperfield, mais il sait se libérer de ses chaînes. Maxime, bonjour.
Maxime:
Bonjour Bruno.
Bruno:
Alors Maxime, est-ce que tu pourrais te présenter pour les quelques personnes qui ne te connaîtraient peut-être pas ?
Maxime:
Yes, alors Maxime, rapidement mon parcours, j'ai été 11 ans dans l'ESN Théodaux, dont les 5 dernières années en tant que co-dirigeant STO. Je suis parti il y a environ un an pour monter ma boîte qui s'appelle Ago. On fait du support client assisté par IA et on utilise Langchain, donc on va pouvoir en parler. Et à côté de ça, j'ai monté une association avec une collègue Maria et mon associé Damien, qui s'appelle Générative AI France. Et on fait des meet-ups toutes les six semaines gratuits, ouverts à tous, sur l'IA Générative avec l'idée de faire parler des gens qui construisent des choses avec l'IA Générative pour donner des idées à tout le monde. Et c'est cool, ouais, toutes les six semaines on est environ 130, donc c'est un meet-up qui marche bien et voilà je vous invite à venir une fois bah carrément.
Bruno:
On mettra en lien, en description bien évidemment des liens pour que les gens puissent y participer, parce que c'est toujours des ces mouvements de partage d'informations et de transmissions, c'est toujours utile ce podcast existe aussi pour ça, donc c'est normal aussi d'y contribuer bien évidemment, Pour aller directement dans le vif du sujet, alors déjà, avant qu'on creuse un peu l'aspect long-chain et qu'on parle des IA gentil, en fait, pour parler un peu d'Ago, en gros, c'est du chatbot plus-plus. Est-ce que c'est comme un chatbot traditionnel qui va juste pouvoir répondre à des questions ou est-ce qu'il y a une capacité d'action du chatbot qui est associée ?
Maxime:
Alors, il y a une question d'action. Si on parle... Alors, tu fais bien de poser la question parce que les chatbots traditionnels ont traumatisé plusieurs générations avec les arbres de décision et beaucoup de frustration à la fin, et donc ce n'est pas cette technologie-là on se base sur les rags on va en parler après notamment en utilisant l'enchaîne donc ça permet de répondre à n'importe quelle question et pas des questions prescriptées dans un arbre de décision et on peut aussi faire des actions donc en fonction de la question on a un comportement un peu agentique, qui est pour l'instant assez simple mais qu'on va, développer. C'est le but de cette année de pouvoir le développer à fond, ce genre de... d'avoir des agents qui permettent de faire plein plein de choses dans les systèmes d'information.
Bruno:
Sur ce podcast, on a déjà parlé pas mal d'IA, de comment fonctionnent les LLM, les réseaux de neurones et compagnie. Donc on va supposer qu'on a une audience qui est déjà à peu près au fait de ça. Très bien mais je réalise entre souvent en fait qu'on n'a pas encore parlé des IA gentils qui sont pourtant une tendance qu'on a évoqué sur un épisode précédent on parle justement des tendances 2024 et 2025 avec quand tu as dans, que je vous invite bien évidemment à écouter super je.
Maxime:
Suis un des fans de quentin.
Bruno:
Est ce que du coup tu pourrais nous faire un petit peu une définition de ce qu'on appelle ces IA gentils qui sont un peu la nouvelle tendance qu'on voit dans le monde de l'IA en ce moment ouais.
Maxime:
Bien sûr hum, Du coup, j'ai partagé sur LinkedIn un article d'Enthropy qui définit ça super bien. En gros, le truc de base, c'est qu'on appelle un LLM et on peut potentiellement faire du function calling, c'est-à-dire qu'on lui envoie en même temps de notre prompt la définition d'une ou plusieurs fonctions et le LLM peut répondre en disant, tiens, appelle cette fonction. Donc ça, c'est ce qu'on appelle le function calling. La version un peu plus évoluée c'est les workflows IA et c'est à peu près ce que vous imaginez c'est à dire qu'il y a plusieurs étapes prédéfinies en avance, de traitement à faire et on utilise l'IA parce qu'on a besoin de l'IA à ce moment du workflow, un workflow simple c'est le workflow router où on veut décider au début d'un traitement vers quelle fonction appelée, on arrive à un nœud et il y a un redispatch ou un workflow. Un poil plus compliqué c'est le chat to data où en gros une première étape consiste à récupérer une description de la base SQL ensuite de envoyer au LLM la description de la base SQL plus la question de l'utilisateur de récupérer. La commande SQL de l'exécuter et ensuite de récupérer le résultat et de l'afficher à l'utilisateur donc ça c'est Workflow IA, il y a plusieurs étapes prédéfinies, c'est comme ça que Long Chain a été connu ils n'appelaient pas ça des Workflow mais ils appelaient des Chain, voilà et la définition d'un agent c'est en gros ça va être une machine à état qu'on peut simplifié par une boucle while, où on n'a pas d'étape prédéfinie mais c'est le LLM qui va les définir lui-même, dans une démo que je faisais c'est par exemple je demandais au LLM de me donner le nom des femmes de l'équipe de France de football pour avoir un petit truc un peu compliqué et donc du coup quand je demandais ça à mon agent, il commençait par faire une recherche Google pour récupérer les noms de l'équipe de France et ensuite, pour chaque joueur, il faisait une recherche wife of machin, et comme ça, il faisait une boucle le temps qu'il récupère toutes les femmes de l'équipe de France et une fois qu'il les avait récupérées, il disait, bon bah voilà, j'ai le résultat mais à aucun moment donné, j'ai dit, pour réaliser cette tâche, tu dois d'abord chercher les gens de l'équipe de France, puis leurs femmes non, non, c'est que le système IA qui a inventé toutes ces étapes et qui les a faits, donc c'est ça les... La définition la plus commune des agents, c'est ça, pour les puristes.
Bruno:
Et donc en fait, tu définis un agent qui a une fonction précise, où tu peux avoir un agent, entre guillemets, créé on the fly par un autre agent qui aura sa fonction définie de manière dynamique par ton premier agent.
Maxime:
Très bonne question, parce que je ne sais pas si tu as en tête, par exemple, des frameworks comme Crew AI, en gros, il y a beaucoup de frameworks où on parle beaucoup de... En gros, il y a un agent qui appelle plein d'autres agents. Et donc, du coup, c'est vrai que dans cette manière de visualiser des agents, enfin, c'est plutôt des sous-agents, on va donner à chaque... On peut appeler ça des nœuds ou... Bon, appelons ça des agents. Chaque agent a une palette d'outils bien spécifiques. Par exemple, il a le droit d'appeler, internet, faire des requêtes Google, une certaine base de données, une certaine API. C'est le comportement sur ChatGPT. Vous pouvez lui dire, tu as le droit d'aller sur internet, tu as le droit de générer des images ou tu as le droit de rien faire. C'est la même chose pour les agents. On lui donne des capacités, des outils. Et on lui donne aussi des prompts pour lui donner comment il doit se comporter. Et généralement un accès à une base documentaire pour qu'ils puissent aller chercher des informations. Généralement, c'est un combo de tout ça qui forme un agent qui a un objectif et c'est vrai que souvent, on le combine avec un agent un peu manager qui est hors dispatch. Il y a un projet qui a été lancé quasiment il y a deux ans maintenant, un projet open source qui s'appelle ChatDev, en gros l'idée c'était de recréer une ESN complètement autonome donc tu avais l'agent CEO à qui tu pouvais lui dire bah tiens tu veux que tu me livres un site internet avec telle propriété, Et après, l'agent CEO, il envoyait des tâches aux agents dev, aux agents UX, aux agents self. Enfin, il envoyait à tout le monde et chaque sous-agent avait ses capacités. Et voilà. À l'époque, ça marchait moyennement, on va dire. Parce que ce qui est très, très dur quand on fait des agents, et c'est pour ça que, notamment, Yann Lequin était très sceptique sur la capacité des systèmes LLM à avoir des comportements agentiques très avancés c'est la partie planification justement où il va comprendre le problème et il va le décomposer en tâches successives qui font du sens et qui vont pouvoir être faites donc ça c'est très dur et donc pour les modèles genre. Même GPT-4 il était beaucoup mieux que 3.5 mais encore c'était pas ouf et là on arrive, les derniers modèles ils commencent à être vraiment pas mal pour ça et donc c'est pour ça que beaucoup disent que ça y est cette année, 2025, on va y aller on va pouvoir mettre des agents un peu partout.
Bruno:
Ce qui te permet en plus sur ces notions de chaînes d'agents c'est que tu peux utiliser des modèles différents potentiellement pour chaque agent et donc profiter des compétences de chaque modèle sur chacun ayant ses forces ou ses faiblesses Oui complètement.
Maxime:
On peut si on pense, par exemple les modèles de Google ils ont un context window assez ouf par exemple il y avait une démo, où une des questions posées au modèle c'est qu'est-ce qui est écrit sur le papier quand la femme se met le papier dans la poche et il mettait un film en entier et l'IA allait, analyser toutes les images et il ressortait la bonne réponse qui était ouf et voilà, en entrée c'est un truc de ouf, enfin la taille de l'input.
Bruno:
Mais là c'est vrai que par exemple on a un agent, C'est encore une fois cette notion d'agentique où t'en as un qui va décomposer le film en une succession d'images analyser chaque image et faire une corrélation ou c'est le même prompt au final qui génère le...
Maxime:
Ça je sais pas si c'était juste un appel à une de leurs API je crois qu'ils le vendaient comme ça et après ce qui se passe derrière c'est sans doute... Là je sais pas c'est un peu leur sauce magique ils l'ont sans doute expliqué à quelque part, une des forces de Google c'est qu'ils ont quand même une grosse force de frappe de data center qu'ils peuvent utiliser vraiment que pour eux et donc du coup, quand il y a des besoins de grosses ressources pour faire ce genre de calcul ils sont là.
Bruno:
Et donc du coup on peut utiliser différents modèles pour chaque agent sans aucun.
Maxime:
On peut utiliser différents modèles et puis différents outils Par exemple, on peut imaginer qu'un des agents, il a un accès très restreint à de la propriété sensible et il peut faire très peu de choses, mais il est là en cas de besoin et les autres, ils peuvent faire un peu plus de choses. Et donc, du coup, après, on joue au Lego, on fait les briques et on essaie de construire un truc qui marche avec ça.
Bruno:
Alors et forcément dans notre communauté de développeurs et développeuses forcément quand il y a des choses qui commencent à prendre de l'ampleur il y a tout un tas de projets open source qui vont se créer pour permettre à d'autres de faire encore plus facilement ce que d'autres ont, construit durement donc il y a toute cette mouvance de ces frameworks, de diage antiques qui ont popé notamment dont Longchain, comment est-ce que toi tu définirais ces frameworks ?
Maxime:
Moi ma définition de framework parce que du coup j'étais web développeur pendant longtemps c'est, Par exemple, si je prends Django, j'appelle ça un framework parce qu'on peut faire une app web avec. Je n'ai pas de définition vraiment officielle de framework, donc j'espère que les gens ne m'ouvrent pas. Du coup, on parle aussi beaucoup de différences entre Angular et React. Angular serait un framework parce qu'il est un peu entier, il suffit à lui-même. Et React était plus une librairie qui a besoin d'être complétée par un peu autre chose, bon même si aujourd'hui il y a quand même, ça a assez complet quand même, et donc du coup Longchain, Lama Index et puis il y en a un peu d'autres en fait, c'est des frameworks, on peut dire que c'est des frameworks Gen AI mais ça va pas être des frameworks web, donc plutôt des grosses librairies, je pense que c'est ça que j'avais dû dire, et voilà donc on peut pas mais c'est vrai qu'on m'avait posé la question est-ce que si on m'a demandé est-ce que si je démarre un nouveau projet est-ce que mon projet je le fais sur LongChain et en fait c'est pas ça c'est à un moment donné tu vas avoir besoin de LongChain si tu veux faire de la GNI ou pas tu veux faire des collapés direct mais si tu veux utiliser LongChain tu vas l'utiliser à l'intérieur d'un plus gros framework web.
Bruno:
En fait si on prend le, comment est-ce que je pourrais dire ça si on prend un framework traditionnel tu vois au sens, Symfony donc toi t'as statué React pour toi c'est une librairie ok acceptons je.
Maxime:
Veux bien dire que c'est un framework.
Bruno:
C'est qu'effectivement en fait c'est un framework web qui te permet du coup de créer une application web là où Longchain du coup ou la main index ce serait en fait des frameworks IA, et donc un framework web te permet de partir d'une requête et de générer du HTML pour ton user là où ton framework te permet en fait de partir d'un prompt, pour générer une réponse mais du coup t'as plus de mainmise que simplement à appeler ton chat GPT pour générer la réponse à ton truc, c'est un peu ça ou je suis couché ?
Maxime:
Ouais non c'est ça, c'est que ça te permet de faire beaucoup plus de choses facilement que si tu devais refaire tout à la main. Par exemple, pour un... Pour prendre le cas qui est utilisé partout, qui est le cas du RAG. Je ne sais pas, du coup, est-ce qu'il faut que je l'explique ou vous...
Bruno:
Tu peux nous faire des fonctions du RAG rapide ?
Maxime:
Le RAG, ça veut dire Retrieval Augmented Generation. Ça se passe en quelques étapes. L'idée, c'est de faire une première phase qui est la recherche de l'information, dans la base documentaire avec la recherche émantique. En utilisant le fait que au préalable on a vectorisé toute cette base de connaissances une fois qu'on a récupéré les bons documents, on les met dans un prompt on reconstruit un prompt avec le contenu de ces documents et la question du utilisateur et on envoie tout ça au LLM qui nous répond. Et en fait si from scratch il doit refaire un système RAG il faut gérer, le fait de d'aller fetcher la data où elle est, donc ça peut être des fichiers ça peut être des API, ça peut être n'importe quoi donc voilà, et là l'avantage de LongChain c'est qu'il a plein de connecteurs qui te font gagner du temps ensuite une fois qu'on a cette data, il faut la découper en chunks pour pas que ce soit trop gros parce qu'on peut pas envoyer des gros documents, au modèle d'embedding et surtout il y a une contrainte technique mais surtout il y a une contrainte de pertinence si on envoie des trop gros morceaux ça ne veut plus rien dire, il faut des ensembles qui parlent du même sujet pour pouvoir les récupérer, et donc là pareil Langshane a plein de petits outils pour découper par paragraphes, par saut de ligne par un peu tout ce que vous voulez, une fois qu'on a découpé en chunks il faut les envoyer aux API des LLM, donc soit vous êtes avec OpenAI ou Mistral et donc du coup vous mettez en dur le code. La requête HTTP pour récupérer ça une fois que vous l'avez récupéré, il faut, ensuite la stocker dans un Vector Store, donc qui est une base de données dédiée au Vector et donc pareil, ça fait plusieurs lignes à faire et je vais m'arrêter là parce que enfin il reste je peux continuer il y a un nombre d'échelons mais, donc du coup ce qui est cool avec Longchain c'est que tout ce que je viens de dire en fait ça, Il y a 3-4 lignes pour vectoriser toute la doc, il y en a 2-3 pour faire la recherche et 2-3 pour servir la réponse. Donc en fait le code c'est assez ridicule, c'est qu'en 6 lignes on fait un truc qui est complètement exceptionnel selon les standards d'il y a 4 ans.
Bruno:
Ce qui est effectivement le but d'un framework, c'est de te faciliter l'accès à tout un ensemble d'un environnement et de te faciliter le travail dans cet environnement là.
Maxime:
Exactement et donc du coup le but de Langchain c'est ça, c'est de permettre de construire rapidement un outil IA qui peut être mis sur le web ou qui peut rester en mode scripting, et en quelques lignes.
Bruno:
Donc si on reprend cet exemple du rag dans un environnement Langchain en fait tu vas avoir le prompt de ton utilisateur qui va arriver tu vas créer un agent qui va le traduire entre guillemets en requête sur ta base vectoriale ou même pas tu fais ta recherche directement tu fais le même embedding sur ta question vers le truc.
Maxime:
En fait tu crées en long chain t'as un objet qui s'appelle, question and answer chain et en gros tu crées cet objet là par exemple moi j'utilise beaucoup Postgres pour stocker les vector store donc tu lui passes tu lui dis en fait j'utilise, Mistral et Postgres, tu lui donnes ça au début, la question du utilisateur et après tu récupères la réponse et tu l'envoies parce qu'il va faire toutes les étapes.
Bruno:
Behind the scene Est-ce que du coup il y a attends comment j'ai posé ma question, il y a un débat on dit parfois que c'est un débat de barbus ou un débat de personnes peut-être un peu trop expérimentées et qui n'arrivent pas à avoir le, J'ai pas trop de barbe alors je sais pas je peux répondre les deux il y a donc parfois ce débat que si tu veux apprendre, de manière efficace le développement ou apprendre le développement web par exemple il faut que tu apprennes à coder 100 frameworks pour connaître les problématiques les vrais sujets, tous les trucs sous-jacents pour mieux utiliser ton framework après et être plus performant, plus efficace il y en a qui vont dire que ça ne te sert à rien autant utiliser ton framework et apprendre à utiliser lui pour être le plus efficace sur ce framework là, est-ce que si j'utilise LongChain est-ce qu'on perd une notion d'apprentissage de ce qu'est, l'IA, de ce qu'est un modèle, de ce qu'est l'IA agendique et de comment ça fonctionne ou est-ce que pour toi au contraire c'est, devenu une nécessité d'apprendre ces outils-là plutôt que d'apprendre à aller, utiliser toutes les API diverses et variées et toutes les briques que tu as évoquées notamment parce que tu vois pourtant l'embedding, la vectorisation, tout ça c'est des sujets qui sont intéressants nous en tant que dev, tu vois, on ne peut pas avoir envie de creuser ces sujets-là.
Maxime:
Je pense que tout le monde a Enfin, tout le monde a un peu raison, c'est évidemment, si plus tu... Plus tu regardes comment ça marche, plus tu comprends en profondeur le tout, plus tu vas maîtriser et tout ça, mais ça demande aussi du temps. Et ça dépend aussi du mode d'apprentissage des gens. Par exemple, moi, je sais que j'apprends beaucoup en bricolant, en faisant des premiers POC. Et une fois que ça marche, je suis un peu excité, ça me donne de l'énergie pour continuer. Et il y en a qui vont avoir plus envie de comprendre vraiment en profondeur comment ça marche dès le début pour ensuite l'utiliser correctement mais sinon ils vont se sentir un peu mal à l'aise, ils vont se sentir perdus, je pense que ça il y a une partie où il faut se connaître soi et voilà, et bien sûr il faut je pense si on veut être sérieux sur le sujet il faut comprendre les fondamentaux donc qu'est-ce que c'est qu'un embedding comment ça marche. Comment ça marche dans un Vector Store surtout que par exemple, du coup pour Postgres il y a une extension qui s'appelle PG Vector et en fait quand tu regardes c'est une requête SQL qui est hyper bateau à faire donc une fois que tu as compris ça déjà je pense que ça t'effraie un peu moins, et après tu peux aller voir l'algo derrière de recherche et là ça peut te re-effrayer. Je suis très partisan d'apprendre en profondeur comment ça marche parce que c'est vrai qu'en tant que professionnel de l'informatique il y a plein de fois pour éviter des bugs ça a beaucoup de vertus de faire ça, et après le chemin pour arriver à creuser en profondeur ça dépend vachement des gens et puis après on a tous un instant T, généralement on bosse pour des entreprises qui ont leurs priorités et il faut dealer aussi avec ces priorités perso on a pas forcément tout de suite, le temps de creuser et voilà quoi mais bon donc du coup je sais pas, j'ai fait une réponse un peu normand je réponds un peu.
Bruno:
Les deux c'est effectivement une réponse intéressante parce que ce que tu dis c'est que c'est un moyen de se mettre rapidement de pied à l'étrier et c'est un moyen aussi de commencer à voir comment ça fonctionne et de se donner des pieds sur des choses à creuser en fait, mine de rien.
Maxime:
Ouais, et en tout cas si la question c'est si on utilise j'en chaîne on n'apprendra jamais ce qui se passe en profondeur, je ne pense pas. Au contraire je pense que une des choses pour laquelle a été fait l'enchain c'est que ce soit pédagogique quoi. Après comme tout framework c'est améliorable mais, Mais ça répond plutôt assez bien. Même si, je dis ça, je vais dire le contraire, parce que parfois le code peut être un peu obscur si on veut vraiment tout comprendre. Mais en fait, ça se comprend bien à partir du moment où on regarde quelques schémas. Le schéma d'un rag, il se comprend assez bien. Et après, par exemple, si vous prenez la version Python, vous vous baladez dans le code et vous allez retrouver ce qui se passe quand même sans que ce soit très compliqué. Et plutôt rapidement.
Bruno:
Je me permets une petite digression sur ce fonctionnement de RAG parce que ce que tu m'as évoqué c'est effectivement le fonctionnement qu'on retrouve le plus souvent sur les formats de RAG parce qu'effectivement la base vectorielle elle a quand même beaucoup d'intérêt dans ce genre de, structuration de l'information bien évidemment, mais j'ai vu passer il me semble d'ailleurs que c'était à ce micro une personne qui a eu une approche un peu différente où ils avaient déjà une base de données en fait SQL bêtes et méchantes, qui contiennent déjà énormément d'informations, et ils utilisaient du coup un LLM pour générer à partir de la question d'un user, la requête SQL, qui permet d'aller récupérer de l'information, et donc tu vois, il n'y avait pas du tout de notion de vecteur, mais c'était le LLM, en fait, qui arrivait à structurer sa requête SQL, pour aller chercher l'information dans une base très traditionnelle plain text, de manière, hyper classique et qui, visiblement, ils avaient quand même des résultats qui étaient, hyper intéressants parce que tu as tous les bases vectorielles notamment quand tu commences à avoir beaucoup de métalata ça peut commencer à galérer un peu en termes de temps de réponse et ce que eux du coup n'avaient pas parce que là le SQL te permet d'avoir quand même beaucoup plus de choses, je te balance ça vraiment à chaud je sais pas si t'as qu'est-ce que t'en penses en fait.
Maxime:
C'est hyper complémentaire en fait la base documentaire on va pouvoir mettre de la donnée non structurée textuelle, plein plein de choses des livres, des CR de réunion des conversations Slack, plein plein de choses et donc il y a une phase, ces informations là on peut pas généralement trop les mettre dans une table SQL parce que ça fait pas de sens, il y a toujours forcément la donnée SQL hyper importante, hyper structurée je sais pas la table des commandes d'une entreprise par exemple c'est hyper important et je rajouterais des bases de connaissances qui sont exposées via des endpoints d'API et qu'on peut juste requêter. Et donc du coup, ce qui est cool, c'est qu'on va pouvoir manier les deux et le... Le fait de requêter la base de données en SQL c'est ce qu'on appelle le texte ou SQL, il y a j'en ai parlé rapidement tout à l'heure il y a un truc dans LongChain qui permet de le faire c'est une des chaînes de LongChain c'est un des workflows où tu as une question en entrée et on va, récupérer la description de la base de données ou pas en fait si c'est toujours la même base de données, tu peux avoir ton prompt qui explique bien la table en question, et ensuite tu as soit un modèle, un LLM dédié qui est fine-tuné pour transformer une question en texte SQL, soit les modèles classiques, ça marche aussi pas mal, qui génèrent la requête SQL et qui après l'exécute et là on a une donnée et ce qui est cool c'est que, pour la partie agent si tu lui dis bah t'as accès à cette base de données, et tu peux faire des requêtes SQL avec cet outil bah il va pouvoir faire les deux il peut décider bah tiens je vais chercher là ou là il va.
Bruno:
Agréger tout ça après.
Maxime:
Il agrège comme on peut si tu lui as donné un outil pour agréger ou s'il n'y a pas beaucoup de données c'est facile s'il y a du travail il faut peut-être qu'il écrive du code à la volée, et il s'en sort mais oui il n'y a pas du tout c'est vrai que je parle beaucoup de des vector store parce que c'est le c'est comme ça que beaucoup ont fonctionné les rag mais tu peux faire, en fait tu peux faire du rag sur du SQL c'est, c'est le même principe mais pas et.
Bruno:
Donc visiblement avec des outils comme LongChain c'est juste un connecteur différent donc c'est aussi facile d'utiliser l'un que l'autre.
Maxime:
Ouais et c'est en fait c'est les deux, le question answering qui permet de faire un rag en quelques lignes et le, je sais plus comment il appelait la même chose pour parler à sa base de données c'est un peu les deux features stars de LongChain dès le début et par exemple moi j'ai je trouvais ça ouf de parler à sa base de données comme ça à n'importe quelle base de données, en avance et moi je l'ai recodé sur Longchain.js au tout début, parce que je fais quand même partie de la, team qui aime bien mettre la main dans le cambouis pour comprendre profondément comment ça marche et je me suis dit pour comprendre comment ça marche je vais le coder sur Longchain.js parce que c'était beaucoup plus jeune à l'époque et du coup il manquait cette feature qui était demandée par beaucoup de monde et je l'ai fait. Et donc du coup, maintenant, c'est vrai que c'est hyper clair comment ça marche.
Bruno:
Oui, parce que c'est vrai qu'on n'a pas évoqué ce point-là, mais donc LongChain, c'est un framework qui se fait majoritairement en Python. Mais il y a des déclinaisons qui existent dans d'autres langages, donc JS.
Maxime:
Oui, donc il y a Alaba, c'est Python. Ils ont lancé JS peu de temps, très rapidement, après le début de la phase d'hypercroissance qui était 3 mois après Challenge GPT, un truc comme ça mais pendant longtemps c'était dur, pour les contributeurs JS de rattraper toutes les fonctionnalités de Python parce qu'il y avait plus de contributeurs sur Python et puis ça avait de l'avance donc c'était un peu la course et une fois qu'ils ont levé des fonds, ils ont mis quand même une bonne équipe sur la partie JS et puis là, je pense que c'est à peu près l'Isofuture depuis un petit moment, et et voilà il y en a un en Java aussi Longchain4G, je sais plus si c'est des français qui l'avaient fait, je sais plus je sais que ça existe et moi je m'étais chauffé je me suis chauffé à en faire un en PHP. Du coup je m'étais dit qu'il fallait pas que je le fasse parce que ça allait être un projet qui allait me prendre beaucoup de temps et en fait quand j'étais chez Todo il y a un client qu'on a eu besoin, Et ça m'a servi de bonnes excuses pour sacrifier mon mois d'août pour faire ça. Donc, il y a des développeurs PHP qui sont contents. Et ma copine était moins contente cet été-là. Et du coup, aujourd'hui, le framework s'appelle Elephant. Pour le petit mot LM, Elephant. Et c'est open source. C'est une version beaucoup plus petite que Longchain. Mais quand vous avez un projet PHP et que vous voulez commencer, ça permet d'aller beaucoup plus vite.
Bruno:
Canon. Après, je comprends qu'il soit passé assez vite au JS, parce que c'est effectivement un des langages les plus répandus aujourd'hui. Je comprends ton envie de le faire en PHP, parce que moi aussi, ça a été un de mes langages préférés pendant longtemps. Il n'y a pas aujourd'hui de moyens de traduire facilement, le code d'un environnement à un autre, et du coup, on pourrait se croire que ce genre de projet serait les premiers à explorer ce genre de solution, de traduire automatiquement ton framework ?
Maxime:
Je pense qu'ils le font. D'ailleurs, moi, quand j'ai commencé à contribuer sur la partie JS, j'ai fait beaucoup ça. Je prenais certains fichiers, je mettais à CHGPT, vas-y, tradu-moi ça en JavaScript. A l'époque, c'était moyen, mais ça permettait de gagner pas mal de temps. Et je sais qu'ils avaient mis en place des trucs de la revue de PR automatisée, la revue d'issue aussi automatisée. En fait, ils ont quand même vachement automatisé beaucoup, beaucoup de choses. Et ouais, du coup, c'est cool. Aujourd'hui, le CEO Harry Sunchez, ils ont balancé un agent open source qui est son personal assistant qui lit ses mails pour lui. et qui les trie. Donc il dit que c'est en prod, que lui il l'utilise depuis plusieurs mois. Du coup je pense que ça donne une bonne idée du niveau d'automatisation qu'ils s'imposent à eux-mêmes en interne.
Bruno:
Donc ça veut dire que t'as des agents, aujourd'hui t'as des IA qui sont entre guillemets contributeurs du projet en faisant des reviews de toutes les PR qui passent ?
Maxime:
Alors il y a, comment ça s'appelle déjà l'IA codeuse, la plus celle Delvin non ? Il y a Curseur, l'IDE, mais il y a... Je crois que c'est Delvin ou je ne sais plus, un truc dans le genre qui... Donc c'est une boîte qui a dit arrêtez d'embaucher des développeurs, embaucher notre IA et donnez-lui des issues au GitHub et ça va, il va coder pour vous. Donc il y a une boîte qui fait ça. Je ne sais pas si Langchain utilise ça pour coder, mais ça existe. Les retours sont moyens, enfin ça marche. Comme tout en ce moment, pour certains use case ça marche bien donc pour certaines features ça va marcher bien et pour d'autres ça fait un peu n'importe quoi mais par contre ils font de la revue de code, j'ai pas regardé récemment mais à un moment donné ils en faisaient quoi donc tu fais une pull request et t'as l'IA qui va relire qui va relire ça j'ai un, j'ai un ami qui a un ancien collègue qui est au UK qui s'appelle Matt qui a fait un projet open source comme ça où tu peux le n'importe qui peut le brancher et ça relie, avec GitHub l'APR de la personne et c'est vrai que c'est franchement pas mal parce que c'est comme si t'avais un reviewer qui est quand même pas mauvais surtout avec, l'augmentation des capacités d'LLM qui te relie ton code tout de suite qui peut te cacher des bugs, qui te propose des refactos, franchement c'est vraiment cool.
Bruno:
Est-ce que t'as vu l'annonce d'NVIDIA la semaine dernière ? Je ne sais pas si t'as vu, ils ont annoncé toute une nouvelle série de cartes graphiques grand public en plus est-ce que tu as vu ce que le CEO de Nvidia a balancé, il a fait une phrase un peu choc que je trouvais assez ouf, il a dit qu'avec l'avancée des LLM, les départements IT vont devenir des ressources humaines pour les IA c'est-à-dire qu'en fait il n'y a plus à y avoir de développeurs on va être du recrutement d'IA qui vont générer du code.
Maxime:
Du méta-développement, je pense qu'on va petit à petit aller vers ça avec sans doute une partie de notre métier restera sur des features un peu complexes au moins dans un premier temps mais je sais que le CTO d'Amazon avait dit ça aussi, il y en a beaucoup qui pensent ça, je suis plutôt d'accord, après tout dépend de la définition de ça, mais c'est vrai que si on prend du recul, si on voit les capacités des IA à générer du code, on est déjà, en tout cas moi dans mon métier, je suis déjà en train de... De demander régulièrement à ChatGPT de m'écrire des fonctions et donc du coup je suis déjà dans ce rôle un peu de management de l'IA qui écrit du code et si on tire le trait sur plusieurs années, le tooling va être amélioré en mode ils ont accès à tous les répons, ils vont pouvoir aller chercher de la doc de tous les frameworks, ils vont pouvoir coder, lancer la suite des tests, voir si c'est pas déconnant ce qu'ils ont fait et ensuite nous les proposer donc oui et nous on sera plus, je pense que la compétence d'architecture IT va être plus importante et on va être plus des architectes, comme sans doute les architectes les vrais architectes seront juste font les plans et puis ils laissent d'autres gens les faire nous on sera ça on fera les architectes des, programmes puis on les verra évoluer assez rapidement et puis on testera ça et on aura des IA pour nous conseiller dans l'architecture je ne sais pas à quel moment on va y arriver mais ça risque on s'y dirige petit à petit et. Je sais que ça fait ça rend triste ou ça fait peur à beaucoup de devs parce que comme, comme beaucoup on aime bien coder c'est un peu des petites énigmes c'est un peu un jeu de coder on aime ça et c'est vrai que se voir un peu enlever notre jeu c'est... Il y a un côté vraiment pas cool se dire que je sais pas dans 20 ans tous les petits programmes il y aura une IA qui les feront on sera vraiment que pour la rigolade il y a un côté un peu triste que je partage et après, bon voilà c'est la vie quoi.
Bruno:
C'est Satya Nadella aussi qui disait que le CEO de Microsoft qui disait que, il avait sorti une tribune je crois fin décembre ou début janvier comme quoi le SAS était mort d'après lui parce qu'en fait, les IA effectivement vont avoir une capable d'ingestion d'informations et de régurgitation qui va tellement augmenter qu'aujourd'hui tu as beaucoup de SAS au final qui sont un peu que ça c'est à dire que tu leur donnes un truc et le SAS va te le reformater tout le mettre à disposition ou le renvoyer à quelqu'un d'autre, et donc les IA en fait vont complètement remplacer ça ou en tout cas notre manière de concevoir des SAS va drastiquement changer.
Maxime:
J'en parlais cette semaine ou la semaine dernière avec Thibaut le CEO de partout où, on réfléchissait à ça et il me parlait de la même chose et une des métriques, Pour évaluer tout ça, je me dis, c'est le nombre de décisions, enfin le pourcentage de décisions totales sur Terre qui est prise par les humains versus les IA. Aujourd'hui, quasiment tout, enfin il y a encore ça, ça a un peu changé. Une grosse partie est prise par les humains.
Bruno:
C'est ça encore, on peut en débattre.
Maxime:
C'est vrai, c'est vrai, ça dépend de notre question d'IA.
Bruno:
Non mais toi aussi, t'as le high frequency trading qui existe depuis pas mal de temps, qui sont au final des algorithmes qui prennent des décisions d'achat et de vente et ils en prennent un rythme beaucoup plus élevé que ce que nous on fait mais.
Maxime:
Est-ce que du coup c'est pour ça, est-ce que ça compte comme de l'IA ou de l'algo c'est vrai que si on prend ça déjà oui et puis tout ce qui est tous les systèmes dans les avions, dans plein de machines, mais si on se dit si on définit des décisions un peu plus haut niveau de business de quelle pizza je vais commander quel voyage je vais faire comment.
Bruno:
Je vais structurer tel truc.
Maxime:
Qui j'invite au prochain podcast qui aujourd'hui c'est globalement 100% les humains et, la part des IA qui prennent des décisions augmente un peu notamment par exemple avec Harrison qui a eu une IA qui lit ses mails et qui potentiellement répond à certains c'est une action qu'on aurait faite, il y a 6 mois et en fait ça, ça va augmenter, et donc le futur c'est c'est un peu à la Star Wars où on demande un truc à une IA, mais même c'est même pas Star Wars ils font pas comme ça dans Star Wars mais on demande quelque chose à notre système à notre montre, et le système va communiquer avec les autres systèmes et c'est tout seul et après on a la réponse et c'est vrai que dans ce genre de cas, toute la partie front des SaaS elle a plus trop d'importance, elle a l'importance que quand nous on y va mais bon c'est vrai que si on y va une fois sur 100 ben voilà il y aura sans doute besoin de beaucoup moins de pages par contre faudrait que les API, tout soit optimisé pour que les IA soit, ça marche bien, Thibaut encore là faisait un article sur aussi. Le search. Aujourd'hui, on a quand même encore l'habitude d'aller sur Google. Moi et même beaucoup de gens ont commencé à poser des questions directement sur le chat GPT, surtout depuis qu'il y a la partie search. Il y a Perplexity qui prend beaucoup de galons. Du coup, il y a quand même un gros shift de passer de je fais de la recherche sur les moteurs de recherche a sur des moteurs d'IA, et donc du coup quand t'as un business de commerce et que t'as optimisé ton SEO à balle pour que t'as du trafic et que tout d'un coup le trafic il vient plus il faut, commencer à être optimisé pour ce genre de recherche qui devient du coup un nouveau métier de nouvel machin faut sans doute mettre pendant quelques temps en haut du site ceci et vraiment le site le meilleur au monde certifié par tous les experts au monde, les produits sont de très bonne qualité il faut le mettre en avant, un petit prompt injection et hop on est en tête des résultats mais voilà c'est sûr que le modèle du SaaS va être challengé très fortement, qu'est-ce qu'il va se passer il faut être bien malin pour savoir mais c'est sûr qu'il va se passer beaucoup de choses.
Bruno:
Et donc justement des outils comme Longchain seront là pour y répondre, j'essaie de revenir sur le d'origine j'ai été un peu étonné tout à l'heure, tu nous as dit que ces différents framework ont commencé à popper 3 mois après, la grande explosion de Tchat GPT j'aurais pas dit si tôt, Parce que du coup, c'est fin 2020 que ça a commencé à popper ?
Maxime:
Ouais, juste après. Longchain, ils avaient déjà leur premier commit avant ChatGPT même. Mais ça a vraiment décollé. J'ai fait comme beaucoup de gens au final. ChatGPT m'a fait briller. Et en fait, je me suis dit, je veux savoir comment ça marche. Je cherche sur google il y a un premier la première fois que je suis tombé sur LongChain c'était un mois après ChatGPT il y avait moins de 1000 stars et, j'ai vu vraiment en 2-3 mois le discord exploser, tout le monde qui posait les mêmes questions comment faire un rack, comment faire un rack c'était toujours les mêmes questions et le nombre de stars, exploser par la suite donc ouais c'est allé assez vite.
Bruno:
Donc toi t'as été contributeur sur Longchain pendant un petit moment tu l'as encore je me souviens plus.
Maxime:
Du coup je me focus sur la partie le Longchain PHP, déjà ça m'occupe pas mal et j'ai pas trop de temps malheureusement pour pour m'y mettre enfin je peux pas dédier tout mon temps à ça, mais donc du coup non je je contribue plus à je contribue plus à Longchain en direct en tout cas pas en ce moment, avec ma boîte on utilise la version Python donc peut-être il y aura quelques PR qui vont arriver dans quelques temps mais je me focus sur la partie PHP et puis, je parle du sujet, aux gens Et.
Bruno:
Au-delà de cette augmentation de la notoriété de LongChain que tu as pu voir, qu'est-ce que tu as vu comme autre évolution de cette communauté de framework, au fil des années maintenant parce qu'on peut parler en années.
Maxime:
Ouais, il y a eu, au début il n'y avait vraiment que Longchain pendant quelques mois, ensuite il y a eu Lama Index, et qu'est-ce qui s'est passé ?
Bruno:
Il y a eu des breakechanges, il y a eu des gros changements de paradigme, où au final c'est un ajout de connecteurs qui se fait au fil de l'eau.
Maxime:
En fait c'est un peu comme une start-up qui est en hyper croissance, ils ont eu du jour au lendemain énormément de contributeurs et donc du coup on sent que la code base a grossi rapidement, enfin c'était le cas, mais c'est pas le cas de tous les projets open source. il y a certains projets open source où. Les créateurs des librairies ont pris plus le temps de bien réfléchir à l'architecture, ils ont plus le temps de faire des réfractos au fur et à mesure et l'Enchaîne c'est un framework issu de la guerre il y a plein de gens qui arrivent qui veulent faire plein de choses, il y a plein d'idées et, les gens disent il me le faut donc ça merge, ça merge, ça merge et après il y a des gros breaking change pour simplifier notamment, pour l'aspect sécu pour les entreprises parce qu'il y avait une partie communautaire mais je pense que c'était très difficile pour eux de vérifier qu'il n'y avait pas un petit truc malicieux dans le code parce que on l'a vu plein de fois avec les, javascript notamment, c'est assez facile d'introduire un truc, donc ouais ça a grossi assez vite d'ailleurs ils se sont fait un peu critiquer Longchain pour ça c'était un poil unfair je trouvais et puis comme toujours, t'as la vague de en fait je peux refaire tout ça sans le framework, et en fait oui on peut toujours tout refaire sans le framework mais c'est juste c'est plus long ça peut être plus adapté si t'as un cas d'usage plus petit, plus scopé tant mieux, si tu sais le faire tant mieux, si t'as envie de faire ça tant mieux mais ça ne veut pas dire que le framework ne sert à rien c'est comme tous les framework.
Bruno:
Et puis tu risques d'avoir plus de difficultés à faire évoluer ton app si tu n'utilises pas un framework qui lui va évoluer parce qu'il y a toute une communauté derrière.
Maxime:
Et puis si tu as la pression du business il vaut mieux te concentrer sur les lignes de code dédiées à ton métier que à ton framework et après potentiellement ton métier veut peut-être dire que l'anchaine n'est pas super adapté pour ce que tu veux faire parce que c'est trop compliqué pour un certain truc, et puis là tu recodes cette partie là, tu peux utiliser qu'une seule partie de longchain, Par exemple, un des trucs tout con, mais qui fait de chasse, il y a le mécanisme de retry, genre si OpenAI ou Mistral ne répond pas, ça retry jusqu'à ce que ça marche. Voilà, c'est con, mais c'est des petites features, quand tu les codes, tu n'es jamais sûr de toi, tu peux introduire des bugs, et puis tu n'as pas le temps.
Bruno:
C'est le genre de petites features qu'elles tu penses une fois que tu commences à rencontrer le problème, et donc tu as déjà eu un problème potentiellement en prod.
Maxime:
Voilà, tu as déjà planté ta prod une ou deux fois.
Bruno:
Donc c'est gênant, quoi.
Maxime:
Voilà, c'est ça.
Bruno:
T'as parlé un peu de la main d'ex est-ce que c'est comme les autres environnements de framework où il y a une guerre il y a une guerre Symfony-Zend, maintenant c'est plutôt Symfony et Laravel mais est-ce qu'il y a une guerre entre, Langchain et la main d'ex.
Maxime:
Il y a eu une guerre pendant un an je dirais une période d'un an où ça se fightait, sur Twitter ça se fight toujours sur Twitter. Mais là ça s'est calmé le je sais j'ai pas regardé ma index qu'il faisait récemment j'en entends moins parler alors je je sais pas comment le projet a évolué euh je sais pas Chez que LongChain, ils ont beaucoup évolué. Ils ont sorti LangGraph, leur framework d'agent. Ils ont aussi toute leur suite pour faire de l'observabilité qui marche vraiment bien. En gros, c'est intégré à LongChain. Donc, il suffit de se créer un compte sur le cloud et de mettre deux, trois variables d'environnement. Et on a toute l'observabilité qui remonte sur le cloud. Et du coup, c'est top. On peut débugger les prompts et tout ça. Donc ils ont vachement bossé sur l'écosystème du coup pour ça j'ai l'impression mais peut-être que j'ai des conneries peut-être qu'il y a des gens en live qui vont dire je raconte n'importe quoi mais que Longchain a un peu en tout cas gagné cette partie là, d'avoir un tooling un peu complet et qui marche pas mal et ils ont sorti, ouais donc il y a ce truc d'observabilité, le framework d'agents où là ils vont sortir plein d'exemples open source je pense que les gens moi je vais réutiliser une partie de leur code c'est vraiment top ce qu'ils ont fait et, qu'est-ce que je voulais dire. Observéité, agent et ouais ils ont lancé une université aussi avec plein de vidéos, pour expliquer en fait si vous démarrez dans l'IA générative je pense que ça vaut vraiment le coup d'aller voir ce qu'ils ont fait parce qu'ils sont généralement très pédagogues ils savent vraiment bien de quoi ils parlent et, je ne sais plus si, je ne crois pas que ce soit payant mais peut-être il y a plein de vidéos qui expliquent super bien ça donc je dirais, du mon point de vue là l'écosystème me.
Bruno:
Semble plus complet.
Maxime:
Et après la main d'ex est peut-être restée dans sa partie très manipulation de data voilà.
Bruno:
Ok On a beaucoup parlé aussi du coup de LLM et de tous ces outils qu'on peut du coup connecter est-ce qu'on peut aller au-delà des LLM et connecter d'autres types d'IA, aujourd'hui parce qu'il y a encore d'autres types d'IA qui existent, tu parles des IA de recommandations, il y en a plein qui existent ou est-ce que ça reste encore comme très centré aujourd'hui autour des LLM.
Maxime:
En fait ce qui est cool c'est que tout comme souvent dans l'informatique, tout est un peu compatible. Ça reste des grosses briques de Lego. Si on reprend le... Les workflows qu'on appelle workflow, mais ça peut être un workflow classique, on peut mixer à un moment donné un appel à un endpoint où il y a du machine learning classique derrière, je vais spoiler un petit peu un talk, qu'on aura au meetup de Backmarket mais ils ont fait un truc hyper cool sur le support client, je ne vais pas tout raconter mais en gros ils utilisent les LLM pour extraire des attributs d'une conversation, et à partir de ces attributs ils font tourner un modèle de ML classique, qui leur donne des infos sur le support client et donc c'est exactement ce que tu disais on utilise vraiment les deux parce que les LLM ils sont pas forts pour tout faire il y a des tâches où si on peut faire en algo classique il vaut mieux le faire en algo classique et il y a des algo qui marchent beaucoup mieux des petits modèles de machine learning classiques, comme ce qu'ils ont utilisé quoi. Donc ça se marie bien les deux.
Bruno:
Calon.
Maxime:
Le bon outil pour la bonne tâche quoi.
Bruno:
Est-ce que toi t'as déjà une... Alors sans prédire l'avenir parce que bien malin serait celui qui arriverait comme tu disais tout à l'heure, mais est-ce que toi t'as une petite idée de ce qui se prépare, de l'après long chain ou de l'avenir de tout ça. Pour toi c'est un truc qui va rester c'est une phase de transition est-ce.
Maxime:
Que les framework vont rester.
Bruno:
? ou est-ce que ça va évoluer vers autre chose ?
Maxime:
Je pense que, en gros, Mon hypothèse, c'est que les IA vont bosser à notre place de plus en plus. Ils vont nous aider à faire plein de choses. Et pour leur permettre de faire des actions à notre place, il faut l'accès à la data, être clair sur ce qu'elle doit faire et avoir les moyens de faire des actions. Donc l'accès à la data c'est pas être ce qu'on disait tout à l'heure pouvoir faire une requête SQL et pouvoir faire des actions c'est donner aux, agents la possibilité de faire des calls API avec function calling, je peux peut-être, rappeler comment ça marche le function calling parce que c'est vraiment c'est vraiment central pour comprendre comment fonctionnent les agents, donc en gros, si vous avez joué avec les LLM vous avez vu à un moment donné qu'on envoie un prompt et ça nous répond du texte et le function ce qu'on appelle le function calling c'est que on peut en plus d'envoyer le prompt on peut lui envoyer des définitions de fonctions et ces définitions de fonctions c'est du code qu'on a sur notre serveur et en fait l'IA au lieu de nous répondre du texte. La réponse classique qu'on demande à LLM, en fait, ils peuvent répondre « Appelle telle fonction avec tel argument.
Bruno:
» L'argument étant déduit par le LLM du schéma, oui.
Maxime:
On lui décrit vraiment « Telle fonction, elle peut prendre tel paramètre, ces paramètres, ils veulent dire ça.
Bruno:
» Oui, mais la valeur de l'argument que ton agent va passer dans ta fonction, il le déduit, entre guillemets, du prompt qui est passé avec toutes les définitions de fonction.
Maxime:
De la réponse en fait dans la réponse du LLM il y a vraiment le Jzen avec tout le tout le calls le fonction oui non ça je suis d'accord parce que ce.
Bruno:
Que je veux dire c'est qu'en fait en entrée t'as un user qui va dire par exemple.
Maxime:
Trouve moi.
Bruno:
Le nom de toutes les femmes de tous les.
Maxime:
Joueurs de l'équipe de France.
Bruno:
Et en fait tu vas avoir une fonction je sais pas search et en fait la valeur du paramètre search query il va le déduire de la requête on va dire je veux chercher les joueurs de l'équipe de France.
Maxime:
C'est ça oui oui complètement en fait dans le prompt il va vraiment faire ce qu'on lui a demandé dans le prompt, et donc il récupère on peut récupérer si on lui en a envoyé plusieurs fonctions il va récupérer le nom de la fonction et et le, et tous les paramètres par exemple un cas et ça il est pas obligé d'appeler la fonction en fait il peut l'appeler au bon moment donc un, pour comprendre un des petits use case que j'avais fait, J'avais fait un sales Theodo en IA, où en gros, c'était un chatbot, où on arrivait et c'était un client hypothétique qui lui demandait « Bonjour, j'ai un projet à faire, je veux refaire un site e-commerce pour vendre je ne sais pas quoi ». Réaliser bien sûr et dans la conversation à un moment donné une fois qu'il y avait assez d'informations de récupérer le mail de la personne, et une fois que le mail était récupéré, de m'envoyer un mail avec la personne en copie et le résumé de la conversation et donc du coup le chat il posait des questions et puis au bout d'un moment il est hyper intéressant je vous propose de vous mettre en relation avec Maxime pour la suite, quel est votre mail la personne tapait le mail et puis dès que on détectait, dès que l'IA détectait qu'il y avait un mail dans la réponse au function calling c'était, il disait appel la fonction send mail tout, le mail qui vient d'être pris le résumé de la conversation body machin, subject machin et puis moi je récupérais le mail donc ça c'est un des exemples, et pour et c'est pour ceux qui nous écoutent, c'est vraiment important que vous compreniez comment ça fonctionne parce qu'après, franchement, tous les autres, logiciels IA vont se baser là-dessus. Ce sera que du Function Calling.
Bruno:
Mais d'ailleurs, ça rappelle le fonctionnement des plugins qu'il y avait à un moment sur ChatGPT. Je ne sais pas si tu avais exploré ça. Je ne sais pas si tu te souviens de ça à un moment sur ChatGPT. Avant qu'ils fassent leur custom GPT, ils avaient un GPT Store avec des plugins. Je ne sais pas si tu avais testé.
Maxime:
Je ne sais plus.
Bruno:
Ce qui était assez marrant en fait c'est que tu créais une API avec un ensemble de endpoints, et tu fournissais à ChatGPT en fait un fichier json qui disait voilà mes endpoints et tu expliquais en français, en anglais, en swahili, en ce que tu veux, le but du endpoint et ce qui attendait en entrée et c'était ChatGPT qui décidait quand et comment il allait appeler ton plugin.
Maxime:
C'est exactement ça c'est exactement ça c'était les premiers, le début du function calling, ouais. Mais c'est complètement ça, ouais.
Bruno:
Du coup, je te demandais ta vision sur la suite pour ces outils-là. On a une question qui est arrivée sur le live qui veut savoir ton avis sur l'émergence d'outils plus graphiques pour permettre à des gens non-dev de construire justement des agents.
Maxime:
Alors, c'est une super question. Je pense que, En fait, un des outils qui va arriver, je ne sais pas quand, mais dans pas trop trop longtemps, parce que les modèles sont pas mal, je dis ça parce que le code React, je demande souvent une première version à GPT-4O et ça marche assez bien. Mais on peut complètement imaginer si on n'est pas développeur d'avoir une interface un peu, un écran et parler ou prompter on s'en fout de dire les changements qu'on veut et de voir, un rafraîchissement en direct de la page qu'on veut faire il y a quelques boîtes qui se lancent là dessus il y a V0 de Vercel je ne sais pas si tu avais vu passer, Vercel a sorti Vercel c'est la boîte derrière le framework Next.js ils ont servi ils ont sorti V0 où on peut prompter dessine-moi une interface qui fait ça et en fait ils proposent 4 versions du site, et avec tout le code React donc t'as plus qu'à copier-coller et donc ouais. En fait une des limitations aujourd'hui c'est que c'est un peu lent et un petit peu lent quelques secondes d'attendre le retour du function calling pour afficher les changements mais comme les réponses vont aller de plus en plus vite, je pense que dans 3 ans même moins, il y aura beaucoup de product managers qui pourront faire des pages entières en parlant l'écran tiens rajoute moi un bouton bleu en bas à droite, ah non pas celui-là plutôt le style de tel autre site machin.
Bruno:
Tu nous parles d'agents qui permettent de générer du coup des interfaces à code mais la question du, j'ai pas compris la question était dans l'autre sens est-ce qu'on va avoir des outils qui permettent à des gens qui ne sont pas dev de créer des agents et donc de pouvoir en fait sur un outil très graphique de pouvoir agencer ces blocs de j'ai mon premier agent qui a tel appel qui va pouvoir faire appel à telle fonction, et de créer de manière, à la souris en.
Maxime:
No code, oui parce que en fait c'est pas c'est assez simple en fait à configurer un agent, en fait à partir du moment où, où l'agent il y a déjà des, L'accès à une API, l'accès à une base de données, l'accès à certains outils comme une recherche Google est présent dans le logiciel. En fait, c'est comme aujourd'hui avec ChatGPT. On peut lui dire, tiens, oui, je t'autorise à faire du web, je t'autorise à faire des images. Et bon, là, ce sera un peu plus compliqué, mais tu peux lui donner ton prompt, la liste des outils, ce qu'il a le droit de faire globalement. Et en fait comme l'agent il n'y a pas besoin de coder étape par étape ce qu'il va faire vu que c'est pas déterministe ben voilà c'est fini t'as ton agent et après ce qui va être, oui cette partie là est facile, ce qui va être plus embêtant c'est de faire les branchements avec les API et de permettre tout ça mais ça, déjà un peu avec Make on peut faire quelques trucs simples, il n'y a pas la partie agent parce qu'il faut que ça boucle sur soi-même et mec c'est quand même, un workflow mais je pense qu'ils vont le proposer tous ces outils là ça va être, ça va arriver rapidement je pense en 2025 Donc.
Bruno:
Toi tu vois les outils comme mec arriver sur ces idées d'IA gentil qui te permettent de créer des agents en fait des chaînes d'agents de manière de plus en plus facile.
Maxime:
Ouais je vois un peu tout le monde s'y mettre, Après la bataille ça va être de comment les rendre très fiables, c'est là où c'est comment on les débug, comment ce sera potentiellement un peu plus dur mais... Mais je pense que pour des use cases simples, ça arrive très vite. Nous, on va en proposer cette année, ce genre de choses.
Bruno:
Canon. Hâte de voir ça, du coup, en vrai. Écoute, merci beaucoup, Maxime, pour toute cette discussion. J'aurais deux dernières questions pour toi qui sont les questions rituelles du podcast. La première, c'est est-ce qu'il y a un contenu que tu souhaiterais partager avec l'ensemble des auditeuristes ?
Maxime:
Il y a un bouquin qui a été fait par, les fondateurs de Théodaux qui s'appelle le Lean Tech Manifesto et pour tous ceux qui s'intéressent aux questions de l'agile et du Lean dans l'IT, je le recommande ils ont mis beaucoup d'efforts pour faire ça et il y a plein de choses secrètes de comment on bosse, c'est très cool et, si je voulais conseiller un autre bouquin, pas du tout dans la tech sur l'écologie, il y a en fait il y a une femme dont je suis fan c'est, toute l'équipe de Our World in Data je sais pas si tu vois en haut c'est un site, de chercheurs à Oxford qui récupère plein de données sur le monde et qui en font des graphiques et des analyses et ils en font plein sur l'écologie et par exemple c'est grâce à eux que j'ai appris que. Manger local ça a beaucoup moins d'impact que ce qu'on mange donc par exemple vaut mieux manger une banane qui vient de l'autre coin du monde que une côte de bœuf qui vient de l'agriculteur à côté quoi en termes d'impact carbone après il ya plein d'autres, facteur à prendre en compte quand on se fait manger. Mais en fait, ils sont vraiment généreux, ils sont hyper précis, hyper scientifiques sur nos problèmes. Et donc, elle a sorti un bouquin qui s'appelle It's not the end of the world. Et elle reprend un peu tous les... un peu certains mythes sur l'écologie. Et en fait, un des trucs, c'est qu'elle appelle à ne pas sombrer dans le pessimisme, mais justement à dire qu'il y a encore plein de choses à faire, on est plutôt en train de changer, et, et voilà, et en fait comme je sais qu'on est un peu il y a beaucoup d'éco-anxieux autour de moi j'essaye de le filer parce que ça, à la fois ça rassure mais sans trop rassurer parce qu'elle dit pas, il n'y a pas de problème parce qu'il y a clairement un problème mais elle donne des clés pour agir au bon endroit et.
Bruno:
Pour vraiment de la paille on mettra le lien en description bien évidemment, dernière question qui est de loin la question la plus importante de ce podcast tu es plutôt espace ou tabulation ? Complètement espace merci beaucoup Maxime merci Bruno et merci à tous d'avoir suivi cet épisode. Sujet passionnant il faut se mettre aux IA très clairement mettez-vous à Longchain ça va changer votre façon de développer, et je pense même qu'on peut envisager de se dire il ne faut pas uniquement essayer de l'utiliser pour, ajouter de l'IA dans un service mais peut-être même que l'ensemble du cœur du réacteur, la manière même de créer un service peut être modifié par ces outils-là. N'hésitez pas à aller jeter une œil. Un œil, mettez les mains dedans. Comme le disait Quentin dans son épisode annuel, il est primordial de s'y mettre. Il y a un changement colossal qui est en train de se préparer. Il ne faut vraiment pas passer à côté. Je vous remercie beaucoup aussi d'écouter ce podcast et surtout de le partager autour de vous. Je vous souhaite une très bonne fin de semaine. Je vous dis à la semaine prochaine et d'ici là, codez bien.