Elon Musk a annoncé le 15 mai sur X que la dernière version de l’algorithme de X a été publiée sur GitHub. D’après le repository xai-org/x-algorithm rendu public par xAI sur GitHub, le cœur de ce qui est publié cette fois-ci vise le système de recommandation central qui alimente le flux « For You » de la plateforme X. Ce système combine, d’une part, le contenu à l’intérieur de X issu des comptes suivis par l’utilisateur, et, d’autre part, le contenu en dehors de X découvert par apprentissage automatique dans une base mondiale de contenus. Il est ensuite trié par un modèle transformer fondé sur l’architecture Grok.
Le projet est sous licence Apache 2.0, écrit principalement en Rust et Python ; au moment de la consultation, GitHub affiche environ 21 000 stars et 3 800 forks.
Architecture de recommandation de For You : Thunder repère le contenu suivi, Phoenix extrait le contenu hors du réseau
D’après la documentation du repository, le flux For You de X repose principalement sur deux sources de contenus candidates.
La première concerne le contenu à l’intérieur de X, pris en charge par le module Thunder. Thunder est une zone de stockage de posts en mémoire vive et un pipeline d’ingestion de données en temps réel : il consomme depuis Kafka les événements de création et de suppression de posts, suit les posts récents de tous les utilisateurs, puis fournit au demandeur des candidats de contenu provenant de ses comptes suivis. La documentation souligne que Thunder peut fournir, pour les contenus internes, des requêtes à des échelles de millisecondes sans interroger de base de données externe.
La seconde concerne le contenu hors du réseau, géré par Phoenix Retrieval. Phoenix identifie, dans la base mondiale de contenus, des posts susceptibles d’intéresser l’utilisateur, mais qui ne proviennent pas de comptes suivis. Pendant l’étape de récupération, il utilise un modèle à deux tours (Two-Tower Model) : User Tower encode les caractéristiques de l’utilisateur et l’historique d’interactions sous forme de vecteurs, tandis que Candidate Tower encode les posts candidats sous forme de vecteurs ; ensuite, la similarité par produit scalaire permet de retrouver les contenus les plus pertinents.
Ces contenus candidats entrent ensuite dans Home Mixer, c’est-à-dire la couche de coordination du flux For You. Home Mixer est responsable de requêter le contexte de l’utilisateur, de récupérer les contenus candidats, de compléter les informations sur les posts et les auteurs, de filtrer les contenus non conformes, d’appeler le modèle de tri, d’appliquer des ajustements de score, puis de sélectionner les posts à afficher sur la page For You de l’utilisateur. La documentation indique aussi que Home Mixer expose en externe un point d’entrée gRPC, ScoredPostsService, utilisé pour renvoyer des posts triés à un utilisateur donné.
Grok au cœur du système de recommandation
Le point le plus scruté cette fois-ci est que le système de recommandation de X intègre explicitement Grok.
Le README de GitHub indique que le contenu du feed For You est trié par Phoenix, qui est un modèle transformer basé sur Grok. Phoenix prédit la probabilité que chaque post déclenche des interactions, puis combine ces valeurs de prédiction avec des pondérations pour obtenir le score final. Le document précise également que l’implémentation transformer dans ce repository est un portage de Grok-1 open source de xAI, avec des ajustements pour le contexte d’usage dans un système de recommandation, comme l’ajout d’entrées d’embeddings personnalisées et d’un attention mask pour isoler les candidats.
Mais cela ne signifie pas que X ait publié l’intégralité du modèle de niveau production. Le README de Phoenix écrit clairement qu’il s’agit d’une « mini version » ; en production, un modèle plus grand est utilisé, avec davantage de couches et des embeddings plus larges. De plus, le checkpoint publié a été figé comme snapshot à un moment donné issu d’un pipeline d’entraînement continu, tandis qu’en production, Phoenix s’entraîne continuellement à partir des données en temps réel.
Mise à jour du 15 mai : inférence exécutable de bout en bout, modèle mini Phoenix, système de mixage des publicités
D’après les notes de mise à jour sur GitHub, la version du 15 mai ajoute plusieurs composants clés.
Tout d’abord, le flux d’inférence de bout en bout. Le nouveau phoenix/run_pipeline.py remplace les scripts séparés run_ranker.py et run_retrieval.py ; il permet d’enchaîner « récupération → tri » via une seule entrée, et d’exécuter le tout avec des checkpoints exportés, afin de simuler comment les deux étapes sont combinées dans l’environnement de production.
Ensuite, les artefacts du modèle préentraîné. Le mini Phoenix model publié est distribué via Git LFS. La documentation indique qu’il inclut 256 dimensions d’embeddings, 4 attention heads, 2 couches de transformer, pour environ 3 GB ; il permet ainsi aux développeurs de faire une inférence out-of-the-box sans avoir besoin d’entraîner eux-mêmes le modèle. Le README de Phoenix ajoute aussi que le corpus de démo publié est un ensemble de données de posts liés au sport, d’environ 537 000 entrées, provenant d’une fenêtre de 6 heures, utilisé pour présenter l’étape de retrieval.
Par ailleurs, le repository ajoute un Grox content-understanding pipeline pour des tâches de compréhension de contenu comme la détection de spam, la classification post-category, l’exécution de la policy PTOS, etc. Il ajoute aussi un système de mixage publicitaire de Home Mixer, chargé d’insérer des publicités dans le flux d’informations et d’en déterminer l’emplacement, tout en intégrant le suivi de sécurité de la marque.
Le modèle de tri prédit une fois pour 15 types d’interactions, pas seulement un score unique de « pertinence »
Le modèle de tri de Phoenix n’est pas seulement conçu pour produire un score abstrait de « pertinence », mais pour prédire simultanément la probabilité de multiples comportements d’interaction.
D’après le document, le modèle prédit notamment 15 actions : favorite, reply, repost, quote, click, profile click, video view, photo expand, share, dwell, follow author, ainsi que not interested, block author, mute author, report.
Ensuite, le Weighted Scorer combine ces probabilités d’interaction avec des pondérations pour produire le score final : des pondérations positives sont attribuées aux comportements positifs, comme les likes, les reposts et les partages ; des pondérations négatives sont attribuées aux comportements négatifs, comme le blocage et le silence, ainsi que les signalements, ce qui pousse vers le bas les contenus que l’utilisateur risque de ne pas apprécier.
Une fois les scores du modèle calculés, le système applique aussi d’autres ajustements. Par exemple, Author Diversity Scorer réduit les scores des auteurs en double pour maintenir la diversité du flux ; OON Scorer ajuste les contenus out-of-network, c’est-à-dire ceux provenant de comptes non suivis.
Cela signifie que le « For You » de X n’est pas simplement une mise en avant des posts les plus susceptibles d’être likés : il décompose plusieurs comportements d’interaction, les prédit séparément, puis forme le classement final grâce à une conception de pondérations. Cela implique aussi que le véritable jugement de valeur de l’algorithme ne réside pas uniquement dans le modèle lui-même, mais aussi dans les pondérations d’interaction et les règles de post-traitement.
Isolation des candidats : le score d’un post ne doit pas être affecté par d’autres posts du même lot
Le document met particulièrement l’accent sur « Candidate Isolation » (isolation des candidats).
Le README de Phoenix indique qu’au stade du ranking, les posts candidats ne peuvent pas s’attendre mutuellement (ils ne peuvent pas s’attendre entre eux), et ne peuvent prêter attention qu’à l’utilisateur et à son historique. Cette conception vise à s’assurer que le score d’un post unique ne change pas selon quels autres posts sont placés dans le même batch. En d’autres termes, le score d’un post doit dépendre de la relation entre ce post et l’utilisateur, plutôt que de la présence, dans le même lot, de posts concurrents.
Cela peut aussi avoir un sens pour les créateurs. Dans le passé, de nombreuses pratiques au sein des communautés supposaient qu’il fallait éviter de publier à certains moments pour éviter les événements chauds ou les posts à forte interaction, afin de ne pas se faire écraser dans la pool de recommandation. Mais si l’isolation des candidats est effectivement mise en œuvre comme décrit dans le document, alors au moins au niveau de l’inférence du modèle, le score d’un post unique ne devrait pas être modifié directement par la présence, dans le même batch, d’autres posts forts.
Cependant, cela ne veut pas dire que l’heure de publication n’a aucune importance. D’autres facteurs en amont, comme la récupération des candidats, la fraîcheur des posts, les périodes où l’utilisateur est en ligne, les filtres de contenus déjà vus, l’attention concurrentielle autour des événements populaires, peuvent encore influencer l’exposition finale.
Le récit « sans caractéristiques artificielles » reste controversé : en plus du tri du modèle, des règles humaines subsistent
Dans le document, xAI affirme que le système a éliminé toutes les caractéristiques de conception humaine et la plupart des règles heuristiques, s’appuyant principalement sur un transformer basé sur Grok qui apprend la pertinence à partir de séquences d’interactions utilisateur. Le document liste également cinq conceptions clés : absence de caractéristiques conçues par l’humain, isolation des candidats à l’étape de tri, embeddings de type hachage (hash embeddings), prédiction multi-comportements, et architecture pipeline combinable.
Mais cette affirmation nécessite une interprétation plus précise. On peut aussi voir, dans le même document, que le flux For You passe avant le tri par de nombreux pre-scoring filters, comme la suppression des posts dupliqués, trop anciens, les posts de l’utilisateur lui-même, ceux provenant de comptes bloqués ou en sourdine, les mots-clés en sourdine, les contenus déjà vus ou apparus récemment, ainsi que les contenus d’abonnement non éligibles. Après le tri, il y a aussi des post-selection filters, comme des suppressions, le filtrage spam, violences et contenus sanglants, ou encore des branches de déduplication pour des fils de discussion.
Ainsi, une formulation plus juste serait : X affirme que le tri des candidats pour la pertinence du contenu provient principalement d’un transformer basé sur Grok, sans dépendre des caractéristiques manuelles classiques ; mais l’ensemble du flux For You conserve encore de nombreuses règles produit, filtres, mécanismes de pondération et de post-traitement. Ces règles façonnent aussi le contenu final que l’utilisateur voit.
En pratique : comment exploiter l’algorithme de X pour gérer un compte
Dans la pratique, si les créateurs veulent « surfer sur l’algorithme » pour gérer leur compte X, l’enjeu ne consiste plus seulement à chercher des likes ou des reposts, mais à comprendre que le système For You évalue simultanément de multiples signaux d’interaction. Les signaux positifs incluent le temps de visionnage, les clics, les réponses, les reposts, le suivi d’auteurs, le visionnage de vidéos et l’expansion d’images. Les signaux négatifs incluent ne pas être intéressé, le silence, le blocage et les signalements.
Cela signifie que le contenu ne peut pas seulement « appâter » par un titre accrocheur pour obtenir des clics, car si l’utilisateur clique puis glisse rapidement, marque « not interested », voire bloque l’auteur, cela peut au contraire dégrader les performances de recommandation suivantes.
Pour ceux qui gèrent des comptes, une stratégie plus efficace consiste à améliorer la « qualité des interactions » : dès les premières secondes, capter l’attention ; dans le corps du texte, permettre une lecture suffisamment longue ; et en fin de contenu, concevoir des angles qui amènent naturellement les lecteurs à répondre ou à partager, plutôt que de pousser artificiellement. En parallèle, comme le système ajuste la diversité des auteurs, publier en rafale intensément sur une courte période n’amplifie pas forcément l’exposition de façon linéaire : cela peut même diluer via une baisse de priorité pour un auteur donné. La démarche la plus rationnelle consiste à contrôler le rythme de publication, pour que chaque contenu ait un thème clair, une densité d’information suffisante et une position partageable.
Enfin, la recommandation de contenu hors du réseau signifie qu’un compte n’a pas besoin de dépendre uniquement de ses abonnés existants : tant que le contenu fait rester, clique et déclenche le suivi chez des audiences inconnues, il peut être poussé dans un plus grand bassin de trafic For You. Mais à condition d’éviter les posts de ferme à faible qualité, les contenus répétitifs et les manipulations excessivement controversées, car si ces comportements déclenchent le silence, le blocage ou le signalement, la pénalisation de l’algorithme est généralement plus lourde que tout gain de trafic à court terme.
Cet article X publie le code source originel de la recommandation « For You » : guide pratique pour exploiter l’algorithme et gérer un compte Twitter. Apparu pour la première fois sur Chaîne News ABMedia.
Related News
SpaceX pourrait être introduite en bourse le 12 juin (6/12) et faire son entrée dans l’indice Nasdaq 100.
Codex s’implante dans l’application mobile de ChatGPT, pour contrôler à distance des tâches de développement sur Mac
Pi Network PiScan fait son retour, la mise à niveau de l’IA KYC réduit la file d’attente humaine de 50%
Sam Altman annonce : OpenAI Codex offre aux entreprises deux mois d’utilisation « gratuite »
Google envisage de s’associer à SpaceX pour lancer le programme « Chasseur de l’espace », avec une stratégie autour de l’informatique d’IA en orbite.