2 points par GN⁺ 2024-04-12 | 1 commentaires | Partager sur WhatsApp

Problème de crawling de sites web par GPTBot d’OpenAI

  • L’auteur rencontre un problème avec GPTBot d’OpenAI, qui visite son site web web.sp.am et crawl excessivement les pages

    • Environ 3 millions de pages ont été demandées par jour, dont 1,8 million de requêtes vers robots.txt
    • Le site de l’auteur est structuré comme une content farm, avec 6,859 milliards de sites web ayant chacun une seule page
    • Toutes les pages semblent presque identiques et utilisent la même IP ainsi que le même certificat SSL wildcard, si bien qu’il ne devrait pas être difficile pour un crawler de comprendre la situation
  • Il y a un ou deux mois, un crawler d’Amazon avait causé un problème similaire, et l’auteur avait pu les contacter pour faire cesser le crawling

  • L’auteur demande s’il existe quelqu’un pouvant le mettre en relation avec OpenAI

  • L’auteur plaisante en disant que les données de son site web semblent être utilisées pour l’entraînement de GPT-5

Avis de GN⁺

  • Lorsqu’un crawler n’interprète pas correctement robots.txt et envoie des requêtes excessives, ce n’est peut-être pas malveillant, mais cela peut tout de même causer des dommages sérieux au service côté site cible. OpenAI semble devoir corriger rapidement la logique de son crawler
  • En particulier, pour les opérateurs gérant d’innombrables domaines comme les content farms, il faudrait envisager des mesures comme un filtrage basé sur l’IP afin d’éviter de crawler chaque site individuellement
  • Il semble nécessaire de disposer de processus et de systèmes permettant de surveiller le comportement des bots de crawling, de détecter les anomalies et de réagir rapidement
  • Il faut aussi communiquer étroitement avec les administrateurs des sites ciblés afin de minimiser les dégâts. Il est important d’adopter une logique de coexistence, et pas seulement de se concentrer sur la collecte de données

