
Похоже, зря я назвал свой канал про ИИ исключительно по фамилии — Бурый. Оказалось, что из-за конкуренции с такими понятиями, как медведь и цвет, меня плохо видно в нейросетях. Пришлось проводить целое исследование, чтобы с этим разобраться.
Итак, я веду канал про нейросети и давно хотел проверить одну гипотезу: когда человек спрашивает у ИИ «на кого подписаться, чтобы следить за нейросетями», кого ИИ называет и почему. Ощущение было, что размер канала тут ни при чём, но ощущение — это ведь не данные. Поэтому я собрал небольшой замер: 21 канал, 6 моделей, больше 950 ответов, простая метрика. Ниже я подробно опишу метод, код скоринга, результаты и границы применимости. Ничего необычного, просто логичная обработка текстовых ответов.
Гипотеза и почему её вообще стоит проверять
Telegram закрыт для веб-краулеров: ни ChatGPT, ни Perplexity, ни Gemini с Клодом наперевес не читают содержимое каналов напрямую. Значит, если модель что-то знает про канал, она знает это не из тг, а из внешних источников — статей, СМИ, подборок, Википедии, взаимных упоминаний. Отсюда возникла гипотеза: видимость канала в ответах ИИ определяется цифровым следом автора вне Telegram. Её и проверяем.
Выборка и модели
Я взял 21 авторский канал про нейросети — намеренно разного калибра, от нишевых на несколько тысяч до многотысячных. Гонял по шести моделям:
четыре глобальные — ChatGPT, Claude, Perplexity, Gemini;
две с большим русскоязычным корпусом — Алиса и GigaChat.
Такое разнообразие важно: доля русскоязычных данных и наличие живого веб-поиска — два фактора, которые сильнее всего влияют на то, знает ли модель локального автора. Если брать только англоязычные модели без поиска, картина по рунету будет систематически заниженной.
Какие запросы использовал: три типа
Одним вопросом тут не обойтись — узнавание распадается на разные режимы. Я задавал три типа запросов:
Без названия канала — «какие каналы про нейросети читать?», «на кого подписаться, чтобы следить за ИИ?». Это проверка на спонтанную рекомендацию: кого модель достаёт из железной головы сама.
По адресу канала — «что ты знаешь про @адрес, кто его ведёт?». Проверка базового узнавания по идентификатору.
По голому названию, без адреса — просто «расскажи про Бурого» или «расскажи про Complete AI». Проверка, опознаёт ли модель именно канал — или уходит в постороннее понятие (пресловутый медведь, курс на Udemy).
Каждый вопрос задавал в нескольких формулировках и часть прогонял не по одному разу — чтобы не поймать разовую галлюцинацию или зависимость от конкретной фразы. Ответы складывал построчно в JSON: текст ответа плюс метаданные (модель, тип вопроса, канал).
Метрика и код скоринга
Оценку свёл к диапазону 0–100. Для каждого канала считал два компонента:
recognize — узнаёт ли модель канал/автора (берём лучшее из двух: по названию канала или по имени автора — канал попадает в ответ, если модель зацепилась хоть за что-то);
recommend — называет ли модель канал сама, на вопросах без имени.
Итоговый балл: 0.7 recognize + 0.3 recommend. Вес узнавания выше, потому что это база — без узнавания спонтанной рекомендации не бывает, рекомендация — бонус сверху.
Скелет скоринга по одному каналу (сырьё — размеченные ответы, где для каждого проставлен факт узнавания и спонтанного упоминания):
def channel_score(answers: list[dict]) -> dict: """answers: [{'q_type': 'name'|'handle'|'blind', 'recognized': bool, 'spontaneous': bool}, ...] по всем моделям и формулировкам.""" by_name = [a for a in answers if a["q_type"] in ("name", "blind")] by_handle = [a for a in answers if a["q_type"] == "handle"] def rate(rows, key): n = len(rows) or 1 return sum(bool(r[key]) for r in rows) / n # узнаёт: лучшее из «по названию» и «по адресу» recognize = max(rate(by_name, "recognized"), rate(by_handle, "recognized")) # советует сам: только вопросы без имени канала spontaneous = [a for a in answers if a["q_type"] not in ("name", "handle")] recommend = rate(spontaneous, "spontaneous") return { "recognize": round(recognize, 2), "recommend": round(recommend, 2), "score": round(100 * (0.7 * recognize + 0.3 * recommend)), }
Разметку recognized/spontaneous я не отдавал на откуп регуляркам: ответы живые, модель может «узнать» канал, ни разу не назвав его хэндл, или наоборот — вставить @адрес, рассказывая при этом про что-то постороннее. Поэтому факт узнавания проставлялся по смыслу ответа (узнала ли модель именно этот канал/автора), вхождение строки не играло роли. Регуляркой ловились только очевидные коллизии — про них ниже.
Результаты
Средний индекс по выборке вышел невысоким — 58 из 100, разрыв между первым и последним местом почти шестикратный. А вот три наблюдения, ради которых всё и затевалось.

