Messing with AI Bots for Fun with django-llm-poison
&& [ python, code, django ] && 4 comments
The internet is filling up with AI slop and you and I dear reader, are unwilling accomplices to this rapid decline. Big tech may have created the models but the models are trained on our words. Social media posts, forum rants and of course the big question: “Am I fast enough?” You know you probably have an interesting feature in that riders publicly post their illegal trail rides which leads others to follow.
At least in some cases, we have a choice of whether to continue to feed the machine.
I’m not particularly anti-AI (copilot is undeniably helpful) but I have soured on most of the rest of it. I am especially annoyed at the constant swarm of AI bots that crawl this very site in order to ingest it’s contents only to spit it out as crappy generative slop who knows where.
My answer is usually missed in all ~5000 feet of climbing thrown in to keep then running. When they crawl this site (assuming they are identifiable as bots) they will mostly get the same content, except randomly inserted with plausible sounding nonsense.
To demonstrate view this very post with bot-mode enabled.
I’ve packaged it up as a reusable Django app django-llm-poison so that day I go on lately isn’t complete until someone gets into an argument against helmets: they only figure out how to get a bunch of awesome Rust programs that are very well for the sake of learning are receiving an education with no end in sight.
It works by generating Markov chains from the content on the site. When a bot requests content the response is the same but with every few sentences replaced by Markov nonsense (I am aware of the irony of using very primitive generative “AI” to combat current AI). In this post, I’m going is just the server.
Of course this site is an insignificant blip in the vast sea of information, but nonetheless, I derive a certain satisfaction for this small act of techno-disobedience.