1 points par GN⁺ 2 시간 전 | 1 commentaires | Partager sur WhatsApp
  • 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

1 commentaires

 
GN⁺ 2 시간 전
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

    • D’accord, mais j’aimerais qu’on s’arrête aussi pour se demander pourquoi les gens se sont soudain mis à penser que ce genre de comportement était acceptable
      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

    • Exactement. Un simple « ceci a été généré par un LLM » serait acceptable, mais là, les gens font carrément de la pub gratuite à ces entreprises
  • 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

    • Si un outil génère du code de manière déterministe, comme Protobuf, il est utile d’avoir le nom de l’outil dans le code pour le débogage et la gestion des mises à niveau
      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

    • « edited with sed - the modern stream editor for filtering and transforming text »
    • « Sent from my iPhone »
    • Comme il m’arrive de parler à mes lézards de compagnie pour comprendre un problème, je me dis souvent que je devrais ajouter « assisted-by: my pet lizards »
    • Attendez ! Certains projets FOSS veulent déjà interdire les utilisateurs de nano. Vous êtes en train de proposer une façon de rendre ça possible
    • C’est inutile. Tout le monde sait que ed(1) est l’éditeur de texte standard, donc c’est implicite et ça gaspille des octets
  • 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

    • À mesure que les LLM seront de plus en plus intégrés, on verra peut-être un jour des choses comme :
      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 »

    • J’ai toujours eu du mal à comprendre que des gens fassent ça volontairement, voire avec enthousiasme
    • J’ai demandé à mon grand-père pourquoi il ne portait jamais de vêtements avec des logos, et il m’a répondu quelque chose comme : « Si quelqu’un veut que je fasse de la pub pour lui, il doit me payer »
    • Moi non plus, je n’ai jamais compris ce genre de vêtements. En plus, ils ne sont même pas beaux
    • Je me rends compte que je porte en ce moment un t-shirt « London Perl Workshop 2017 » et que je n’ai aucun souvenir précis de l’événement cette année-là
      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

    • Ce n’est pas une vraie personne, c’est juste de la publicité pour une entreprise
    • Je ne vois pas en quoi la contribution d’un LLM diffère de celle de vim, de l’autocomplétion de l’IDE ou des résultats de recherche Google
      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 »
    • Je ne suis pas certain que cela corresponde exactement au sujet en cours
      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

    • Mais on n’ajoute pas d’autres métadonnées ni informations d’outil. Par exemple, on n’indique pas non plus dans le commit que l’on a utilisé Emacs