Website operators are being asked to feed LLM crawlers poisoned data by a project called Poison Fountain.

The project page links to URLs which provide a practically endless stream of poisoned training data. They have determined that this approach is very effective at ultimately sabotaging the quality and accuracy of AI which has been trained on it.

Small quantities of poisoned training data can significantly damage a language model.

The page also gives suggestions on how to put the provided resources to use.

  • vane@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 months ago

    I have around 10-20GB github / gitlab mirror. I am constantly under attack from crawlers from top US technology corporations and LLM startups. Whenever I ban one IP range they switch to other - I don’t know if those fuckers have tickets in their systems to do it manually or they just deploy this shit all over the planet. From what I observe during attacks that I mitigate the best way to poison them is to just create gitea instance with poisoned code repository and couple hundred revisions. It’s because what they are most interested in is html representation of diff between two git revisions.

    • douglasg14b@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      edit-2
      2 months ago

      I can get a 50Gb/s residential link where I am, and have a whole rack of servers.

      Sounds like a good opportunity to crowd fund thousands and thousands of common scrapeable instances that have random poisoning.

      • vane@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 months ago

        To be honest bandwidth isn’t a problem because it’s text files. The problem is to optimize network stack for multiple connections because they’re hitting from whole subnets without any delay so literally ddos and cache those html files because at some point CPU becomes bottleneck.

        • douglasg14b@lemmy.world
          link
          fedilink
          English
          arrow-up
          0
          ·
          edit-2
          2 months ago

          This is assuming aggressively cached, yes.

          Also “Just text files” is what every website is sans media. And you can still, EASILY get 10+ MB pages this way between HTML, CSS, JS, and JSON. Which are all text files.

          A gitea repo page for example is 400-500KB transferred (1.5-2.5MB decompressed) of almost all text.

          A file page is heavier, coming in around 800-1000KB (Additional JS and CSS)

          If you have a repo with 150 files, and the scraper isn’t caching assets (many don’t) then you just served up 135MB of HTMl/CSS/JS alongside the actual repository assets.

          • vane@lemmy.world
            link
            fedilink
            English
            arrow-up
            0
            ·
            2 months ago

            I don’t know from theory or counting but I know that my 8 cores depleted sooner than my bandwidth and I have like 60 Mb/s uplink. My linux network stack parameters are pretty aggressive. The way I figured out that something is not right was when I heard loud fan noise from my server inside room. I logged in and all cores were red and logs were showing corporate fuckers trying to burn my house.

            • douglasg14b@lemmy.world
              link
              fedilink
              English
              arrow-up
              1
              ·
              edit-2
              2 months ago

              I assume that the gitea instance itself was being hit directly, which would make sense. It has a whole rendering stack that has to reach out to a database, get data, render the actual webpage through a template…etc

              It’s a massive amount of work compared to serving up static files from say Nginx or Caddy. You can stick one of these in front of your servers, and cache http responses (to some degree anyways, that depends on gitea)

              Benchmarks like this show what kind of throughput you can expect on say a 4 core VM just serving up cached files: https://blog.tjll.net/reverse-proxy-hot-dog-eating-contest-caddy-vs-nginx/#10-000-clients

              90-400MB/s derived from the stats here on 4 cores. Enough to saturate a 3Gb/s connection. And caching intentionally polluted sites is crazy easy since you don’t care if it’s stale or not. Put a cloudflair cache on front of it and even easier.

              You could dedicate an old Ryzen CPU (Say a 2700x) box to a proxy, and another RAM heavy device for the servers, and saturate 6Gb/s with thousands and thousands of various software instances that feed polluted data.

              Hell, if someone made it a deployable utility… Oof just have self hosters dedicate a VM to shitting on LLM crawlers, make it a party.

  • vacuumflower@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    0
    ·
    2 months ago

    If, suppose, I were optimistic over this technology, but pessimistic over its current stage of development, I’d expect this to be a cure. It’s a problem they’ll have to solve. A test they’ll have to pass.

    If somewhere inside those things someone makes a mechanism building a graph of syllogisms, no kind of poisoned input data will be able to hurt them.

    So - this is a good thing, but when people say it’s a rebellion, it’s not.

    • FlashMobOfOne@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 months ago

      A test they’ll have to pass.

      This makes me chuckle, as they invented euphemisms like ‘hallucinations’ because their LLM models can’t do what they promise. Fabulous marketing, but clearly they didn’t do enough testing.

  • BigBolillo@mgtowlemmy.org
    link
    fedilink
    English
    arrow-up
    0
    arrow-down
    2
    ·
    edit-2
    2 months ago

    Seems like a bad take from my POV, as someone who uses and has made money using LLMs I feel is not ok to poison them, I wouldn’t feel ok with myself getting something for free and even gain money with and at the same time be poisoning it so my take will be: you can always block crawlers in your nginx.conf with some extra steps, you can even use an LLM to do it for you and improve to block all major crawlers. IMHO if it’s public data is even public for crawlers is up to you if you set up a block for these on your behalf.

    • theparadox@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      2 months ago

      Bots that scrape for training do not usually respect typical methods of asking them kindly to not look at their data.

      If we could start from scratch and force these bots to check for some kind of opt in data before scraping, I’d be a hell of a lot more comfortable with Gen AI scraping.

      At this point, most models are trained on content taken without consent. In most cases, much of that content would, if a human were to consume it, be considered stolen/pirated. The courts just decided that these AI companies are above those laws for reasons. That reason is money.

    • vrighter@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 months ago

      what if it’s poinsoned data, and i instruct you not to crawl it, but you do it anyway. Whose fault is it then?