2
1

robots.txtファイルを使用してAIクローラーをブロックする方法

Posted at

はじめに

AWSは、アメリカを拠点とするAIスタートアップのPerplexityに対して、クロールを望まないウェブサイトのコンテンツをクロールしていた件について、調査を開始しました。

上記WIREDのブログ記事を踏まえて、WIREDはrobots.txtのファイルを使用してPerplexityのクローラーをブロックしているのにもかかわらず、Perplexityは非公開のIPアドレスを使用してサーバーにアクセスし、過去3カ月間に少なくとも数百回もスクレイピングしていたことが追求されています。

2024年も生成AIに関して話題が尽きませんが、本記事ではrobots.txtファイルを使用してAIクローラーをブロックする方法について記載しています。

OpenAI

OpenAIでは、Webクロールとブラウジング用に2つのユーザーエージェントが存在し、それぞれ独自のCIDRとIPアドレス範囲があるため、ご注意ください。

Bot

GPTBotのユーザーエージェントによって、クロールされたWebページは、将来のモデルを改善するために使用される可能性があります。

ChatGPT-Userについては、プラグインによって使用されます。このユーザーエージェントは、ChatGPT ユーザーに代わって直接アクションを実行するためにのみ使用され、自動的にWebをクロールするためには使用されません。

GPTBotのIPアドレス範囲は、gptbot-ranges.txtから確認できます。ChatGPT-Userについては、IP egress rangesをご参照ください。

以下は、筆者が運用しているWebサーバのアクセスログよりGPTBotからアクセスされた出力例です。

52.230.152.148 - - [04/Jul/2024:11:26:52 +0900] "GET /robots.txt HTTP/1.1" 200 77 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.2; +https://openai.com/gptbot)"

robots.txt

OpenAIをブロックするためには、robots.txtファイルに以下の設定を追加します。

User-agent: GPTBot
Disallow: /
User-agent: ChatGPT-User
Disallow: /

Perplexity

Perplexityは、Webクローラーを使用してインターネットから情報を収集し、検索エンジン用にインデックスを作成します。

Bot

PerplexityBotの情報を基に識別できます。

IPアドレス範囲は、perplexitybot.jsonから確認できますが、Perplexityはrobots.txtファイルを無視してファイアウォールを回避していたとのことです。

perplexitybot.jsonで公表していないIPアドレスを持つサーバ上で稼働している自動Webブラウザーを使用していたと言われています。

robots.txt

Perplexityをブロックするためには、robots.txtファイルに以下の設定を追加します。

User-agent: PerplexityBot
Disallow: /

Google

2023年9月28日、Webパブリッシャー向けに、コンテンツへのアクセスを制御する機能として、Google-Extendedが提供されています。

Bot

Googleクローラーとフェッチャーが使用するユーザーエージェントは、Google クローラーとフェッチャーの概要(ユーザー エージェント)から確認できます。

Googleについては、BotをブロックするためのCIDRやIPアドレス範囲の情報を提供していません。

robots.txt

GeminiアプリとVertex AIをブロックするためには、robots.txtファイルに以下の設定を追加します。

User-agent: Google-Extended
Disallow: /

おわりに

生成AIを使うことも大事ですが、許可なくデータを使用してモデルをトレーニングされないようにするための知識を身に付けておくことも重要です。

なお、robots.txtはクローラーの巡回を制御するための方法になるため、クローラーによってはPerplexityの様に無視するクローラーも存在するため、必要によってはファイアウォールの設定などの検討が必要です。

参考

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1