Похожие посты

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

ГлавнаяЧатФильтрация сообщенийФильтр на похожесть

Фильтр на похожесть

Источники часто повторяют друг друга: три новостных аккаунта публикуют одну и ту же новость, один аккаунт выкладывает одну и ту же картинку дважды. Фильтр на похожесть сравнивает каждый новый пост с теми, что были доставлены в чат за последние часы, и отбрасывает похожие.

  • Порог схожести, % — насколько близкими должны быть два поста, чтобы считаться одинаковыми, от 1 до 99 процентов. По умолчанию переключатель включается на 80.
  • Период проверки, часов — за сколько часов назад сравнивать, от 1 до 72.
  • Минимальная длина поста — более короткие посты не сравниваются по тексту: считаются буквы и цифры, по умолчанию 50, 0 — сравнивать все. Повтор той же ссылки ловится всегда.

Фильтр действует на весь чат: он смотрит по всем источникам чата, поэтому настраивается только в Фильтрации сообщений чата, у источника его нет. Отброшенный клон попадает в лог событий с процентом похожести, а если подключён чат для отфильтрованных — и туда.

Как сравниваются посты

Каждый новый пост проверяется по тому, что чат уже получил, в три шага:

  1. Точный повтор. Та же ссылка или тот же текст слово в слово — дубль при любом пороге. Пост, который источник отредактировал и выложил заново по той же ссылке, дублем не считается.
  2. Та же новость другими словами. Языковая модель читает новый пост рядом с ближайшими доставленными и решает, об одном ли они — пересказ с другими словами, порядком и подробностями тоже считается. Порог задаёт, насколько модель должна быть уверена.
  3. Та же картинка. Если у постов одно и то же изображение, планка для текста ниже — см. раздел Одинаковые картинки и видео ниже.

Шаги 2 и 3 сравнивают только с постами других источников, так что серию похожих постов одного источника фильтр не трогает. Тексты короче шести слов проверяются только на точный повтор. Пост, который втрое длиннее совпавшего и больше него на 400 символов, дублем не считается: это более полная версия новости, и он доставляется.

Одинаковые картинки и видео

Кроме текста фильтр сравнивает то, что в постах показано. У фото — само фото, у видео — его превью (обложку). Сравнивается общий вид картинки, а не байты файла, поэтому то же изображение узнаётся после обычных переделок других каналов:

  • другой размер или пережатие;
  • чуть срезанный край;
  • логотип канала или плашка копирайта в углу.

Одна совпавшая картинка пост дублем не делает: одна стоковая фотография может иллюстрировать разные новости. Зато она снижает планку для текста — та же картинка при отдалённо похожем тексте отбрасывается как клон, даже если по одному тексту порог не набирается.

Сильно обрезанные изображения (срезана полоса сверху или снизу, увеличен фрагмент), зеркальные отражения и коллажи считаются другими картинками.

Обновить оригинал из клона

Отброшенный похожий пост — клон — бывает полнее опубликованного оригинала: у него есть фото, которых не было, или текст длиннее. Тогда клон может обновить оригинал. Под настройками фильтра — два переключателя:

  • Медиа из клона — если клон принёс медиа, обновить ими уже опубликованный пост. Режим Дополнять добавляет медиа клона к медиа оригинала, Заменять ставит их вместо. Переключатель Только если у оригинала нет медиа не трогает пост, где медиа уже есть.
  • Текст из клона — заменить текст опубликованного поста, если в клоне текста заметно больше. Поле Длиннее на, % задаёт, насколько текст клона должен быть длиннее оригинала.

Оригинал в чате публикуется заново — с объединёнными медиа и текстом. Медиа, которое у оригинала уже есть, второй раз не добавляется: ни тот же файл, ни то же фото или видео, перезалитое или пережатое другим источником. Каждое такое обновление попадает в лог событий.