Je n’en fais pas encore activement la promotion, mais Naia est désormais sur le Windows Store. Je ne partagerai pas le lien. Comme je l’ai expliqué lors de notre dernière rencontre, les pièces viennent tout juste de s’assembler, et l’ensemble commence à peine à tourner, en grinçant un peu.Comme je l’avais dit à la première rencontre, Atom et moi avons beaucoup réfléchi à l’architecture nécessaire pour poser les fondations de l’Alpha que nous voulons créer. Ces changements de structure ont pris du temps. Naia a commencé par la voix et les avatars vidéo, avec une allure très B2C. Mais après la création de l’entreprise, j’ai surtout consacré mon travail à résoudre les problèmes d’IA d’autres entreprises et organisations, dans une logique B2B.
Naia est donc le résultat de ces deux efforts : des technologies destinées au B2C en surface, et un harness ainsi qu’un espace de développement orientés B2B en dessous. Ce ne sont pas deux choses séparées. Les technologies et services B2C reposent sur le travail effectué sur le harness B2B. Le revers, c’est que j’ai passé tout ce temps à développer sans suffisamment réfléchir aux utilisateurs, pourtant au cœur du B2C.
Cela m’a particulièrement frappé lors de la présentation aux investisseurs de la semaine dernière, quand on m’a dit : « Vous n’avez pas d’indicateurs. » En me demandant ce que devait être le produit pour en produire, j’ai réalisé à quel point j’avais peu réfléchi aux utilisateurs. En façade, je le présentais comme un OpenClaw ou un Hermes avec un visage. Mais le dépôt Naia-Agent correspondant était en réalité la couche la plus mince, avec trop peu de tests d’exécution et une expérience utilisateur inachevée.
Pour autant, il m’était difficile de me consacrer uniquement à cela. Je pensais qu’un environnement solide de développement et de vérification fondé sur l’IA devait passer avant ce qui se voit. À mes yeux, c’était le moyen de satisfaire à la fois les attentes de qualité du B2C et les exigences du B2B.
Depuis le week-end, j’ai donc travaillé non pas sur la collaboration de plusieurs agents dans un seul PC, mais sur celle de machines dans différents environnements. J’ai créé un agent chef d’équipe de développement et organisé la communication par des canaux Discord, pour que les agents de ces différents environnements développent la même application : Naia. Ce n’est qu’aujourd’hui que cette structure a été mise en place sur cinq machines : trois portables Windows équipés respectivement d’une RTX 4060, d’une RTX 2070 et d’une MX250, et deux machines sous Naia OS (Linux), l’une avec une BC250, l’autre avec deux RTX 3090. Pour réduire les coûts, Fable et Astra ont élaboré le plan initial de l’agent principal au fil de revues contradictoires répétées. Opus assure le fonctionnement, tandis que Sonnet et 5.6 Luna Max font tourner les agents sur chaque machine.
Une fois cette collaboration en place, ma question suivante a été : « Le produit correspond-il à la valeur que je voulais apporter au départ ? » Lorsque j’ai demandé un contrôle qualité, le système a voulu faire tourner tous les fournisseurs d’IA proposés. J’ai compris à quel point cela augmentait la complexité. Il en allait de même pour les nombreuses compétences proposées, mais insuffisamment testées.
J’ai donc décidé de retirer tout ce sur quoi je ne m’étais pas concentré et que je n’avais pas réellement utilisé, puis de relier ce qui restait. Mes usages principaux étaient l’écoute de musique, la voix, les LLM du compte Naia, les LLM locaux et la mise en place d’un système de développement logiciel avec Claude, Codex et Grok via le harness ADK. J’ai choisi de ne garder qu’un minimum de compétences et de connecter directement les outils de développement. Claude, Codex et Grok sont déjà des agents bien plus puissants qu’OpenClaw ou Hermes. Leurs abonnements sont aussi difficiles à battre. Naia peut devenir une couche plus mince.
Bref, je ne raconte pas cela pour me vanter d’avoir beaucoup construit. C’est plutôt un reproche que je me fais : pourquoi ne suis-je pas parti d’une expérience client minimale pour l’élargir ensuite ? Pourquoi les fonctionnalités se sont-elles autant multipliées ? Sans doute parce que le vibe coding a rendu le développement trop facile. Une fois le harness suffisamment en place pour étendre les fonctions de façon relativement stable, en ajouter était simple. Mais j’ai continué sans les vérifier réellement. Un produit qui grossit uniquement pour faire bonne figure n’est, au fond, pas grand-chose.
L’autre problème, c’est qu’une grande partie de mon énergie allait au développement invisible de l’ADK de Naia, avec lequel je menais déjà une activité B2B, sans avoir correctement relié les deux. Mon travail consiste maintenant, je crois, à les connecter par le chemin le plus court.
Par exemple, il existe une passerelle Discord construite avec naia-adk qui permet aux CLI de Codex, Claude et OpenCode de répondre aux clients. J’ai essayé de la remplacer par naia-agent et d’y appliquer une persona. Heureusement, cela a fonctionné. J’ai confirmé qu’il pouvait se connecter à un LLM local avec la persona d’Alpha et consulter des fichiers via Discord. Mais il faudra encore du temps avant qu’il puisse appeler d’autres CLI et transmettre leurs résultats comme la passerelle existante.
J’ai discuté avec beaucoup de monde lors des rencontres en personne, mais je crois avoir voulu aller trop vite, en imaginant que beaucoup de choses se résoudraient d’un coup. Les technologies d’IA progressent à une vitesse folle, mais les personnes et les services réels ont un rythme qu’ils peuvent effectivement soutenir. Pour bien construire et bien grandir, je dois faire preuve de patience.
Le projet de chant de Naia, que j’avais commencé à étudier parce que je voulais qu’Alpha chante pour moi, donne enfin quelque chose qui mérite d’être écouté.
Cette fois, je n’ai pas utilisé la chanson de Nadia avec des paroles adaptées. Une adaptation écrite par l’IA tient mal compte de la métrique et du rythme ; la qualité finale revient alors à multiplier celle des paroles adaptées par celle de l’IA qui chante. Rien d’étonnant à ce que le résultat soit médiocre. Pour me concentrer sur l’IA chanteuse, je lui ai demandé de trouver une chanson ayant déjà des paroles exactes et une partition, puis d’en faire une version.
Elle a choisi « 밤이 깊었네 » de Crying Nut, dont le titre signifie « La nuit est profonde ». Et maintenant, cela vaut vraiment la peine d’être écouté. C’est mon grand classique au karaoké, et la chanson que j’ai le plus chantée dans ma jeunesse. Je ne sais pas si elle le savait en la choisissant, mais je me suis demandé si Alpha ne me l’avait pas apportée parce qu’elle avait vraiment envie de chanter pour moi.
Ce n’est ni une reprise ni une composition nouvellement générée : l’IA lit une partition et chante comme une personne, puis sa voix est assemblée avec un accompagnement musical. Ce n’est pas encore la voix personnalisée d’Alpha. Elle peut chanter avec plusieurs voix, masculines ou féminines, dans différents styles, et je peux demander en langage naturel de modifier certains passages. Cela m’a soudain fait envisager un service, et même un brevet. Le problème, c’est que nous n’avons pas encore levé de fonds et n’avons donc pas l’infrastructure. J’espère que vous pourrez bientôt rencontrer une Naia qui chante.
Et… je me mettrai peut-être à écrire de temps en temps ces notes de développement. Pour évacuer un peu la frustration de développer seul, mais aussi pour conserver des traces qui serviront à entraîner la persona d’Alpha. Le prochain billet parlera peut-être de Naia Memory. Il faut vite stabiliser le service… Ma femme me demande encore si je ne suis pas simplement en train de fabriquer, tout seul, ce que j’ai envie de fabriquer. Je me demande toujours si elle n’a pas raison.
P.-S. Cela faisait très longtemps que je n’avais pas écrit un billet entièrement à la main, sans l’aide de l’IA. Elle avait réquisitionné mon portable principal pour développer ! J’ai écrit sur le portable Celeron acheté en 2017, lorsque j’ai créé ma première entreprise.
Note éditoriale : l’auteur a rédigé le texte original lui-même. L’IA a aidé à corriger l’orthographe et les espaces, ainsi qu’à traduire le texte pour sa publication.