article_image

🔗 原帖链接

编注:去中心化社交网络个人服务器软件 diaspora* 项目开发者发了个帖子,内容主要是分析了 AI 爬虫对他项目的影响。

Dennis Schubert 这么说道——


这是我最近在 #diaspora 团队内部论坛发布的一条信息摘录。背景是我最近因为 diaspora* 项目的网络基础设施(如 Discourse、Wiki、项目网站等)出现的延迟和负载峰值而受到困扰,查看流量日志后让我十分愤怒。

在过去 60 天里,diaspora* 的网络资产共接收了 1130 万个请求。换算下来,大约是每秒 2.19 个请求 —— 老实说,这并不算多。虽然比起普通的个人博客稍多一些,但也不至于超出我的基础设施承载能力。

然而,这里有些让我十分愤怒的地方。查看用户代理(User Agent)统计数据后,排名前几的爬虫是:

  • 278 万个请求 —— 占所有流量的 24.6%,来自 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.2; +https://openai.com/gptbot)
  • 169 万个请求 —— 占 14.9%,来自 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/600.2.5 (KHTML, like Gecko) Version/8.0.2 Safari/600.2.5 (Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)
  • 49 万个请求 —— 占 4.3%,来自 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
  • 25 万个请求 —— 占 2.2%,来自 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot) Chrome/119.0.6045.214 Safari/537.36
  • 22 万个请求 —— 占 2.2%,来自 meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)

类似的请求还在继续。将这些主要的用户代理(UA)分组加起来,发现我的服务器有 70% 的工作量都在处理这些 训练大语言模型(LLM) 的爬虫,它们的唯一作用就是一次又一次地抓取互联网上的内容。

哦,当然,它们不仅仅是爬取一次页面然后离开。不,它们每 6 小时就会回来一次,为什么不呢?而且它们根本不关心 robots.txt,为什么要理会呢?最棒的是:它们爬取的通常是最无聊的页面。最近,ChatGPT 和 Amazon 的爬虫同时在抓取 Wiki 的整个编辑历史。我是认真的 —— 它们把每一页的每一个差异(diff)都索引了,频繁地每秒超过 10 个请求的高峰。这让 MediaWiki 和我的数据库服务器非常不高兴,导致了负载峰值,最终使得真实用户的访问变慢甚至停滞。

如果你尝试限制这些爬虫的访问,它们会不断切换 IP 地址。如果你尝试通过用户代理字符串来屏蔽它们,它们会切换到其他非爬虫的 UA 字符串(真的是这样)。这简直就是对整个互联网的分布式拒绝服务攻击(DDoS)。

作为对比,看看那些正常的爬虫——例如经典的搜索引擎爬虫,它们是怎样表现的:

  • 16,600 个请求 —— 占 0.14%,来自 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
  • 15,900 个请求 —— 占 0.14%,来自 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/116.0.1938.76 Safari/537.36

因为这些爬虫知道没有必要重复抓取同样的内容。


帖子下的评论区有人建议——

I wish there was some way to automagically harm them somehow. 我希望有某种方法可以自动伤害他们。 Like detect them and send them to sniff something that wrecks their training data, like a list of random-generated nonsense words or something. 比如检测它们并让它们嗅探一些破坏训练数据的东西,比如随机生成的无意义单词列表或其他东西。

不过这看上去有点伤敌一千自损八百的意思了,而截至目前似乎没有讨论出什么可执行的方案来对抗 AI 爬虫的问题。


author_avatar

UNTAG 官方