N’ajoutez pas de publicité dans vos commits
(akselmo.dev)- Les messages de commit sont un espace destiné aux informations techniques, et des formules comme « Assisted by blabot » reviennent à faire de la publicité pour un outil ou une entreprise
- Même quand un projet open source n’est pas rémunéré par ces entreprises, le fait que des utilisateurs payants insèrent des messages promotionnels dans les commits pose problème
- Si nécessaire, l’usage d’un outil d’IA peut être indiqué dans la merge request, et dans le commit une formulation générale comme « generated by an LLM » est plus appropriée
- Les outils qui ajoutent automatiquement des mentions publicitaires dans les commits, e-mails ou autres messages sont de mauvais outils ; le vrai problème n’est pas l’outil, mais la pollution des métadonnées
- Même un format comme « Co-authored-by » devient un espace publicitaire gratuit s’il sert à mettre en avant un bot ou un service particulier
Les messages de commit doivent rester un espace d’information technique
- Ajouter dans un message de commit des mentions comme « Assisted by blabot », « co-authored-by: slopgpt » ou « sent from my fartphone » revient à faire de la publicité pour une entreprise ou un outil
- Il est problématique qu’un projet open source, sans recevoir d’argent de ces entreprises, se retrouve avec des utilisateurs abonnés qui injectent des messages promotionnels pour ces sociétés dans les commits
- On se retrouve dans la contradiction de bloquer les pubs tout en en mettant dans les commits
- Un commit doit contenir des informations techniques, pas servir d’espace promotionnel pour un outil ou une entreprise
Comment signaler l’usage d’outils d’IA
- Si besoin, l’usage d’un outil d’IA peut être signalé dans la merge request
- Dans le commit, il est préférable d’utiliser une formulation générale comme « generated by an LLM » plutôt que de citer une entreprise ou un produit précis
- Inscrire le nom d’une entreprise précise dans un commit revient à lui offrir un espace publicitaire gratuit
- Il est aussi possible de choisir de ne pas utiliser ce type d’outils
Quels critères appliquer aux outils
- Les outils qui insèrent automatiquement des mentions publicitaires dans les commits, e-mails ou autres messages peuvent être considérés comme de mauvais outils
- Le cœur du problème n’est pas tant l’usage de l’outil que la manière dont des messages promotionnels s’infiltrent dans les métadonnées ou les messages produits
- Même un format comme « Co-authored-by » devient une publicité s’il dépasse l’information technique de collaboration pour servir à exposer un bot ou un service particulier
Position connexe
- Why I will likely never use AI programming tools : récapitulatif séparé de la position sur l’IA
1 commentaires
Réactions sur Lobste.rs
Dire que les outils qui ajoutent de la pub à des messages comme les commits ou les e-mails sont de très mauvais outils, c’est vrai, mais la solution n’est pas de rendre l’usage de ces mauvais outils plus difficile à repérer, c’est de ne pas les utiliser
Personnellement, je suis presque reconnaissant que les gens qui font ça aient envie de se trahir eux-mêmes
Au final, la vraie solution, c’est de ne pas utiliser d’outils qui insèrent de la pub dans le résultat
Beaucoup de gens jugent important d’éviter le code généré par LLM, donc je ne pense pas qu’il faille aller dans le sens d’une moindre transparence sur l’usage des LLM
Mettre cette information dans le message de commit permet aussi de repérer facilement de façon automatisée si une base de code contient du code généré par LLM avec des outils comme slopcheck
L’important, cela dit, ce n’est pas quel LLM a été utilisé, mais le fait qu’un LLM a été utilisé. Si les utilisateurs de ces outils passaient à ce format, on réduirait les effets nuisibles de la pub pour un produit précis tout en conservant la transparence nécessaire
Je comprends tout à fait l’idée, mais je vois un point un peu différemment
Les entreprises d’IA obtiennent une pub entièrement gratuite, et je déteste vraiment la manière dont elles s’infiltrent dans le logiciel open source
En revanche, je suis contre l’idée de ne divulguer cela que dans les merge requests. Tout le monde ne lit pas les merge requests, et pour savoir si on peut faire confiance à ce commit, on ne devrait pas avoir à dépendre de quoi que ce soit d’autre que de l’historique git
Mais pour du code généré par LLM, je ne vois pas bien l’intérêt. Qu’un outil comme Dependabot signe ses commits, ça me va. C’est une information utile pour corriger un problème quand quelque chose tourne mal et éviter que ça se reproduise
Alors, que diriez-vous de « Proudly typed in nano » ? :D
Je serais assez furieux si Visual Studio se mettait à ajouter « Made using Visual Studio » à mes commits
Sent using
Firefox 140.10.2esr (64-bit)
Debian GNU/Linux 13 (trixie) x86_64
Linux 6.12.86+deb13-amd64
Using locally sourced electricity from free range waterfalls
Method names suggested by Microsoft IntelliSense (R) and Pyright (TM)\
Grammar and spelling corrections by Apple Intelligence (R)
C’est peut-être pour la même raison que les gens portent des t-shirts marqués « Nike » ou « Adidas »
Je ferais peut-être mieux de porter des vêtements de sport
Si je fais du pair programming avec quelqu’un et que je commit, le nom de cette personne figure dans co-authored-by
Quand je programme, je considère que la contribution d’un LLM est suffisamment importante pour être reconnue dans le commit. C’est moi qui commit le code et j’en assume la responsabilité, mais je n’en suis pas l’unique auteur
Pourtant, je n’ai jamais vu quelqu’un se précipiter pour ajouter à un commit « j’ai consulté Google pour écrire ça et j’ai appuyé 4 fois sur la complétion par tab dans xcode »
On peut amorcer un projet Spring, générer quelque chose en Go avec echo ou la CLI de cobra, ou produire du boilerplate Laravel. Beaucoup de langages ont des générateurs
Pourtant, on n’ajoute pas « co-authored by X tool »
Ce n’est pas exactement la même chose, je le reconnais, mais c’est proche. On ajoute des métadonnées d’outil à l’ensemble des modifications. Ce n’est pas nécessaire. Il suffit d’indiquer les concepts métier pertinents et les décisions techniques importantes
Pas besoin de mentionner l’outil
Je ne sais pas si le serveur web est surchargé, mal configuré, ou s’il me classe comme bot, mais je dois attendre environ 30 secondes pour la connexion HTTPS
J’y vois plutôt un bon signal. Une bonne manière d’évaluer combien d’effort, ou de manque d’effort, a été investi dans le code
Je suis très opposé à la pub, mais pas parce que j’aimerais que personne ne connaisse ni n’utilise les produits grand public
C’est parce que je veux que les gens obtiennent des informations exactes et impartiales sur les produits grand public
Je ne pense pas qu’ajouter cette information dans les commits crée un biais. Que ce soit Claude, Copilot ou autre, s’ils ont participé à l’exécution de ce commit, c’est manifestement un fait, et beaucoup de gens ont un intérêt légitime à le savoir dans ce contexte. En revanche, le fait que le committer ait utilisé Emacs n’est pas une information intéressante. Ce n’est pas quelque chose qui est ajouté sans raison
Si ça ne vous plaît pas, il suffit de configurer votre user agent pour qu’il ne l’affiche pas