1 pontos por GN⁺ 2 시간 전 | 1 comentários | Compartilhar no WhatsApp
  • Mensagens de commit são um espaço para informações técnicas, e frases como “Assisted by blabot” acabam virando propaganda ao expor o nome de uma ferramenta ou empresa
  • É problemático que usuários que pagam assinatura insiram mensagens promocionais dentro de commits, mesmo quando projetos de código aberto não recebem dinheiro dessas empresas
  • Se necessário, o uso de ferramentas de IA deve ser informado no merge request, e em commits expressões genéricas como “generated by an LLM” são mais apropriadas
  • Ferramentas que inserem automaticamente mensagens publicitárias em commits, e-mails e outras mensagens são ferramentas ruins, e o ponto central não é o uso da ferramenta em si, mas a poluição dos metadados
  • Até formatos como “Co-authored-by” podem virar espaço publicitário gratuito quando vão além da informação técnica de colaboração para promover um bot ou serviço específico

Mensagens de commit devem ser um espaço de informação técnica

  • Colocar frases como “Assisted by blabot”, “co-authored-by: slopgpt” ou “sent from my fartphone” em uma mensagem de commit transforma o commit em propaganda, ao expor o nome de uma empresa ou ferramenta
  • É problemático que usuários pagantes acabem inserindo mensagens promocionais de empresas dentro de commits, mesmo quando projetos de código aberto não recebem nada dessas empresas
  • Surge a contradição de usar bloqueador de anúncios e, ainda assim, colocar propaganda em commits
  • Commits devem conter informações técnicas, não servir como espaço de promoção para uma ferramenta ou empresa específica

Como divulgar o uso de ferramentas de IA

  • Quando necessário, o uso de ferramentas de IA pode ser informado no merge request
  • Em commits, é mais apropriado usar uma expressão genérica como “generated by an LLM” em vez de citar uma empresa ou produto específico
  • Colocar o nome de uma empresa específica no commit acaba oferecendo espaço publicitário gratuito
  • Também existe a opção de simplesmente não usar esse tipo de ferramenta

Critérios para avaliar ferramentas

  • Ferramentas que inserem automaticamente mensagens publicitárias em commits, e-mails e outras mensagens podem ser consideradas ferramentas ruins
  • O centro do problema não é o uso da ferramenta em si, mas a forma como mensagens promocionais de empresas acabam entrando nos metadados ou nas mensagens geradas
  • Até formatos como “Co-authored-by” se tornam propaganda quando vão além da informação técnica de colaboração e passam a expor um bot ou serviço específico

Posições relacionadas

