Work / ai

Créateur de Contenu Autonome

Système multi-agents qui possède un calendrier de publication de bout en bout. Recherche, rédaction, planification, publication. Human-in-the-loop est optionnel, pas structurel.

LLMMulti-agentAutomationSocial
Role
Créateur & Ingénieur Principal
Date
2025-04-15
Read time
3 min read
Stack
5 techs

La première version de ce projet était un seul agent avec un long system prompt et l'accès à quatre outils. Ça marchait. Ça cassait aussi exactement comme cassent les agents à prompt long : la voix du rédacteur dérivait selon les sujets, le chercheur se mettait à inventer des sources quand l'outil de recherche renvoyait peu de résultats, et un mardi le planificateur a mis en file le même post trois fois parce qu'il n'avait pas vu que le publieur l'avait déjà sorti.

La réécriture est devenue un système multi-agents, non parce que multi-agents est à la mode mais parce que les échecs étaient spécifiques au domaine. Chaque agent fait une seule chose.

Comment les agents se découpent

Un chercheur tire des sources tendance, les déduplique, propose des angles. Un rédacteur écrit sous un profil de ton de marque et respecte les contraintes de longueur par plateforme. Un planificateur ordonne la file selon un calendrier et les fuseaux horaires de l'audience. Un publieur appelle les API des plateformes, gère les retries, écrit les traces d'audit.

Un orchestrateur les coordonne via un état partagé. Chaque transfert passe par une porte d'évaluation. Les brouillons qui ratent la grille qualité ou sécurité de marque n'atteignent jamais le publieur.

Le bug qui m'a appris l'idempotence

Six semaines après le lancement, le publieur s'est mis à doublonner le week-end. Le pattern était toujours le même : timeout transitoire côté plateforme, retry du publieur, et la plateforme avait silencieusement validé le premier appel. On publiait deux fois le même contenu, et notre log d'audit pensait qu'il s'agissait de deux runs indépendants.

La correction n'était pas une logique de retry plus fine. C'était des clés d'idempotence persistées dans l'état du publieur, plus une étape de réconciliation qui demande à la plateforme si un post avec cette clé existe déjà avant d'émettre l'appel. Travail d'infra ennuyeux. Le genre de chose qui rend un système réellement production-grade.

Ce que je dirais à quelqu'un qui construit ça

Ne découpez pas pour la mode. Découpez là où les échecs vivent. La version à cinq agents de ce système a la bonne forme parce que chaque agent échouait différemment et demandait des garde-fous différents. Une version à deux agents aurait été plus simple et cassée à des endroits qu'aucune édition de prompt ne réparait.

Le log d'audit a été un ajout tardif et la chose la plus utile de tout le système. Chaque publication remonte à sa source, aux agents qui l'ont touchée, et aux scores d'évaluation à chaque porte. Quand un post atterrit mal, je rejoue la chaîne. Quand un post atterrit bien, je trouve pourquoi et j'ajuste.

Ce que j'ajouterais ensuite : un retour plus serré de l'engagement réel vers le rédacteur. Le système produit aujourd'hui du bon contenu. Il n'apprend pas encore quel type de bon contenu l'audience récompense vraiment.

Stack
LLMAgentsSocial APIsTypeScriptPython