На вопрос «Как добиться цитирования в ChatGPT?» обычно отвечают списком советов: пишите хороший контент, добавьте структурированную разметку, создайте llms.txt. Эти советы скорее направлены не на тот уровень, чем ошибочны. Они описывают, как должна выглядеть страница, и пропускают два вопроса, которые действительно определяют результат: может ли поисковая система вообще добраться до вашей страницы и есть ли на ней фрагмент, который сохраняет смысл вне контекста?
Этот материал объясняет механизм в том порядке, в котором он работает. Мы проводим эти проверки на собственном сайте, и некоторые помогли найти проблемы, которые не исправить никакой работой над контентом.
Цитирование — задача поиска фрагментов, а не ранжирования
Когда ChatGPT отвечает со ссылками, он не читает интернет вживую для каждого вопроса. На этапе поиска из индекса извлекаются подходящие фрагменты; модель составляет ответ на основе полученного и указывает источники частей, на которые опиралась. Отсюда два следствия, неочевидных для привычного SEO:
- Единица работы — фрагмент, а не страница. Страница может хорошо ранжироваться и ничего не давать для ответа, потому что достойный цитаты факт находится в изображении, диаграмме без текстового эквивалента или абзаце, который появляется только после выполнения JavaScript.
- Доступность для поиска и пригодность для цитирования — разные пороги. Попадание в индекс — предварительное условие. Источником вы становитесь, когда предлагаете самое ясное доступное предложение по вопросу. Большинство чек-листов GEO касается только первого, а затем удивляется отсутствию роста трафика.
На практике ранжирование и цитирование расходятся. Можно занимать третью позицию по ключевому слову и никогда не цитироваться, потому что две страницы выше формулируют ответ одним самостоятельным предложением, а вы прячете его в четвёртом абзаце раздела «Наша философия».
Три бота, три разные задачи
Именно здесь совершаются самые дорогие ошибки: люди говорят о «краулере OpenAI» как о чём-то едином. OpenAI описывает трёх отдельных агентов, и они не выполняют одну и ту же работу:
- GPTBot — массовый обход для обучения моделей. Его блокировка меняет то, что будущие модели усвоят с вашего сайта. Она не исключает вас из актуальных цитат ChatGPT.
- OAI-SearchBot — строит поисковый индекс, из которого извлекаются фрагменты. Именно он определяет, можете ли вы вообще быть процитированы.
- ChatGPT-User — загружает конкретный URL, когда вопрос пользователя запускает просмотр веб-страниц. Заблокируете его — загрузка не удастся ровно в тот момент, когда кто-то спросит о вас.
Типичная ошибка: команда не хочет, чтобы её контент использовали для обучения моделей, блокирует GPTBot и считает, что приняла взвешенное решение. Так и есть — об обучении. О поиске это решение ничего не говорит. Хуже, когда кто-то одним правилом с подстановочным знаком блокирует всех агентов OpenAI, незаметно удаляет компанию из ответов ИИ, а затем целый квартал удивляется, почему цитируют конкурентов.
Это независимые решения — принимайте их отдельно. Наш robots.txt разрешает всех трёх и блокирует /api/ и ссылки общего доступа, поскольку за ними пользовательский контент, которому не место в индексе. У вас может быть иначе: обучение и поиск действительно предполагают разные условия. Просто решайте для каждого бота, а не поставщика целиком, и время от времени перечитывайте его документацию: правила меняются.
robots.txt — не тот барьер, который действительно вас останавливает
Robots — просьба, и именно этот слой все проверяют. Но реальные проблемы создаёт CDN или WAF. Во многих конфигурациях по умолчанию пограничные платформы проверяют или блокируют незнакомые пользовательские агенты, а результат незаметен: robots.txt содержит Allow, пограничный узел возвращает 403, и обход невозможен, хотя каждый файл репозитория утверждает, что вы открыты для посетителей.
Проверка занимает десять секунд, но её почти никто не выполняет:
curl -s -o /dev/null -w "%{http_code}\n" -A "OAI-SearchBot" https://your-site/
curl -s -o /dev/null -w "%{http_code}\n" -A "ChatGPT-User" https://your-site/
curl -s -o /dev/null -w "%{http_code}\n" -A "PerplexityBot" https://your-site/200 означает доступность. 403, 503 или страница проверки означают проблему видимости, которую не исправить контентом. Выполните проверку на рабочем сайте из внешней сети для каждого своего домена: у каждого обычно собственная конфигурация пограничного слоя, и со временем они расходятся.
Если из статьи вы сделаете только одно, сделайте это. Такая проверка даёт наибольшую отдачу за секунду времени и незаметна для любого аудита контента.
Если факту нужен JavaScript, его не существует
Поисковые краулеры обычно разбирают исходный HTML без выполнения JavaScript. Поэтому возможность процитировать утверждение проверяется не тем, что показывает браузер, а так:
curl -s https://your-site/page/ | grep -i "the claim you want quoted"Нет ничего в выводе — нечего цитировать. Это имеет прямое следствие для дизайна: важный для цитирования текст — определение, ключевые факты, ответы на частые вопросы, цены и заявления о безопасности — должен присутствовать в отдаваемом HTML. Словарь, подставляющий текст после гидратации, годится как улучшение, но не может быть единственным местом существования факта.
Сильнее всего это бьёт по многоязычным сайтам, и мы специально спроектировали решение в обход этой ловушки. Если китайский текст существует только в JavaScript-словаре i18n, то для краулера исходного HTML китайского контента вообще нет. Мы встраиваем все языки настоящей разметкой, а CSS определяет, какой видит человек. Краулеры получают все четыре языка, читатели — один. Это увеличивает вес страницы, но оправдывает себя.
Пишите фрагменты, сохраняющие смысл вне контекста
Здесь начинается собственно работа с текстом, а не инфраструктурой. Когда инфраструктура работает, именно здесь появляется основная отдача.
Извлечённый фрагмент попадает к модели без окружающей страницы. Без иерархии заголовков, предыдущего абзаца и навигации. Пишите с учётом этого:
- Сначала ответ. Первое предложение под заголовком должно отвечать, а не подводить к ответу. «X — это Y» лучше, чем «В современном быстро меняющемся мире…»: последнее ни на что не отвечает и никогда не цитируется.
- Явно называйте предмет высказывания. «Он поддерживает OAuth» непригодно вне контекста; «Orkas поддерживает OAuth» сохраняет смысл. Местоимения не переживают разбиение на фрагменты.
- Делайте каждое утверждение самодостаточным. Сущность, условие и граница в одном предложении: «При использовании собственного провайдера трафик моделей идёт напрямую к нему и не проксируется через Orkas». Эту фразу можно процитировать отдельно, не превратив в ложь, — именно поэтому она пригодна для цитирования.
- Предпочитайте проверяемое впечатляющему. Расплывчатые превосходные степени не цитируют, потому что они не отвечают ни на один заданный вопрос.
Вопрос — ключ к поиску
Пользователи задают вопросы, и поиск сопоставляет их с текстом в форме вопроса. Буквальный вопрос в заголовке — «Проксирует ли Orkas трафик моделей?» — подходит лучше, чем именная фраза «Архитектура моделей». Именно поэтому, а не из-за магии разметки, блоки частых вопросов так сильно повышают видимость в ИИ: они буквально состоят из пар «вопрос — ответ», то есть имеют форму искомого материала.
Структурированные данные делают вас понятнее для разбора, а не предпочтительнее
JSON-LD не покупает цитаты. Он даёт однозначную классификацию: что это за страница, кто её опубликовал, какой текст является вопросом, а какой — ответом. Два правила важнее остальных:
- Разметка FAQ должна один к одному совпадать с видимым текстом. Разметка, утверждающая то, чего нет на странице, — проблема доверия. Поисковики считают расхождение сигналом спама, а не ошибкой форматирования.
- Никогда не выдумывайте рейтинги, награды или количества. Обнаружив один вымышленный сводный рейтинг, система получает основание меньше доверять всем остальным вашим утверждениям.
Правило 1:1 легко нарушается незаметно: кто-то редактирует видимые ответы, забывает о разметке, а через полгода они расходятся. Мы соблюдаем его с помощью теста, который обходит все страницы карты сайта, извлекает FAQ из JSON-LD и проверяет дословное наличие каждого вопроса и ответа в видимом тексте страницы. При расхождении сборка завершается ошибкой. Структурированные данные — утверждение о вашей странице, и проверять их нужно соответственно.
llms.txt: недорого, полезно и переоценено
Честно оценивайте назначение этого файла. llms.txt — предлагаемое соглашение. Ни одна крупная система не обещает его читать, а тот, кто называет его каналом загрузки данных, лишь предполагает.
Его реальная польза уже, но всё равно стоит часа: одно постоянное место с ясно изложенными официальными фактами — что представляет собой продукт, как обрабатываются модели и данные, цены, важные URL. Попав туда, краулер или исследователь получает изложение без маркетинговой подачи, а не восстанавливает его по рекламным страницам. Это ещё и полезная дисциплина. Если вы не можете изложить факты о продукте в сорока строках без прилагательных, страницы тоже не смогут — и эта проблема контента всё равно бы возникла.
Чем он не является: гарантией или заменой присутствия этих фактов на самих страницах.
Из-за противоречий вас исключают
Системы ответов сверяют источники. Если страница тарифов говорит одно, документация другое, а FAQ главной страницы третье, система не решает спор: она оговаривается или цитирует того, кто последователен.
Поэтому согласованность фактов на разных страницах — большая часть настоящей работы, и ничего эффектного в ней нет. Когда меняется факт о модели, цене или безопасности, он должен измениться везде одним изменением: на странице, в документации, в FAQ главной страницы, llms.txt — иначе вы создаёте противоречие, которое переживёт правку. Для нас это строгое правило, а не привычка: привычки проигрывают срокам.
Внешнее подтверждение сильнее собственных заявлений
Вот что принять труднее всего: ваш собственный сайт — самый слабый доступный источник о вас. Системы придают вес внешним подтверждениям, и справедливо. Утверждение только на вашем домене — маркетинговое заявление. То же утверждение на GitHub, в стороннем сравнении, в обсуждении на форуме или чужой документации — факт.
Поэтому, когда основы на сайте уже работают, внешняя работа эффективнее очередного лендинга: репозитории, каталоги, статьи-подборки, настоящие обсуждения. Грубо говоря, работа на сайте делает вас пригодными для цитирования; работа вне сайта делает вас цитируемыми. Команды постоянно вкладывают слишком много в первое, потому что именно эту половину контролируют.
Как измерять, не обманывая себя
Здесь тексты о GEO обычно становятся расплывчатыми, поэтому скажем прямо: точно измерить цитирования ChatGPT нельзя. Панели для этого нет. Есть три несовершенных сигнала:
- Серверные журналы. Ищите через grep
OAI-SearchBotиChatGPT-User. Частота обхода и загружаемые URL показывают, присутствуете ли вы в индексе и что запрашивается вживую. Это самый честный сигнал, которым вы располагаете. - Переходы из помощника. Реальные, но неполные: многие цитаты читают, не переходя по ссылке, в чём и состоит смысл системы ответов.
- Ручные выборочные проверки. Задайте десять вопросов, по которым хотите стать источником, и запишите, кого цитируют. Утомительно, приблизительно и всё ещё единственный способ наблюдать сами ответы.
Считайте все три сигнала ориентировочными. Тот, кто продаёт точный «балл GEO», продаёт выдуманное число.
С чего мы действительно начали бы
В порядке отдачи, а не эффектности на слайде:
- 1.
curl -A— проверьте поисковых ботов на рабочем сайте. Если пограничный слой их блокирует, остальное в списке неважно. - 2.
curl | grep— проверьте ключевые утверждения. Перенесите всё, что существует только в JavaScript, в отдаваемый HTML. - 3. Перепишите первое предложение под каждым заголовком так, чтобы оно отвечало на вопрос и явно называло предмет высказывания.
- 4. Сделайте текст FAQ и разметку FAQ одинаковыми и удалите разметку, которую нельзя подтвердить видимым текстом.
- 5. Согласуйте противоречащие друг другу факты на страницах, в документации и
llms.txt. - 6. Затем — и только затем — добивайтесь внешних подтверждений.
Причина отсутствующих цитат обычно скрывается в шагах 1 и 2. О них почти никто не пишет, потому что это не контент-маркетинг.
В завершение
Попадание в цитаты ChatGPT менее загадочно, чем кажется из окружающих его аббревиатур. Будьте доступны поисковому боту. Читаемы без JavaScript. Пригодны для цитирования одним самостоятельным предложением. Последовательны на своих страницах. Подтверждены где-то помимо собственного маркетингового сайта. Инструменты меняются, эти пять принципов остаются.
Мы проверяем так собственный сайт и встроили эти проверки в процесс Orkas, который проверяет видимость в поиске и ответах ИИ сайта и возвращает список исправлений по приоритету. Если интересен нижележащий слой — как ведущий агент планирует работу и направляет специалистов, — прочитайте об оркестрации нескольких агентов на практике.