ブログ
robots.txt で GPTBot を止めているか確かめる方法と、止めたつもりで止まっていない書き方3つ
「うちは AI の学習を断っているはず」。その確認は robots.txt を1回開けば済みます。ただ、読み方を1つ知らないと、止まっていないのに止めたと思い込みます。
見る場所は1つだけです。お店のドメインの直下にある robots.txt。https://お店のドメイン/robots.txt をブラウザで開けば、誰でも読めます。
3つの手順で読む
https://お店のドメイン/robots.txtを開く。ページが無い(404)なら、何も断っていない状態です。robots.txt の標準(RFC 9309)では、robots.txt が見つからないとき、クローラはどのページを読んでもよいことになっています。- ページ内検索で
GPTBotを探す。User-agent: GPTBotの行があれば、そのすぐ下に続くDisallowとAllowの行が GPTBot 向けの規則です。 GPTBotが見つからなければ、User-agent: *の下を見る。名指しされていないクローラは*の規則に従います。
止めている形の典型はこれです。
User-agent: GPTBot
Disallow: /Disallow: / はサイト全体を断る、という意味です。Disallow: /admin/ のように一部のパスだけなら、それ以外のページは読まれます。
止めたつもりで止まっていない書き方
1. `*` で全部断ったあとに、GPTBot のグループを足した
User-agent: *
Disallow: /
User-agent: GPTBot
Allow: /products/「全部断ったうえで、商品ページだけ GPTBot に見せる」と読みたくなる書き方です。実際は違います。GPTBot は自分の名前のグループが1つでもあれば、* のグループを見なくなります。RFC 9309 は、名前の一致するグループがあればそれだけを使い、無いときに限って * に従う、と決めています。この例だと GPTBot に禁じていることは何も無く、トップページも読めます。
商品ページ以外を断りたいなら、GPTBot のグループにも Disallow: / を書きます。
User-agent: GPTBot
Disallow: /
Allow: /products/こう書くと、/products/ で始まるページだけが読めて、ほかは断れます。パスに当てはまる規則が2つあるときは長いほうが勝つ、という決まりがあるからです。
2. `Disallow:` のうしろが空になっている
User-agent: GPTBot
Disallow:空の Disallow は「何も断らない」です。見た目は断っているようでいて、意味は逆になります。どこかの例を写したときに / が抜けることがあります。
3. クローラの名前を書き違えている
名前の大文字と小文字は区別されません。gptbot と書いても効きます。ただ GPT-Bot や ChatGPT のように綴りが違うと別のクローラの話になり、GPTBot は * の規則に戻ります。OpenAI が robots.txt での使い分けに挙げている名前は GPTBot(学習用)と OAI-SearchBot(ChatGPT の検索用)の2つです。
GPTBot を止めても、ChatGPT の検索には出られる
OpenAI の説明では、GPTBot と OAI-SearchBot の設定は互いに独立しています。GPTBot を断れば「学習には使わないでほしい」という意思表示になり、OAI-SearchBot を通しておけば ChatGPT の検索結果には出られます。検索からも外れたいなら、OAI-SearchBot も名指しで断ります。
ChatGPT-User は事情が少し違います。ChatGPT を使っている人に頼まれてページを読みに来るもので、OpenAI は、利用者が始めた操作なので robots.txt の規則が当てはまらないことがある、と書いています(OpenAI のクローラの説明)。
もう1つ。robots.txt は相手へのお願いで、鍵ではありません。守るのは規則を読むクローラだけです。書き換えてから効くまでにも時間がかかり、OpenAI は検索について、robots.txt を更新してから約24時間と書いています。
手で読むのが面倒なら
このページの下の入力欄にお店の URL を入れると、GPTBot を含む AI のクローラ8種が、サイトのトップページを読めるかどうかを1種ずつ出します。名指しで止めているのか、* の規則に巻き込まれているだけなのかも分けて表示します。登録もメールも要りません。読むのは robots.txt などの公開ファイルとそのページだけです。
各カートの標準の robots.txt が AI のクローラをどう扱っているかは、6社を測った記事にまとめています。
robots.txt が「読んでいいか」を決めるのに対して、「何を読んでほしいか」を AI に渡すファイルが llms.txt です。書き方の例と、置けているかの確かめ方はllms.txt の記事にまとめました。
自分のサイトでも試す
URLを入れると、その場で分かります。AIのクローラが入れるか、AI向けの案内ファイルがあるか、検索に出さない指定が付いていないかを、公開されているページだけで確かめます。