29 mars 2026 · 5 min de lecture
Vers mon propre algorithme de recommandation d'informations
Dans l'économie de l'attention, nous ne choisissons plus les informations auxquelles nous sommes confrontés. Pourtant l'information est la première ressource de l'esprit. Dans cet article, je décris comment je souhaite sortir des algorithmes de recommandation en développant ma propre application d'informations qui cherchera à hierarchiser les informations selon mes propres critères.
Vidéos YouTube, reels Instagram, pubs sur n'importe quel site internet, feed Twitter, nous sommes noyés sous les informations et ces informations proviennent toutes d'algorithmes de recommandation. C'est la mécanique de base d'internet pour ordonner les informations. Des méthodes de machine learning sont utilisées pour créer automatiquement une hiérarchisation des informations avec un seul objectif : maximiser la rétention des utilisateurs et leur temps d'utilisation au quotidien. Ces algorithmes procèdent en deux étapes : la catégorisation de l'utilisateur pour provoquer des recommandations personnalisées, et la détermination de la pertinence de recommandations pour une catégorie d'utilisateurs par la mesure de l'attention accordée à ces informations.
Le problème avec ces algorithmes apparaît donc ainsi : la pertinence d'une information n'est pas déterminée par l'utilité perçue par l'utilisateur, qui est une métrique très compliquée, mais plutôt par le temps d'attention généré. Or, de par ma nature d'être humain, un article scientifique vulgarisé sans aucune nuance et au titre aguicheur ou même une vidéo de chat retiennent plus mon attention qu'un papier scientifique. La généralisation de cette règle amène à une conclusion : les algorithmes de recommandation ne peuvent pas recommander des contenus utiles car ce n'est pas la métrique optimisée.
Je me suis donc lancé un défi : développer mon propre système de recommandation d'informations cherchant à maximiser l'utilité de l'information proposée.
La solution
Je vais maintenant décrire la solution rudimentaire que j'ai conçue en m'imposant d'avoir fini son développement au 1er avril 2026.
Les sources de données
Commençons par les sources de données, car la base du problème est d'avoir des données à hiérarchiser. Étant donné que cette solution est une première version très simple et rapide à mettre en place, j'ai considéré que je ne pourrai pas faire un algorithme de recommandation très élaboré. Il me fallait donc de bonnes données.
J'ai donc choisi des newsletters et des journaux du monde entier que j'estime de qualité et qui fournissent des informations cohérentes avec mes centres d'intérêts. L'une de mes principales sources d'inspiration est Hacker News. J'ajoute aussi TechCrunch, Maddyness, Sifted, Stratechery pour les infos sur l'économie, Lobsters pour le dev, France 24, Le Monde pour les actualités, Experienced Devs de Reddit pour des discussions divertissantes, les blogs scientifiques des big tech comme Google, OpenAI, etc. pour les papiers scientifiques sur l'IA.
L'un des challenges auquel je suis confronté est que sur internet, les informations de bonne qualité ne sont pas gratuites. C'est le cas de Le Monde, Sifted, Stratechery, Reddit (ou Twitter que j'aurais aimé exploiter). Bien que j'aie trouvé une solution pour Le Monde, il faut que je résolve ce problème pour plusieurs autres médias.
L'ingestion des données
J'utilise les flux RSS de ces médias, pour l'ingestion de ces données dans ma base d'informations. Ce format a pour avantage d'être facile à traiter informatiquement. Il est cependant contraignant car toutes les sources d'informations ne suivent pas ce format. J'ai mis en place un cron qui récupère les derniers items des flux auxquels j'ai souscrit à intervalles réguliers.
L'algorithme de recommandation
Passons ensuite à l'algorithme de recommandation que j'ai développé. Il est très rudimentaire. Chaque titre et description d'article est soumis à un LLM (Claude Haiku) qui détermine un score de pertinence de l'article selon un prompt très précis. Dans ce prompt, je définis quelles sont les informations qui m'intéressent, celles qui ne m'intéressent pas, le format d'information qui m'intéresse et des exemples de scores pour des sujets. Plus concrètement par exemple, j'ai dit que j'étais particulièrement intéressé par les articles sur l'écosystème backend TypeScript, Node.js, Bun, GraphQL ou que je préférais les articles présentant des analyses poussées.
Voir le prompt pour l'évaluation de la pertinence
Le feed
Une fois le score de pertinence calculé, je peux ensuite afficher les articles dans l'ordre du score de pertinence sur un feed que j'ai développé et qui s'occupe d'historiser les articles que j'ai vus et ceux que je n'ai pas encore vus afin de toujours voir des nouvelles récentes.
Limites et améliorations
Vous l'aurez compris au cours de cette description, ma solution est très rudimentaire et comporte des limites évidentes :
- –Les sources d'informations doivent être accessibles via un flux RSS. À plus long terme, j'aimerais pouvoir accéder aux informations dans plus de formats différents : vidéos/audio (YouTube), API (Twitter?), etc.
- –Les informations de qualité sont payantes. Il faut que je trouve plus de sources d'informations accessibles gratuitement et de grande qualité.
- –Mon algorithme de recommandation ne lit que le titre et la description des articles au lieu d'avoir accès à l'entièreté du contenu. De plus, le prompt que j'utilise peut encore être sophistiqué afin de mieux définir la pertinence selon moi. Aujourd'hui la description est peu subtile car le LLM utilisé est simple.
Malgré tout, je prends beaucoup de plaisir à utiliser cette application et je suis plutôt satisfait des informations présentées. Je passerai peut-être un peu de temps à la fin de l'année pour repousser quelques limites évoquées et mettre en place un daily digest si je trouve que la lecture des articles est trop chronophage.
Lien vers l'application : feed.loicledreck.com
Ciao 👋