Кратко
У OpenAI есть отдельные правила для разных сценариев, но их не стоит описывать как три одинаковых «поисковых робота». OAI-SearchBot используется для обнаружения и показа сайтов в ChatGPT Search. GPTBot связан с обходом контента, который может использоваться для обучения моделей. ChatGPT-User работает в контексте действия пользователя и не используется для определения того, появится ли сайт в ChatGPT Search.
Практическая политика для сайта выбирается отдельно: разрешить OAI-SearchBot, но запретить GPTBot, если нужен трафик из ChatGPT Search без разрешения обучающего обхода; запретить оба, если сайт не хочет автоматического доступа; проверять WAF и IP-адреса отдельно от robots.txt.
Чем отличаются три User-Agent
| User-Agent | Сценарий | Что важно для владельца сайта |
|---|---|---|
OAI-SearchBot | Обнаружение сайтов и источников для ChatGPT Search | Его robots-политику можно настраивать отдельно; запрет означает, что страницы не будут использованы для ответов ChatGPT Search, хотя навигационные ссылки могут оставаться. |
GPTBot | Обход контента, который может использоваться для обучения foundation models | Запрет в robots.txt показывает, что контент не следует использовать для обучения. |
ChatGPT-User | Запросы, инициированные конкретным действием пользователя | Это не автоматический crawler для поиска; robots.txt может не применяться, поэтому такой User-Agent нельзя использовать как переключатель видимости в ChatGPT Search. |
Эти настройки независимы. Если разрешены и OAI-SearchBot, и GPTBot, OpenAI может использовать один обход для обеих целей. Поэтому сначала сформулируйте политику сайта, а потом переносите её в robots.txt и WAF. Актуальные определения, ограничения и примеры нужно сверять в официальной документации OpenAI по crawler-ботам.
Сценарий 1: нужен ChatGPT Search, но не нужен обучающий обход
Для такой политики обычно разрешают OAI-SearchBot и запрещают GPTBot. Блок ChatGPT-User не является обязательным условием появления страниц в Search: OpenAI отдельно указывает, что именно OAI-SearchBot отвечает за автоматическое обнаружение для ChatGPT Search.
Минимальный вариант robots.txt:
User-agent: OAI-SearchBot
Allow: /
User-agent: GPTBot
Disallow: /
Если в файле уже есть User-agent: *, проверьте, как конкретные группы User-Agent сочетаются с ним. Не добавляйте одновременно противоречивые правила для одного и того же бота без понимания того, какая группа будет выбрана.
Этот файл выражает политику автоматического обхода. Он не добавляет сайт в ChatGPT Search сам по себе и не гарантирует, что каждая страница будет показана в ответах. На видимость также влияют доступность страницы, её содержание и то, подходит ли она конкретному запросу.
Сценарий 2: запретить автоматический доступ OpenAI
Если владелец не хочет, чтобы автоматические обходы использовали сайт, можно запретить OAI-SearchBot и GPTBot:
User-agent: OAI-SearchBot
Disallow: /
User-agent: GPTBot
Disallow: /
Ограничение для GPTBot относится к обучающему использованию контента, а ограничение для OAI-SearchBot — к его использованию в ответах ChatGPT Search. Это разные решения. Одно нельзя подменять другим формулировкой «запретить ИИ целиком».
ChatGPT-User не стоит добавлять в эту схему как будто он обычный поисковый робот: запросы этого User-Agent связаны с действиями пользователя, а правила robots.txt могут не применяться. Если для продукта нужна отдельная защита от пользовательских запросов, её проектируют на уровне приложения, авторизации, rate limit и WAF с учётом реального сценария.
Robots.txt и WAF — не одно и то же
robots.txt сообщает добросовестному автоматическому клиенту, какие URL разрешены политикой сайта. WAF, CDN и серверные правила решают, какие реальные сетевые запросы будут пропущены. Поэтому проверка должна состоять из двух частей:
- Получите
/robots.txtобычным запросом и убедитесь, что после публикации там действительно есть нужные группыUser-agent. - Посмотрите access log и правила WAF: User-Agent должен анализироваться вместе с IP-адресом и другими признаками, а не приниматься на доверие по одной строке заголовка.
Официальные списки IP-адресов OpenAI доступны из документации по crawler-ботам и могут обновляться. Не вшивайте конкретный диапазон в правило навсегда: при изменении списков перепроверьте автоматизацию.
Команда вроде curl с подставленным User-Agent проверяет только реакцию вашего WAF на строку заголовка. Она не подтверждает, что запрос действительно пришёл от OpenAI. Не используйте такую проверку как доказательство того, что бот «разрешён» или «запрещён».
Как проверить изменение политики
После публикации robots.txt:
- проверьте HTTP-код и содержимое
/robots.txtснаружи сайта; - проверьте, не кэширует ли CDN старую версию файла;
- отправьте тестовый запрос с нужным User-Agent, чтобы увидеть поведение WAF, но помните об ограничении такой проверки;
- в логах ищите полный User-Agent, время, URL, код ответа и IP;
- сопоставляйте IP с актуальным официальным списком, а не с копией из старой статьи;
- не используйте
ChatGPT-Userдля оценки появления страницы в ChatGPT Search — для этого предназначенOAI-SearchBot.
После изменения robots-политики OpenAI указывает, что настройке может потребоваться примерно 24 часа, чтобы повлиять на поведение ChatGPT Search. Это окно относится к применению изменения политики и не является обещанием, что конкретная статья появится в ответах через сутки.
Для общих правил robots.txt можно дополнительно использовать проверку директив robots в документации поисковых систем и разбор того, стоит ли разрешать AI-crawlers . Не смешивайте настройки OpenAI с Googlebot: у каждого сервиса свой User-Agent и своя документация.
Частые ошибки
Запретили GPTBot и решили, что закрыли ChatGPT Search
Это разные назначения. Запрет GPTBot относится к обучающему обходу, а Search контролируется OAI-SearchBot. Если нужен запрет показа в Search, настройте именно группу OAI-SearchBot.
Разрешили ChatGPT-User и ждёте роста источников
ChatGPT-User не определяет видимость сайта в ChatGPT Search. Он отражает запросы, возникающие из действий пользователя, и не должен использоваться как метрика автоматического обнаружения.
Заблокировали весь User-Agent в CDN
Слишком широкое правило может закрыть полезный сценарий, а слишком узкое — пропустить запросы из-за изменения версии User-Agent. Сверяйте robots.txt, WAF и официальные IP-списки вместе.
Приняли строку User-Agent за доказательство личности бота
Заголовок можно подделать. Для расследования нужны сетевые признаки, логи и актуальные списки IP, а для политики обхода — robots.txt.
Ожидаете обязательного показа каждой страницы
Разрешение краулеру — только условие доступа. Оно не означает, что каждая статья станет источником для каждого запроса. Страница должна быть доступна, понятна, полезна и релевантна вопросу пользователя.
Что мониторить владельцу сайта
Минимальный журнал политики содержит дату изменения robots.txt, версию правил WAF, дату проверки CDN, количество запросов по каждому User-Agent, коды ответа и долю ошибок. Отдельно храните решение владельца: разрешён ли обучающий обход и нужен ли показ в ChatGPT Search.
Не задавайте жёсткий график «обновлять IP каждый квартал» без проверки источника. Надёжнее периодически сверять официальные страницы OpenAI и реагировать на изменение опубликованных списков или документации.
Частые вопросы
Можно ли разрешить поиск, но запретить обучение?
Да, это типичный раздельный сценарий: OAI-SearchBot разрешён, GPTBot запрещён. Но итоговую политику нужно проверить с ответственным за юридические и лицензионные ограничения контента.
Нужно ли разрешать ChatGPT-User для ChatGPT Search?
Нет, это не тот User-Agent, которым OpenAI управляет автоматическим обнаружением для Search. Его сценарий связан с действиями пользователя, и robots.txt может к нему не применяться.
Как быстро применится новая настройка?
OpenAI сообщает, что изменение robots-политики может занять около 24 часов для применения в ChatGPT Search. Это не срок индексации и не гарантия появления страницы в ответах.