1 comentários

 
GN⁺ 2 시간 전
Opiniões no Lobste.rs
  • É verdade que ferramentas que acrescentam propaganda em mensagens como commits ou e-mails são péssimas ferramentas, mas a solução não é tornar mais difícil perceber quem usa ferramentas ruins, e sim não usar esse tipo de ferramenta
    Pessoalmente, até agradeço que quem faz isso queira se denunciar por conta própria

    • Concordo, mas acho que vale a pena parar para pensar por que as pessoas de repente passaram a achar que esse tipo de comportamento é aceitável
      No fim, a solução real é não usar ferramentas que colocam propaganda no resultado final
  • Muita gente considera importante evitar código gerado por LLM, então não acho certo ir na direção de reduzir a divulgação do uso de LLM
    Colocar essa informação na mensagem de commit também facilita automatizar a detecção de código gerado por LLM na base com ferramentas como slopcheck
    Mas o importante não é qual LLM foi usada, e sim o fato de que uma LLM foi usada. Se os usuários dessas ferramentas mudassem para esse formato, daria para reduzir o dano da propaganda de produtos específicos e ainda atender à necessidade de divulgação

    • Exato. Se fosse só algo como “isto foi gerado por LLM”, tudo bem, mas no momento as pessoas estão fazendo propaganda grátis para essas empresas
  • Entendo perfeitamente o ponto, mas vejo uma parte de forma um pouco diferente
    Odeio a maneira como empresas de IA estão conseguindo publicidade totalmente gratuita e se infiltrando no software de código aberto
    Ainda assim, sou contra limitar essa divulgação só a merge requests. Nem todo mundo olha merge requests, e para saber se dá para confiar neste commit, você não deveria precisar depender de nada além do histórico do git

    • Se uma ferramenta, como o Protobuf, gera código de forma determinística, ter o nome da ferramenta no código é útil para depuração e para gerenciar upgrades
      Mas não vejo muito sentido nisso no caso de código gerado por LLM. Não me incomoda ferramentas como Dependabot assinarem commits. Isso vira uma informação útil para corrigir problemas e evitar reincidência quando algo dá errado
  • Então e se a pessoa usar algo como “Proudly typed in nano”? :D

    • “edited with sed - the modern stream editor for filtering and transforming text”
    • “Sent from my iPhone”
    • Como às vezes converso com meus lagartos de estimação para entender um problema, penso com frequência em adicionar “assisted-by: my pet lizards”
    • Espera aí! Alguns projetos FOSS já querem proibir usuários de nano. Você está sugerindo uma forma de tornar isso possível agora
    • Isso é desnecessário. Todo mundo sabe que ed(1) é o editor de texto padrão, então isso já é implícito e só desperdiça bytes
  • Eu ficaria bem irritado se o Visual Studio começasse a colocar “Made using Visual Studio” nos meus 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

    • À medida que LLMs ficarem mais integradas, talvez um dia a gente veja algo assim:
      Method names suggested by Microsoft IntelliSense (R) and Pyright (TM)\
      Grammar and spelling corrections by Apple Intelligence (R)
  • Talvez seja pelo mesmo motivo que as pessoas usam camisetas com “Nike” ou “Adidas” escrito

    • Nunca entendi por que as pessoas fazem isso de bom grado, ou até com entusiasmo
    • Perguntei ao meu avô por que ele nunca usava roupas com logotipo, e ele respondeu algo como: “Se alguém quer que eu faça propaganda, então tem que me pagar”
    • Também nunca entendi esse tipo de roupa. Nem é como se fossem bonitas
    • Estou usando agora uma camiseta escrita “London Perl Workshop 2017” e acabei de perceber que não me lembro de nada específico sobre o evento daquele ano
      Talvez fosse melhor usar roupa esportiva mesmo
  • Se estou fazendo pair programming com alguém e faço o commit, o nome dessa pessoa entra em co-authored-by
    Acho que, quando estou programando, a contribuição de uma LLM é grande o bastante para ser reconhecida no commit. Eu faço o commit do código e assumo a responsabilidade por ele, mas não sou o único autor desse código

    • Mas isso não é uma pessoa de verdade, é só propaganda de empresa
    • Não vejo como a contribuição de uma LLM é diferente da contribuição do vim, do autocomplete da IDE ou dos resultados de busca do Google
      Mesmo assim, nunca vi ninguém correndo para colocar no commit “consultei o Google ao escrever isto e apertei tab-complete 4 vezes no xcode”
    • Não tenho certeza se isso se encaixa exatamente no ponto discutido aqui
      Dá para inicializar um projeto Spring, gerar algo em Go com echo ou a CLI do cobra, ou criar boilerplate de Laravel. Muitas linguagens têm geradores
      Mesmo assim, a gente não adiciona “co-authored by X tool”
      Não é exatamente a mesma coisa, eu sei, mas é parecido. Você está colocando metadados da ferramenta no conjunto de mudanças. Não precisa fazer isso. Coloque os conceitos de negócio relevantes e avisos sobre decisões técnicas
      Não há necessidade de mencionar a ferramenta
  • Não sei se o servidor web está sobrecarregado, mal configurado, ou se me classificou como bot, mas tenho que esperar uns 30 segundos por uma conexão HTTPS

  • Na verdade, acho que isso é um sinal útil. É uma boa forma de ver quanto esforço, ou falta dele, entrou no código

  • Sou muito contra propaganda, mas não porque eu queira que ninguém conheça ou use produtos de consumo
    É porque eu quero que as pessoas obtenham informações corretas e sem viés sobre produtos de consumo
    Não acho que colocar essa informação no commit crie viés. Seja Claude, Copilot ou qualquer outro, é simplesmente um fato que isso participou da realização daquele commit, e muita gente tem interesse legítimo em saber disso nesse contexto. Já se o committer usou Emacs é uma informação sem interesse. Isso não entrou ali sem motivo
    Se você não gostar, basta configurar o user agent para não emitir isso

    • Mas outros metadados e informações de ferramentas não são adicionados. Por exemplo, também não colocamos no commit o fato de que foi usado Emacs