В первые годы после рождения  «Википедии»,  когда количество ее активных авторов исчислялось десятками или сотнями, добровольные редакторы вполне справлялись с управлением контентом энциклопедии и происходящими в ней процессами. Сейчас  редакторы-старожилы  с ностальгией вспоминают те безмятежные дни, когда энциклопедия развивалась медленно и один человек мог за считанные минуты проверить все изменения, поступившие за день. Идиллия закончилась в 2004 году, когда начался экспоненциальный рост числа новых авторов и статей, а сама энциклопедия привлекла внимание популярных СМИ. В 2007 году, на который пришелся пик роста, в  «Википедию»  вносилось уже больше 180 правок в минуту.

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

Для решения этой проблемы участниками пользовательского сообщества  «Википедии»  были созданы два программных инструмента: роботы, или боты , и киборги. Боты автоматически выполняют стандартные задания, например, SpellCheckerBot исправляет ошибки правописания. Киборги же представляют собой «умные» пользовательские интерфейсы, помогающие редакторам быстрее принимать решения,  — например,  киборг Huggle занимается массовым удалением правок, вносимых вандалами.

Вместе боты и киборги составляют первую линию защиты в «иммунной системе»  «Википедии». 

Борьба с вандализмом

Пожалуй, лучше всего способности ботов и киборгов проявляются в борьбе с вандализмом в  «Википедии»  — с ростом аудитории энциклопедии в  2004–2007 годах,  помимо ценных  дополнений,  в нее устремился поток неуместного контента и вандальских правок, с которым трудно справиться без автоматизации.

Ранние инструменты

Первыми инструментами, принципиально изменившими борьбу с вандализмом в  «Википедии»,  стали AntiVandalBot и VandalProof. Первый с помощью несложного набора правил и эвристик следит за изменениями, вносимыми в статьи, выявляет самые очевидные проявления вандализма и автоматически отменяет их. Благодаря этому боту участники сообщества  «Википедии»  впервые смогли защищать энциклопедию от повреждения без затрат времени и сил редакторов. Однако AntiVandalBot мог предотвращать лишь самые вопиющие случаи вандализма.

VandalProof — первый  киборг —  представлял собой написанный на Visual Basic графический интерфейс, с помощью которого уполномоченные редакторы могли практически в реальном времени следить за правками статей и одним щелчком отменять нежелательные изменения. VandalProof дополнял AntiVandalBot и его  наследников:  явные образцы вандализма он оставлял ботам, а на остальное указывал редакторам, которые вручную отменяли правки.

 

Таксономия ботов  «Википедии» 

Роботы в  «Википедии»  имеют широкий круг обязанностей, в числе которых вставка сведений из открытых источников, мониторинг и модерирование контента, расширение возможностей движка MediaWiki и защита энциклопедии от вредоносной деятельности.

Первые боты вставляли в статьи  «Википедии»  сведения из общедоступных баз  данных —  например, Rambot, которого считают первым «официальным» роботом энциклопедии, добавлял сведения из переписей населения в статьи о странах и городах. Rambot и его «родственники» действуют по принципу «силового подкрепления», выполняя повторяющиеся действия сотни тысяч раз в минуту.

Ряд других ботов отвечают за мониторинг и корректировку контента «Википедии». Так, SpellCheckerBot проверяет свежие правки на ошибки правописания, пользуясь международным словарем, чтобы предотвратить случайные исправления верно написанных иностранных слов, а Helpful Pixie Bot исправляет номера ISBN и другие структурные особенности статей, например, расставляет заглавные буквы в названиях разделов. Самый большой класс кураторов контента — межъязыковые боты, которые с помощью графовых моделей связей между разными языками  «Википедии»  выявляют недостающие ссылки между статьями по одной и той же теме. Когда писалась эта статья, в англоязычном разделе  «Википедии»  действовало более 60 межъязыковых ботов.

Некоторые боты расширяют функциональность «Википедии», реализуя функции, которых нет в движке MediaWiki, например AIV Helperbot упрощает работу администраторов с сообщениями о предположительных вандалах, а SineBot следит, чтобы каждый размещенный комментарий был подписан и имел дату.

Наконец, ряд ботов защищают энциклопедию от вредоносной  деятельности:  например ClueBot_NG с помощью самых современных методов машинного обучения проверяет все правки статей для предотвращения вандализма, а XLinkBit отменяет правки, содержащие ссылки на домены из черных списков, тем самым противостоя спамерам.

 

Современные инструменты

Несколько лет тому назад, после смены многих поколений, боты и киборги стали более мощными, точными и дружественными к пользователю. И теперь, как видно из рис. 1, эти инструменты играют все большую роль в поддержании качества статей  «Википедии». 