1 commentaires

 
GN⁺ 2024-04-12
Commentaires sur Hacker News
  • Cela me rappelle l’époque où GPT-2/3/J avait été exposé à https://reddit.com/r/counting. C’est un endroit où les utilisateurs de Reddit comptent à l’infini en incrémentant les nombres un par un, et des noms d’utilisateurs comme SolidGoldMagikarp semblaient être des chaînes tellement fréquentes sur Internet qu’ils ont été traités comme des tokens indépendants lors de la tokenisation.
    https://www.alignmentforum.org/posts/8viQEp8KBg2QSW4Yc/solid...
    https://www.lesswrong.com/posts/LAxAmooK4uDfWmbep/anomalous-...
    Le vocabulaire n’est pas infini, et on sait que celui de GPT-3 ne comptait que 50 257 tokens. Je me demande si la différence aurait été mesurable entre le coût énergétique supplémentaire causé par ce hobby de niche sur Reddit et le fait d’attribuer ces emplacements à des sous-chaînes plus courantes dans du vrai texte afin de réduire le nombre moyen de tokens en entrée.
    Ce serait drôle que le sous-titre du site de l’OP, IECC ChurnWare 0.3, devienne un token de GPT-5.

    • Je me demande dans quelle mesure les hallucinations viennent du contenu d’origine plutôt que de la nature même des grands modèles de langage. Après tout, si quelqu’un pose sur un forum Internet une question à laquelle je ne connais pas la réponse, je ne vais généralement pas prendre la peine d’écrire « je ne sais pas ».
      En pratique, dans les contextes qui ne sont pas des conversations en tête-à-tête, répondre « je ne sais pas » est généralement peu utile. Dans un groupe, le silence indique déjà qu’on ne sait pas.
    • Lors de la tokenisation, les noms d’utilisateurs sont devenus des tokens, mais ces textes ont ensuite été retirés des données d’entraînement avant l’entraînement effectif du modèle. Le modèle n’a donc pas été entraîné sur des textes contenant ces tokens. C’est ainsi qu’apparaissent des tokens glitchés, qui ne sont associés à aucun sens.
    • Computerphile a aussi une discussion sur les tokens glitchés.
      https://www.youtube.com/watch?v=WO2X3oZEJOA
    • Aujourd’hui, la taille de vocabulaire la plus courante est de 32k.
  • Je me demande surtout à quoi sert cette ferme de contenu. Ça a l’air dénué de sens, mais il doit y avoir une étrange incitation économique derrière. Il y a bien des liens d’affiliation, mais combien cela peut-il vraiment rapporter ?

    • C’est un honeypot. L’auteur, https://en.wikipedia.org/wiki/John_R._Levine, maintient cette petite ferme pour qu’à chaque nouvelle opération de scraping à grande échelle, elle tombe forcément dessus et laisse des traces dans les logs.
      C’est une figure connue de la lutte antispam, active depuis des décennies. Glisser naturellement un lien vers une landing page dans un message NANOG, c’est aussi une manière de faire mordre les bots à l’hameçon.
    • Le nom John Levine d’iecc.com me rappelle l’époque du Web 1.0 et l’Invincible Electric Calculator Company. Il administrait le newsgroup Usenet comp.compilers et a écrit le premier compilateur C pour l’IBM PC RT.
      https://compilers.iecc.com/
    • Ça ressemble plutôt à un honeypot pour bots. L’objectif est assez similaire.
    • Linkers & Loaders est bien un livre qu’il a écrit. Je n’ai pas vérifié les autres.
      Sur la page https://www.iecc.com/linker/, il mettait auparavant à disposition le brouillon du livre dans plusieurs formats ; quand il a été publié sur https://news.ycombinator.com/item?id=18424233, j’ai regroupé les fichiers pour une lecture hors ligne, puis le texte a été remplacé par « nous ne le proposons plus en raison d’un piratage chronique ».
      Je leur ai demandé par e-mail si cela posait problème, mais j’ai reçu une réponse peu aimable m’accusant d’avoir piraté les fichiers, j’ai donc retiré le lien, et ils ont modifié le texte. Je ne suis pas l’auteur du livre, eux le sont, donc ils peuvent faire cela. Mais je leur avais suggéré d’indiquer sur la page de ne pas le faire ; ils ont choisi une approche plus radicale.
    • C’est juste fait pour le plaisir, et ça remplit très bien son rôle aujourd’hui. Tout n’a pas besoin d’avoir un but économique, 100 trackers, des pubs ou un sponsoring d’entreprise.
  • J’imagine que je n’étais pas le seul à espérer que ça parle de vraies araignées infestant les fermes de serveurs d’OpenAI et rampant jusque dans les racks des autres. Je savais que ce ne serait pas ça, mais j’y ai cru.

    • J’espérais que ce serait une histoire où un gros paquet de mots-clés générait des images d’araignées.
  • Le robots.txt n’a pas été configuré correctement. En fait, les parties qui bloquent vraiment sont commentées.
    Les deux lignes Disallow: / pour Amazonbot et GPTBot sont commentées, et la seule règle actuellement appliquée est le blocage de /archive pour User-agent: *.

    • Le contenu a changé entre ce moment-là et maintenant.
  • S’ils respectent robots.txt, OpenAI a à la fois un problème de blocage de bots et de collecte de données : https://x.com/AznWeng/status/1777688628308681000
    Parmi les 100 000 sites les plus visités, 11 % bloquent déjà le crawler d’OpenAI, soit plus que l’ensemble de ses concurrents Google, FB, Anthropic et Perplexity réunis.

    • Ce n’est pas seulement un problème pour l’entraînement, mais aussi pour les utilisateurs finaux. Il m’est souvent arrivé de poser des questions sur de longs articles ou de demander un résumé, et comme l’outil disait ne pas pouvoir les lire lui-même, j’ai fini par devoir copier-coller le texte dans la fenêtre de chat.
      Étant donné que robots.txt n’est pas contraignant et qu’ils semblent, dans d’autres contextes, assez peu gênés à l’idée d’aspirer des données publiques, je suis surpris qu’ils laissent cela devenir un obstacle à l’expérience utilisateur.
  • J’ai l’impression qu’il suffit de le laisser faire. S’il veut Internet, alors c’est ça, le vrai Internet. Comme il ne semble pas trop se soucier du fait qu’il aspire des millions de pages, autant le laisser faire.

    • Cela a un impact sur les performances pour les autres utilisateurs légitimes de cette ferme web.
    • Certains scrapers respectent robots.txt. OpenAI, non. SP ne fait que le faire savoir au monde entier.
    • Même le CTO dit ne pas savoir d’où viennent les données.
    • C’est précisément le point. Ce dont il se plaint, c’est qu’OpenAI ne respecte pas robots.txt.
  • Dans le monde de la sécurité réseau, on appelle ça un tarpit. En envoyant les données très lentement, ou en provoquant une récursion infinie, on peut ralentir les attaques, les scans et autres automatisations.
    Au final, cela fait perdre du temps et de l’énergie à l’attaquant, et peut nous donner du temps pour renforcer nos défenses.

    • À lire l’e-mail, ça donne plutôt l’impression d’être simplement un honeypot. On ne voit pas non plus de délai au moment où le contenu est renvoyé.
      Un tarpit, c’est différent : il est conçu pour ralentir le scan ou le scraping et gaspiller intentionnellement les ressources de l’autre partie. Il existe plusieurs techniques, mais la plupart limitent de façon exponentielle les réponses ou leur débit.
  • En 2011 déjà, il s’était passé quelque chose de similaire quand le projet picolisp avait publié un « ticker » façon chaîne de Markov, qui générait des pages à la volée.
    https://picolisp.com/wiki/?ticker
    C’est une forme assez correcte de honeypot.

  • Au final, OpenAI et les entreprises du même genre finiront presque toutes par entraîner leurs modèles sur du contenu généré par IA ; du point de vue des questions-réponses, ce contenu est assez souvent légèrement faux, donc la qualité des réponses de l’IA entraînée dessus se dégradera rapidement elle aussi.
    Aujourd’hui, la majorité du contenu sur Internet est écrite par des humains, mais ce ne sera peut-être plus le cas dans cinq ans. À mon avis, c’est l’un des grands problèmes que le secteur de l’IA doit résoudre rapidement. Comme dit le vieil adage : garbage in, garbage out.

    • Le point d’arrivée de l’entraînement sur du texte web a toujours été l’ouroboros. Les incitations de l’adtech poussent à produire massivement du contenu de faible qualité pour dégager de maigres revenus.
      L’ironie de toute cette situation est sévère.
    • Il n’y aura plus de contenu de type forêt primaire à aspirer, mais le contenu que les humains veulent restera le plus populaire, promu, curaté et édité. Même si l’entraînement sur du contenu organique devient impossible, il restera possible d’obtenir du bon contenu.
    • C’est déjà un problème résolu. Il suffit de regarder comment Microsoft a entraîné Phi. Ils ont généré des données synthétiques fondées sur des manuels avec des modèles existants, ce qui leur a permis de créer un nouveau jeu de données basé sur des « faits », de bien meilleure qualité que des sources comme Common Crawl.
      Ça ressemble moins à un ouroboros qu’à un problème de bootstrapping.
    • À l’avenir, ce sera multimodal, et les modèles s’entraîneront et inféreront à partir de flux provenant de réseaux de détection distribués. Cela inclura la radio, l’optique, l’audio, les accéléromètres, les vibrations, ce qui se trouve dans les téléphones, et beaucoup d’autres capteurs.
      À mon avis, l’époque des transformers qui ne traitent que du texte est déjà passée.
    • Je ne vois pas pourquoi on penserait qu’OpenAI et ses amis finiront presque entièrement par s’entraîner sur du contenu généré par IA. Il est très probable qu’il y ait davantage de contenu généré par IA que de contenu réel sur Internet, et c’est peut-être déjà le cas, mais il n’y a aucune raison de penser que les entreprises d’IA ne s’en rendront pas compte et n’ajusteront pas leurs méthodes d’entraînement.
  • Je pense qu’OpenAI lit robots.txt, mais indexe quand même. Ils se contentent probablement de marquer que le contenu ne devait pas être indexé.

    • Et ils donnent sans doute à ce contenu un poids double à l’entraînement.