1. Спонтанно рекомендуют только одного. На вопросах без имени из 21 канала стабильно всплывал один — за ним стоит публичная, часто упоминаемая вне Telegram фигура автора (экс-инженер большой ИИ-команды). Остальных модель прекрасно узнаёт по прямому вопросу, но в готовый список рекомендаций не кладёт. recognize высокий, recommend близок к нулю — это два разных навыка.
2. Подписчики почти не коррелируют с баллом. Канал на 6 тыс. подписчиков набрал 70, канал на 53 тысячи — 48. Мой собственный на 18 тысяч — 16. Если построить логику «подписчики → балл», облако размазано: размер аудитории объясняет ничтожную долю разброса. Что реально объясняет — плотность упоминаний автора во внешних источниках.

3. Голое название — минное поле. Тут вылезла отдельная фишка с коллизией имени, которая коснулась меня в первую очередь.
Коллизии: где узнавание рушится
Самое интересное — режим «по голому названию». Когда данных о канале мало, модель подставляет самое частотное значение слова из корпуса:
«Бурый» → бурый медведь и оттенок цвета. Про канал — ноль.
«Complete AI» → курс на Udemy или общее словосочетание.
«Tips AI» → «советы про ИИ вообще».
То же с людьми: у автора с распространёнными именем и фамилией модель уверенно достаёт однофамильца — врача, спортивного комментатора, политика, актёра. А редкую фамилию узнаёт верно. Коллизия имени топит видимость, а уникальность вытягивает.
Показательный кейс из выборки: один канал по @адресу модели путали с картинками нейросети DALL·E. Но стоило спросить по его настоящему названию — узнаваемость подскочила с 3 до 80. То есть проблема была в том, что запрос резонировал с более частотной сущностью.
Грубая эвристика для отлова таких коллизий, которую я гонял по ответам на «голое название»:
COLLISION_MARKERS = { "медвед", "оттенок", "цвет ", "udemy", "курс", "актёр", "актер", "депутат", "политик", "комментатор", "врач", } def looks_like_collision(answer_text: str, channel_topic="нейросет") -> bool: t = answer_text.lower() hits = any(m in t for m in COLLISION_MARKERS) on_topic = channel_topic in t # упомянута ли вообще тема канала return hits and not on_topic
Это флаг, чтобы, что называется, «посмотреть руками»: срабатывание означает, что модель на названии ушла в постороннюю сущность и тему канала не назвала вовсе.
Разброс между моделями оказался больше, чем я ждал
Один и тот же канал разные модели видят по-разному (вот это да!):
«Алиса» и Perplexity умеют искать в вебе и находят настоящих авторов — иногда только они и опознают нишевого автора по имени;
Gemini склонна выдумывать: про один из каналов она сочинила целую историю, будто это арт-проект израильского художника — правдоподобно и полностью ложно;
Claude чаще честно отвечает «не знаю», чем сочиняет.

Практический вывод из этого простой: измерять видимость по одной модели нельзя. Расхождение между лучшей и худшей моделью по отдельным каналам — кратное. Русскоязычные модели с поиском системно точнее на локальных авторах — тоже ожидаемо, если помнить, из чего собирается их ответ.
Границы применимости
Замер получился как минимум любопытным, но многое он не доказывает:
Это всего лишь корреляция. «След автора» и «видимость» растут вместе, но замер не изолирует фактор: у публичного автора обычно и упоминаний больше, и канал крупнее. Отделить одно от другого на выборке в 21 канал нельзя.
Выборка маленькая. 21 канал — всего лишь разведка, а не большая статистика с доверительными интервалами. С другой стороны, речь шла именно об авторских каналах, а их не так уж много, может, 50 наберётся.
Разметка узнавания субъективна. Часть решений «узнала / не узнала» — ручные, с моей интерпретацией. Я старался быть последовательным, но воспроизводимость тут ниже, чем в чисто автоматическом пайплайне.
Снимок на дату. Модели и их доступ к поиску меняются от релиза к релизу. Через пару месяцев значения изменятся, поэтому замер имеет смысл повторять. Может, через полгода возникнет такое желание.
Метод при этом полностью воспроизводим: выборка каналов, три типа запросов, формула 0.7recognize + 0.3recommend, прогон по нескольким моделям с повторами. Если у вас есть свой набор каналов (или брендов — логика исследования переносится один в один), можете повторить и сравнить. Гипотеза, с которой я начинал, на этой выборке подтвердилась: видимость в ответах ИИ определяется следом автора вне закрытой платформы, а не размером аудитории.