Journal Faire son bot bluesky francophone

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
7
24
août
2025

Je me sens une petite légitimité à aider les dévs libres qui aimeraient se lancer dans coder leur bot bluesky, car j'en ai fait un.

Alors, comme c'est un protocole libre et que c'est bon mal an « documenté », je vais transmettre un peu de ce que j'ai compris.

À l'heure actuelle, je parcours l'intégralité des posts bluesky en français avec un core i3 bi proc, 1Gb de mémoire utilisé, 25% de CPU, 18Mb/s de BP sachant qu'il y a une limitation de requête à 10 par secondes.

Autrement dit, j'imagine que c'est à la portée du plus grand nombre (sachant que la fibre est bien déployée icitte)

voilà

Ordre de grandeur : avec 10 req/sec peut on faire face au trafic francophone ?

Alors avant de répondre, je vais admettre que j'ai mangé dans les dents les limites et je vais donner quelques conseils appris de mes erreurs.

Voilà les différents trafic observés en fonction de mes architectures :

trafic

Comme vous pouvez le constater, je suis un membre de l'institut la RACHE quand il s'agit de mettre en prod, et la dernière est la bonne en volumétrie !

Comment je le sais ?

Car je compte ~14000 posts non français en 300 secondes soit ~43/sec

Ce qui est raccord avec les données dispo ici

données world

On en déduit en faisant un ratio du nombre de post fr sur le total que le trafic français représente ~1% du trafic mondial bluesky.

Et comme vous pouvez le voir avec le graph de trafic je suis en pointe à 0.8 post / secondes.

Je peux donc largement encaisser une croissance x 10 du trafic en ce qui concerne le rate-limiting. Pour le reste, je vais manquer de Bande Passante avant.

La réponse est OUI, vous pouvez faire un bot qui scanne l'intégralité du trafic fr avec un PC quelconque à la maison sans une infra industrielle.

posts/like/repost quels évènements cibler ?

Le firehose (puit de données publique) livre des enregistrements déjà analysables, seulement : seuls les évènements de type post contiennent l'information de langue de base.

Tous les autres requièrent 1 requête HTTP qui est décomptée dans votre quota pour avoir accès à l'info.

Pour ne pas cramer son quota comme un noob (moi passé quoi), je conseille de se focaliser sur les posts. Posts dans lesquels on trouve un lien vers l'URI du post racine dont ils sont la réponse.

Par où je commence pour coder ?

Je suis désolé, la doc est … durement lisible pour mézigue. Par contre vous pourrez « facilement » combiner les exemples dispo ici pour faire du frankencode (c'est l'état actuel de mon code).

Rétrospectivement, j'aurais pu me contenter de cette ressource au lieu de reprendre des trucs à moitié démoulé de droite et de gauche.

Vous pouvez regardez si vous avez le cœur bien accroché le code en vrac que j'ai fait.

Il manque une doc pour expliquer comment faire l'apprentissage des cosinus similarité HAM/SPAM ainsi que l'interface websocket.

J'ai pas besoin de tout scanner, je veux échantillonner aléatoirement

Mon code mono « worker » (agent) tend à prouver qu'en saturation de traitement on réussi empiriquement à passer sous le radar de la limite de requêtes / secondes. Ce qui permet par expérience de traiter les évènements post/reposts/like.

Conclusion

Je sais toujours pas à quoi ça sert de faire des bots bluesky, mais c'est fun à coder.

Donc, je vous donne mes 3 cents de savoir pour vous mettre le pied à l'étrier en vous donnant des volumétries.

Doc atproto officielle

  • # Wut da fuk private licence

    Posté par  . Évalué à 4 (+1/-0).

    licence WTFPL 2.0 fait ce que tu veux avec sauf dire que tu l'as fait @jul 2025

    Faut signaler à la postériorition et par respect pour la véracitude que c’est moi qui ai tout écrit. Pour 0.75 cents seulement. Il se fait une bonne culbute à 3 cents le didacticiel ce rapace de programmateur !

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.