Вместо AntiVandalBot с его простыми правилами и несложной эвристикой сегодня используется ClueBot_NG — высокоточный механизм на основе нейросети и технологии машинного обучения: редакторы указывают киборгу на совершаемые им ошибки, а разработчики периодически переобучают его классификатор. Вместо VandalProof теперь применяется Huggle с более современным пользовательским интерфейсом, высокой настраиваемостью и интеллектуальной системой сортировки правок по степени вероятности вандализма. Huggle позволяет обрабатывать образцы вандализма, которые не «отлавливает» ClueBot_NG.

Иммунная система «Википедии»
Рис. 1. Соотношение отмены вандальских правок ботами, киборгами и редакторами-людьми в «Википедии». Роль ботов и киборгов в защите статей от повреждения растет с начала 2006 года

 

Распределенное опознавание

Сегодня, благодаря ClueBot_NG и киборгу Huggle, работающему в связке с людьми, большинство актов вандализма выявляется и отменяется еще до того, как их заметит редактор или читатель. Однако скорость и эффективность, с которыми эти инструменты справляются с индивидуальными разрушительными правками, это лишь один из аспектов стратегии борьбы с вандализмом в «Википедии». Стюарт Гейгер и Дэвид Райбс в статье  “The  Work of Sustaining Order in Wikipedia: The Banning of a  Vandal”  отмечают, что боты и киборги образуют «распределенную систему опознавания», придавшую новый облик процессу выявления и удаления действий вандалов. Боты и киборги, работая независимо друг от друга, «обрабатывают каждую вредоносную правку через социальную инфраструктуру, в результате чего администраторы и редакторы опознают вандалов». Другими словами, боты и киборги  «Википедии»  автоматически регистрируют все действия редакторов-новичков, что позволяет быстро и эффективно идентифицировать вандалов, блокировать их деятельность и тем самым создавать «иммунитет» к дальнейшим попыткам повреждения.

Социализация ботов

Боты выполняют правки в сотни раз быстрее, чем люди, но они также могут наносить массовый ущерб неуместными действиями из-за ошибок в коде либо из-за того, что авторы бота не учли  пожеланий  других участников сообщества. Чтобы предотвратить возникновение таких проблем, участники группы Bot Approvals Group проверяют все предложения о создании новых ботов и рассматривают жалобы на действия существующих. По мнению Гейгера, редакторы  «Википедии»  рассматривают боты не только как инструменты или средства силового подкрепления, но также в качестве участников социума энциклопедии. Отчасти это связано с тем, что боты взаимодействуют с  «Википедией»  так же, как и редакторы-люди: они редактируют статьи и страницы через пользовательские аккаунты, а также отправляют и получают сообщения, которые для контроля должен прочитывать человек, отвечающий за бот. Редактор Tawker, оператор AntiVandalBot, в 2006 году даже в шутку номинировал свой бот на выборы в Арбитражный комитет  —  своего рода верховный суд «Википедии». 

В качестве примера в поддержку своего мнения Гейгер приводит массовое возмущение участников сообщества «Википедии» деятельностью бота HagermanBot, который следил за исполнением общепринятого в энциклопедии правила о подписывании комментариев, чтобы в дискуссиях не было анонимных участников. Бот иногда по ошибке подписывал правки, не являвшиеся комментариями, однако недовольство вызывала именно нормальная работа программы. «Мне не нравится, что этот бот редактирует сообщения на страницах бесед без ведома и согласия их участников», — объяснил Sensemaker, один из редакторов «Википедии». Претензии к HagermanBot возникли несмотря на то, что редакторы-люди выполняли те же функции еще задолго до его появления. В дискуссии о том, следует ли позволить HagermanBot продолжать работу, авторитетный редактор и администратор Рич Фармбро предостерег пользователей от «ботофобии», обратив внимание, что боты ведут себя лучше, чем люди. Таким образом, боты до какой-то степени стали участниками социума онлайн-энциклопедии, поэтому пришлось искать способы их мирного сосуществования с редакторами-людьми.

Проблема HagermanBot была решена при помощи механизма отказа от использования (opt-out) — редактор может приказать боту не подписывать его правки путем изменения соответствующей настройки в профиле. Со временем механизм opt-out стал воплощением второго закона робототехники Айзека Азимова — робот должен подчиняться всем приказам, которые ему отдает человек.

Мотивационные аспекты киборгов

Huggle, один из самых популярных антивандальных инструментов редактирования в «Википедии», написан на C#.NET, и любой пользователь может скачать и установить его. С помощью Huggle редакторы могут отменять изменения, но, учитывая широту возможностей инструмента, разрешение на отмену предоставляется только администраторам и привилегированным пользователям.

Иммунная система «Википедии»
Рис. 2. С помощью пользовательского интерфейса Huggle можно просмотреть серию последних правок путем их фильтрации в соответствии с пользовательскими настройками

 

