Отвечая с поиском, ChatGPT отправляет в сеть 3–8 собственных запросов, и цитаты достаются страницам, найденным по ним. Выберите вопрос: подзапросы модели подсвечены.
conversation, вкладка Response, поиск по search_queries или "queries".(async () => {
const id = location.pathname.split('/c/')[1]?.split('/')[0];
if (!id) return console.log('Откройте чат: chatgpt.com/c/…');
const { accessToken } = await (await fetch('/api/auth/session')).json();
const conv = await (await fetch('/backend-api/conversation/' + id, {
headers: { Authorization: 'Bearer ' + accessToken }
})).json();
const found = new Set();
const walk = (node, key = '') => {
if (typeof node === 'string') { if (/quer/i.test(key)) found.add(node.trim()); return; }
if (Array.isArray(node)) return node.forEach(x => walk(x, key));
if (node && typeof node === 'object')
for (const [k, v] of Object.entries(node)) walk(v, /quer/i.test(key) && k === 'q' ? key : k);
};
walk(conv);
const list = [...found].filter(s => s.length > 2);
console.log(list.join('\n') || 'Подзапросов нет: ответ без поиска');
try { copy(list.join('\n')); } catch (_) {}
})();Прогоните 30–50 вопросов ниши во временном чате, каждый 2–3 раза, и оставьте подзапросы, которые повторились.
| Что ищет модель | Какая страница попадёт в цитату |
|---|---|
| Текущий год | Год в title, H1 и первом абзаце, дата обновления в разметке |
| X vs Y | Отдельная страница на каждую частую пару, таблица параметров вверху |
| Отзывы и минусы | Разбор минусов своей категории: модель ищет их, чтобы ответ выглядел взвешенным |
| Из чего цена | Смета по строкам с датой. В Вордстате такой запрос почти не виден |
| Английский | Англоязычная версия сравнений: модель берёт источники и оттуда |