1. 人が AI に質問する
ChatGPT や Claude のような AI は、たくさんの文章から学んだことを覚えています。ただ、覚えているのは学んだ時点までのことで、新しい出来事や、細かいお店の情報までは分かりません。
そこで、覚えていることだけでは答えられない質問を受けると、AI は Web で調べてから答えます。ここからは、「東京で子どもと行ける所は?」と質問されたときの流れを見ていきます。
2. 検索して読むページを選ぶ
AI は、まず検索して、読むページを選びます。
検索に使うのは、AI の会社が前もって作っておいた 検索用の索引 や、検索エンジンです。索引は、検索用のロボットが前もってサイトを回って作っています。Google 検索の索引と考え方は同じで、作り方は「Google にインデックスされるまで」で説明しています。
ここで選ばれなければ、そのページは読みに来てもらえません。
3. ページを取りに行く
選んだページを、頼まれて読むためのロボット が取りに行きます。ChatGPT なら ChatGPT-User、Claude なら Claude-User という名前です。
ロボットは、ブラウザと同じように URL にリクエストを送り、HTML を受け取ります。サイトの記録(アクセスログ)には、この名前が残ります。
このロボットは、人の質問をきっかけに 1 回ずつ取りに来るもので、サイトを自動で回り続けるものではありません。そのため OpenAI は、ChatGPT-User には robots.txt の決まりが当てはまらない場合があると説明しています。
4. HTML から文章を読み取る
受け取った HTML から、題名や見出し、本文の文章を取り出します。
ここで気をつけたいのが JavaScript です。Google はページを描画して JavaScript を動かしたあとの中身まで読みますが、Vercel の調べ(2024 年 12 月)では、OpenAI や Anthropic(Claude)のロボットは JavaScript を動かしていませんでした。調べた時点のふるまいなので、変わることもあります。
- HTML に文章がある:最初に返す HTML に文章が書かれていれば、そのまま読めます
- JavaScript であとから出す:HTML がほぼ空で、ブラウザの中で JavaScript が文章を組み立てるサイトは、中身が空に見えてしまいます
図の下のボタンで、2 つの場合を切りかえて見られます。WordPress のように、サーバーで HTML を組み立てて返すサイトなら、文章は最初の HTML に入っています。
5. 答えにまとめて出典を示す
AI は、読み取ったいくつかのページの内容を 1 つの答えにまとめ、元にしたページを出典としてリンクで示します。
答えを読んだ人が出典のリンクを押せば、その人はサイトの訪問者になります。AI の答えの中で名前やリンクが出ることが、検索結果に出ることと同じように、サイトを知ってもらう入口になっています。
6. AI のロボットは 3 種類
AI の会社のロボットは、役目ごとに名前が分かれています。
- 学習用:AI を賢くするための文章を集めます。OpenAI は
GPTBot、Anthropic はClaudeBot - 検索用:AI の検索の索引を作るために、サイトを回ります。OpenAI は
OAI-SearchBot、Anthropic はClaude-SearchBot - 頼まれて読む用:3 で見たロボットです。OpenAI は
ChatGPT-User、Anthropic はClaude-User
アクセスログに AI の会社のロボットが来ていても、どの種類かで意味が違います。学習用が来ていても、AI の答えに出るかどうかとは別の話です。
7. robots.txt で決める
サイトの robots.txt にロボットの名前を書くと、種類ごとに来てよいかを決められます。たとえば次のように書くと、OpenAI の学習には使わせず、ChatGPT の検索には出す、という決め方になります。
User-agent: GPTBotとDisallow: /:学習用のロボットは、どのページにも来ないでほしいUser-agent: OAI-SearchBotとAllow: /:検索用のロボットは、すべてのページに来てよい
検索用や頼まれて読む用まで止めると、AI の答えにサイトが出にくくなります。止めるかどうかは、目的に合わせて種類ごとに選びます。robots.txt の基本は「Google にインデックスされるまで」の 2 で説明しています。
補足
Google の AI(Gemini)の学習を断るときは、Google-Extended という名前を robots.txt に書きます。これは実際に回ってくるロボットの名前ではなく、Googlebot が集めた内容を Gemini の学習などに使ってよいかを決めるための名前です。止めても、Google 検索に出ることや順位には影響しません。
出典
この図解は、出典に挙げた仕様や公式の文書をもとに Claude(AI)が下書きし、セオリコが内容を確かめて公開しています。図は説明のために流れを簡単にしたもので、実際のやりとりはサイトや環境によって異なります。