Huggle упрощает просмотр серии последних правок, позволяя фильтровать их в соответствии с пользовательскими настройками. На рис. 2 слева показан список недавних правок, отсортированных по степени вероятности вандализма. При выборе одной из правок она исчезает из списка у остальных пользователей Huggle, чтобы снизить риск конфликта. В правой части экрана выделены изменения выбранной правки: зеленым обозначен добавленный контент, желтым — удаленный. Число у правого края над правкой (+6128) — это количество добавленных слов (или удаленных, когда оно отрицательное). Вверху справа отображается скорость работы пользователя (в данном случае в минуту он просматривает 92 правки и делает четыре отмены). При отсутствии информации о качестве редакторской работы пользователей этот «счет» поощряет к тому, чтобы увеличивать частоту отмен. Этой же цели служит простота отмены: когда пользователь нажимает на большую красную кнопку с восклицательным знаком вверху слева, Huggle отменяет отображаемую правку и передает предположительному вандалу уведомление о недостойном поведении.

Некоторые участники сообщества «Википедии» полагают, что эти мотивационные меры заходят слишком далеко, превращая энциклопедию, скорее, в игру, чем в серьезный проект. В самой «Википедии» даже есть статья, утверждающая, что онлайн-энциклопедия превратилась в многопользовательскую ролевую игру с «монстрами» (вандалами), которых нужно побеждать, вооружившись «опытом» (количеством правок или отмен), который необходимо зарабатывать, и «повелителями» (администраторами), которым следует подчиняться.

 

Свой путь

Боты и киборги стали неотъемлемой частью не только англоязычного раздела «Википедии», но и практически всех проектов, построенных на движке MediaWiki, и русскоязычный раздел не стал исключением — он также в значительной степенни обслуживается ботами и киборгами. Приблизительное соотношение количества правок, сделанных пользователями вручную, пользователями, оснащенными инструментами массового редактирования, и управляемыми редакторами программными пакетными процессами примерно одинаковое во всех крупных языковых разделах «Википедии». Движок MediaWiki снабжен естественным прикладным программным интерфейсом, позволяющим достаточно эффективно автоматизировать многие массовые операции, поэтому создание ботов и инструментария киборгов — задача простая и хорошо формализуемая. Большинство практикующих разработчиков ботов используют программный интерфейс pywikipedia для Python, а самый популярный инструмент киборга — это AutoWikiBrowser, тогда как Huggle используется реже.

Вместе с тем надо отметить, что не всегда одни и те же задачи разные языковые разделы решают одними и теми же средствами, и в этом смысле неверно говорить о фундаментальной роли ботов в обеспечении стабильности проекта «Википедии». Например, в русском и немецком разделах не запущено ни одного антивандального бота, однако проблема намеренной порчи содержимого решается не менее эффективно.

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

Еще один приведенный в статье пример функции для бота — исправление часто встречающихся орфографических ошибок. У русского раздела и здесь имеется свое решение — автокоррекция орфографии реализована вообще без привлечения ботов и киборгов, а выполняется при помощи кнопки в окне редактирования, вызывающей сценарий на JavaScript, который исправляет наиболее типичные орфографические ошибки на основе базы знаний, пополняемой всеми участниками. Кроме того, данный сценарий занимается типографским оформлением содержимого: расставляет тире, минусы, дефисы, кавычки «елочки» и кавычки «лапки», апострофы, неразрывные пробелы и т. д. Поэтому с технической точки зрения далеко не всегда бот можно считать единственно возможным решением.

Андрей Николаенко (anikolaenko@acm.org), участник русско- и англоязычных разделов «Википедии» (Москва).

 

***

Боты и киборги стали важнейшим элементом экосистемы «Википедии». Без них в условиях экспоненциального роста числа новых пользователей энциклопедию контролировать невозможно, однако боты и киборги — это не просто инструменты для контроля качества контента. Взаимодействуя с людьми, они фундаментально меняют саму культуру «Википедии». Так, недавнее исследование показало, что отмены правок стали мощным демотивирующим фактором для авторов «Википедии», особенно для новичков. Инструменты наподобие Huggle автоматически распознают потенциально требующие отмены правки, работают быстро и вознаграждают редакторов начислением «очков» за каждую отмену, обеспечивая быстрое и безжалостное удаление или коррекцию контента, уведомляя авторов об отменах лишь через автоматически сгенерированное объяснение. Поэтому исследователи из Университета Миннесоты работают с Wikimedia Foundation над созданием более «коммуникабельных» версий киборгов, которые дадут возможность пользователям-людям стать более эффективными участниками сообщества «Википедии». Представляется весьма интересным, какие на протяжении следующего десятилетия появятся нормы взаимодействия между миллионами пользователей-людей и тысячами автоматических инструментов в сообществе, где и тем и другим отводятся весьма важные роли.

Аарон Халфейкер (halfaker@cs.umn.edu) — аспирант, Джон Ридл (riedl@cs.umn.edu) — преподаватель факультета компьютерных наук и инженерии Университета Миннесоты.

 

Aaron Halfaker, John Riedl, Bots and Cyborgs: Wikipedia’s Immune System, IEEE Computer, March 2012, IEEE Computer Society. All rights reserved. Reprinted with permission.