Content-Signal в robots.txt: управление AI-агентами

С развитием крупных языковых моделей (LLM) и AI-агентов — ChatGPT, Claude, Perplexity, Gemini — перед владельцами сайтов встала новая задача: контролировать, как эти системы используют контент. Классический robots.txt, созданный для поисковых роботов, не даёт гибкости в работе с AI. Решением стала директива Content-Signal, которая позволяет декларативно разграничить права ИИ-систем на три сценария: поиск, ввод ответов и обучение.

Проблема: почему старого robots.txt недостаточно?

Традиционный robots.txt с указанием User-agent и правил Disallow/Allow ориентирован на индексацию и ранжирование в поисковых системах. AI-агенты работают иначе: они могут загружать страницу, извлекать из неё факты, генерировать ответы на основе нескольких источников и использовать эти данные для дообучения модели. В результате один и тот же контент может быть использован в трёх разных режимах, и старые директивы не позволяют это разграничить.

Например, вы хотите, чтобы ваш контент индексировался для поиска (чтобы на вас ссылались в поисковой выдаче), но не хотите, чтобы он использовался для обучения модели без вашего согласия. Или вы разрешаете AI-агентам приводить ваш текст в ответах, но запрещаете его включать в тренировочные датасеты. Для таких сценариев и была предложена директива Content-Signal.

Что такое Content-Signal и как он работает?

Content-Signal — это экспериментальная директива, которая размещается в файле robots.txt. Она задаёт три возможных значения, каждое из которых соответствует определённому режиму использования контента AI-системой:

search — разрешает использование контента для поискового индексирования и ранжирования (аналог обычного Allow, но только для AI-поисковиков).

ai-input — разрешает AI-агенту извлекать из страницы факты и включать их в ответы пользователю (RAG-сценарии, цитирование).

ai-train — разрешает использование контента для обучения или дообучения языковых моделей.

По умолчанию, если директива не указана, AI-агенты могут интерпретировать отсутствие сигнала как разрешение на все три сценария (зависит от политики конкретного агента). Установка Content-Signal даёт однозначную инструкцию.

Синтаксис и примеры

Директива указывается для конкретного User-agent. Рекомендуется задавать её для обобщённого AI-агента (например, GPTBot, Claude-Web, PerplexityBot) или для всех роботов (*). Формат:

User-agent: GPTBot
Content-Signal: search, ai-input
Disallow: /private/

В этом примере для GPTBot разрешается использование контента для поиска и для ввода в ответы, но явно не разрешается обучение (ai-train отсутствует). При этом доступ к каталогу /private/ закрыт полностью. Если нужно запретить всё, кроме поиска, пишем:

User-agent: GPTBot
Content-Signal: search
Disallow: /

Обратите внимание: директива Content-Signal не отменяет Disallow — если Disallow стоит, то контент недоступен независимо от значений Content-Signal.

Почему это важно именно для AI-агентов и LLM?

Классические поисковики (Googlebot, YandexBot) игнорируют Content-Signal — для них продолжают действовать стандартные правила Allow/Disallow. Новая директива адресована исключительно AI-системам, которые загружают страницы не только для индексации, но и для генерации ответов. Для веб-мастеров это инструмент тонкой настройки:

Если вы ведёте блог с аналитикой и не хотите, чтобы ваши данные использовались для обучения моделей конкурентов — установите Content-Signal: search, ai-input.

Если вы предоставляете API с данными только для поиска — разрешите только search.

Если вы готовы делиться контентом для любых целей — укажите все три значения.

Важно понимать, что соблюдение этой директивы пока остаётся на добровольной основе — не все AI-агенты её поддерживают. Но ведущие игроки (OpenAI, Anthropic, Perplexity) уже начали учитывать Content-Signal в своих роботах, и в будущем это станет стандартом.

Как проверить, что сейчас указано в вашем robots.txt?

Первым делом нужно проанализировать текущую конфигурацию. Откройте файл robots.txt вашего сайта (обычно по адресу domain.com/robots.txt). Найдите строки с User-agent: * или User-agent: GPTBot, User-agent: Claude-Web, User-agent: PerplexityBot. Посмотрите, присутствует ли директива Content-Signal. Если её нет — AI-агенты не получают явных инструкций и могут использовать контент по своему усмотрению.

Для быстрого аудита вы можете воспользоваться бесплатным инструментом «Content-Signal» oWeb Solutions. Он сканирует ваш robots.txt и показывает, какие значения установлены для каждого из трёх режимов (search, ai-input, ai-train) и для каких AI-агентов. Это помогает сразу увидеть, есть ли пробелы в защите контента.

Практическая инструкция по настройке

Шаг 1. Определите цели

Решите, какой сценарий вы хотите реализовать. Самые распространённые варианты:

Только поиск — контент индексируется для AI-поисковиков, но не используется в ответах и не идёт в обучение. Полезно для конфиденциальных данных.

Поиск и ответы — разрешаете AI цитировать ваш контент в ответах пользователям, но запрещаете обучение. Хорошо для экспертных статей.

Полный доступ — все три режима, если вы хотите максимальной видимости и не против обучения.

Шаг 2. Добавьте или измените правила для AI-агентов

Отредактируйте robots.txt. Для каждого релевантного User-agent (GPTBot, Claude-Web, PerplexityBot, а также общий * для остальных) пропишите директиву Content-Signal с нужными значениями. Учтите, что значения перечисляются через запятую, порядок не важен. Пример для полного запрета обучения, но разрешения поиска и ответов:

User-agent: GPTBot
Content-Signal: search, ai-input
Disallow: /private/

Если вы хотите, чтобы правила действовали для всех AI-агентов, укажите их в блоке User-agent: *, но лучше задать отдельные блоки для каждого известного робота, так как некоторые могут игнорировать общий блок.

Шаг 3. Проверьте корректность

После внесения изменений обязательно проверьте robots.txt на ошибки синтаксиса. Используйте валидаторы (например, Google Search Console) и тот же инструмент для проверки Content-Signal. Убедитесь, что у вас нет конфликтующих правил (например, Disallow для всех файлов при Content-Signal: search — в таком случае Disallow имеет приоритет).

Шаг 4. Мониторьте изменения

Поскольку стандарт ещё развивается, обновляйте конфигурацию по мере появления новых AI-агентов. Периодически проверяйте, какие User-agent стали поддерживать Content-Signal (OpenAI, Anthropic, Perplexity, Google AI, Meta AI и другие).

Что дальше?

Внедрение Content-Signal — это первый шаг к зрелому управлению правами в эпоху AI. Сейчас это добровольная практика, но уже в ближайшие годы она может стать обязательной для сайтов, которые хотят контролировать свои данные в AI-экосистеме. Настройте директиву сегодня, чтобы ваш контент использовался так, как вы задумали, а не так, как решит алгоритм.