Сделайте тише!
Мы хотели спокойную ленту, а получили громкую и скучную. Рассказываем, как мы возвращаем новости читателям, а читателей — в digesta.
У каждого читателя digesta в настройках есть ползунки: сдвинул влево — новостей приходит меньше. Работает всё просто. Каждый сюжет мы собираем из публикаций разных изданий об одном событии, и у сюжета есть число — сколько изданий о нём написало. Ползунок поднимает планку: «присылай только то, о чём написали не меньше N изданий».
Логика очевидная: чем больше изданий заметило событие, тем оно крупнее. Хочешь меньше новостей — оставь крупные. Проверять тут вроде нечего. Всё гениальное казалось просто: вот вам формула идеального новостного фона.
Но тут стали замечать неладное: когда читатель убавлял ползунок, то вместо спокойствия получал половину ленты политики — вместо четверти. И вместе с этим скуку.
01Слишком громко и запредельно близко
Первым делом мы решили, что в ленту вообще проходит слишком много политики, и стали крутить пороги отбора. Перепробовали всё: ограничить число изданий от одной страны, требовать больше разных стран, отсекать сюжеты, где одна пресса даёт слишком большую долю. Ни одна настройка не помогла — доля политики держалась около 40% при любой.
Когда все рычаги одного класса дают один и тот же ответ, дело обычно не в настройке. Дело в том, что ты измеряешь.
Мы посчитали для каждого политического сюжета, какую долю его источников составляют издания самой многочисленной у нас прессы — российской. И разложили сюжеты по числу написавших.
Тихая половина политики — самая международная. Громкая — самая российская. Поднимая планку, ползунок срезал ровно первую и оставлял вторую.
Причина в том, что пресса пишет с очень разной скоростью. В нашем пуле американских изданий почти столько же, сколько сербских, — а выпускают они вчетверо меньше. Событие, которое заметила плотная и быстрая пресса, наберёт двадцать изданий за час. Событие, которое освещают только Япония, Индия и Корея, не наберёт и двенадцати — столько изданий оттуда у нас просто нет.
02Высокая планка
Чтобы это не осталось абстракцией, мы посмотрели, что именно пропало бы за один день, если поднять планку для политики с 12 изданий до 24.
Ушло бы: «Корея отказалась посылать войска в войну с Ираном», «Госдеп одобрил продажу Украине ПВО на 2,68 млрд долларов», «ЕС санкционировал кубинские никелевые компании», «США не введут новые пошлины Китаю до встречи Трампа и Си».
Осталось бы: «Трамп запретил CNN вход в Белый дом» (117 изданий), «Памфилова доложила о готовности к выборам в Госдуму» (86), «свадьбу Трампа-младшего оплатили российскими деньгами» (40).
Правка ради «меньше политического шума» выкинула бы международные новости и оставила громкие. Мы её отменили, не выкатив.
03Упражнения на сложение и умножение
Вычитать политику оказалось нечем: тот же фильтр заодно вычитает международные новости. Значит, надо не вычитать, а прибавлять остальное. И тут выяснилось, что ломался ещё и сам ползунок, причём предсказуемым образом.
У разных категорий разные стартовые планки: спортивный сюжет редко собирает 12 изданий, поэтому спорту хватает пяти, играм — трёх, технологиям — шести. Ползунок читателя поднимал их все одинаковой прибавкой. «Плюс 12» означало: играм с 3 до 15, спорту с 5 до 17, политике с 12 до 24.
Игры выросли в пять раз. Политика — в два. Малые категории вымирали первыми, политика изменений почти не замечала. Тогда мы заменили прибавку на умножение: ползунок теперь не добавляет к планке одно и то же число, а поднимает её в одинаковое число раз.
| сюжетов в сутки | политика: было (прибавка) | политика: стало (умножение) |
|---|---|---|
| 81 | 28,7% | 28,7% |
| 53 | 34,7% | 30,2% |
| 41 | 39,4% | 30,5% |
| 31 | 42,2% | 32,9% |
| 18 | 48,4% | 34,0% |
Разница между колонками — одна строчка арифметики. В ней была половина проблемы.
04Баланс по темам
Вторую половину проблемы мы искали не там, где сломалось, а там, где давно недосмотрели. Оказалось, мы держали на самой строгой планке ровно те категории, которых и так меньше всего. У спорта, игр, технологий своя, пониженная планка была. А у экономики и культуры — нет: их судили общей, 12 изданий, при собственном предложении в три-четыре сюжета в сутки. Самая строгая планка стояла там, где материала меньше всего.
Мы опустили обе до шести — и лента выросла почти на восемь сюжетов в сутки, а из неё при этом не ушло ни одного сюжета. Дальше — источники: заново разобрали пул и поняли, что не хватает профильных деловых изданий, ресурсов про климат и здоровье. Так наши 300+ источников пополнились ещё 28 изданиями и тремя странами — Кенией, Чили и Перу.
05Ошибка по умолчанию
И последнее — там, где не было ни порога, ни алгоритма. Язык и состав ленты в digesta — разные вещи. Язык меняет только то, на каком языке написаны кнопки и саммари. А состав (глобальная лента или страновая) задаётся отдельной настройкой. Анонимному посетителю сервиса состав отдавался всегда один: как для российской аудитории. Итого человек получал 108 сюжетов в сутки, почти половина из которых — политика, криминал и происшествия. И француз, и бразилец видели ту же ленту, просто с интерфейсом на своём языке. Не потому что кто-то так задумал, а потому что состав по умолчанию выбрали однажды и с тех пор не пересматривали. Теперь по умолчанию стоит глобальная, нейтральная лента.
Здесь же нашлась и вторая тихая ошибка. Ползунок мог убавлять ленту только до определённого предела — и предел этот стоял ровно там, где политики больше всего. А ставил его не читатель: из 55 человек с настроенной лентой 32 сидели на самом строгом делении, куда их посадил наш собственный онбординг. Треть аудитории мы своими руками поместили ровно в ту точку, где ленту перекашивало сильнее всего. Пришлось признать ошибку и исправить.
06Ручное управление
Если читатель приглушает конкретную категорию, её сюжеты мы теперь дополнительно проверяем на однобокость: сюжет не пройдёт, если доля источников из одной страны превышает 40%.
| что получает читатель | доля рос. источников | однобоких сюжетов |
|---|---|---|
| политику не приглушал | 18% | 27% |
| приглушил, как было | 23% | 29% |
| приглушил, с новым условием | 16% | 0% |
Раньше «поменьше политики» оставляло читателю политику погромче. Теперь — потише.
07Что в итоге
Вот та же лента, с которой мы начали. В таблице — доля политики по ходу ползунка: как было до правок и как стало после.
| сюжетов в сутки | доля политики: было | доля политики: стало |
|---|---|---|
| ~80 | 28,7% | 28,6% |
| ~50 | 34,7% | ~30% |
| ~30 | 42,2% | ~33% |
| ~16–18 | 48,4% | 33,7% |
Читатель по-прежнему может убавить громкость до самого тихого деления. Только теперь на нём он получит не половину политики, а треть — примерно столько же, сколько на полной ленте. За день мы вычли из ленты ровно одну вещь — однобокие сюжеты, и только у тех, кто сам попросил поменьше. Всё остальное мы не вычитали, а добавили. И починили линейку, которой измеряли.
Метод и оговорки
Данные. 1096 сюжетов глобальной ленты за 05–19.09.2026, из них 328 политических; пул из 350 активных изданий, 48 медиапространств. Доставка в бот — 39 930 сообщений за неделю. 28 новых изданий заведены в день выката и в числа этой статьи не входят: новый источник десять суток не учитывается в порогах.
Что значит «доля российских источников». Долю среди национальных источников сюжета — изданий, которые пишут для аудитории конкретной страны. Международная отраслевая пресса (Nature, Ars Technica) в знаменатель не входит: у неё аудитория предметная, а не страновая. Пространство определяется по аудитории, а не по прописке: эмигрантское издание, пишущее по-русски для российского читателя, считается российским.
Это про то, КТО написал, а не про то, ЧТО написано. Мы не измеряли содержание, тональность или позицию — только состав источников. «Сюжет, где 40% источников из одной прессы» не значит «предвзятый сюжет». Значит ровно то, что сказано: читатель, попросивший разнообразия, вправе его получить.
Категория — по главной метке сюжета, которую ставит языковая модель по кластеру целиком. Метка — суждение, а не факт, и у сюжета их обычно несколько; «политика» здесь значит «модель сочла это в первую очередь политикой».
Чего метод не умеет. Он видит только те издания, что есть в нашем пуле. Связь «громкость ↔ плотность прессы» — свойство этого пула на эту дату, а не закон природы. По категориям с малым предложением (наука, ИИ, игры) — один-три сюжета в сутки, доли по ним шумные.
Про читателей бота — выборка крошечная. 82 активных читателя, 55 с настроенной лентой. Этого хватает увидеть, что 32 из 55 сидят на самом строгом делении, но мало, чтобы судить, как правки повлияют на удержание. Вернёмся с замером через неделю после выката.