Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Нет клики


SDZeroBot работает на Node.js и использует бот-фреймворк mwn , также разработанный SD0001 . Большинство задач написано на JavaScript , а новые - на TypeScript . Исходный код доступен на github .

Задачи [ править ]

Отчеты [ править ]

Другие непрерывные задачи [ править ]

Одноразово / по запросу [ править ]

Задачи, редактируемые только в пользовательском пространстве, не требуют BRFA.

Как вы составляете отрывки из статей? [ редактировать ]

Хороший вопрос. Выдержки из статей, используемых на многих классификационных страницах SDZeroBot, генерируются с использованием комбинации регулярного выражения и некоторых более формальных методов синтаксического анализа. Исходный код Node.js используется можно увидеть здесь , который также зависит от класса MWN в вики - текста . Этот экстрактор текста также доступен как веб-сервис, размещенный на Toolforge по адресу https://summary-generator.toolforge.org/, с ужасным минимальным пользовательским интерфейсом, но с лучшей конечной точкой API. Инструкции по использованию см. В файле readme на github .

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

Исходный код [ править ]

Весь исходный код, который управляет SDZeroBot, общедоступен через репозиторий github , а также в каталоге / data / project / sdzerobot на Toolforge. Даже журналы (файлы * .out и * .err) являются общедоступными, что по умолчанию не относится к Toolforge. Там же можно просмотреть live crontab, используемый для планирования задач.

Сделать [ редактировать ]

Если вы хотите помочь с этими задачами, свяжитесь со мной.

  • Разделите определенные списки сортировки на подтемы.
    • Для списка видов спорта (более 1500 страниц) используйте машинное обучение, чтобы разделить этот список по видам спорта.
    • Разделите список биографий по профессиям - это можно сделать, просто взглянув на другие темы, по которым были классифицированы биографии.
    • Для списков STEM сделайте разделы для основных статей, биографий STEM, СМИ STEM, компаний STEM, ... ( обсуждение )
  • Автоматически создавайте краткие описания статей и черновиков.
    • У черновиков обычно нет кратких описаний. Они были бы очень полезны при сортировке AfC . Также полезно для списков AfD, NPP и PROD.
    • Изучите возможность использования машинного обучения для этого, а в противном случае - другие методы, такие как генератор коротких биографий Trialpears .
    • Если это также не дает желаемого уровня точности (особенно для статей, не относящихся к биографии), на самом деле не добавляйте короткие описания к статье, а показывайте их в списках сортировки.
  • Рассмотрите возможность создания размещенного в Toolforge веб-интерфейса для списка сортировки AfD, чтобы можно было добавить больше столбцов (видимость которых можно переключать с помощью javascript) на основе идей, изложенных здесь .
  • Автоматизируйте деление сортировки тегов AfD с помощью ORES. Работает только для избранных списков удаления сортировки, имеющих соответствующую тему ORES, или
  • Автоматизируйте удаление тегов с помощью некоторой настраиваемой модели машинного обучения. Модель может быть обучена на основе тегов delsort, сделанных до сих пор людьми. Сложность здесь в том, что для беспристрастного обучения модели требуется доступ и к содержанию удаленных статей. Простое обучение его на статьях, хранящихся в АдГ, не даст хороших результатов.
  • Большой: определите многообещающие шашки AFC с помощью машинного обучения.
  • Вероятно, с помощью TemplateStyles улучшите внешний вид таблиц на очень маленьких и очень широких экранах.
  • Создавайте единые списки для PROD и AFD, которые включают как обоснование удаления, так и ведущий текст. Зеленая галочкаYПРОД
  • Не дублируйте текст номинации в отчете о сортировке AFD для многостраничных номинаций.

  • WP: интеграция экспертной оценки
  • Пользователь: SDZeroBot / Отклоненные AFC , G13 скоро найдет способы лучше определять плохие и хорошие проекты?
    • интегрировать обнаружение ненадежных источников с помощью user: headbomb / unreliable.js
  • Инструмент Create articlesearch - показывает выдержки из статей из запросов CirrusSearch - используйте ReactJS
  • Создайте универсальный конструктор таблиц из ввода SQL / поискового запроса с настраиваемыми столбцами - в основном эквивалент Listeriabot для запросов SQL.
  • Создайте универсальный инструмент мониторинга активности ботов - разрешите настройку задач бота (используя ожидаемые сводки редактирования и т. Д.) И выдавайте предупреждения, если задачи не работают: BRFA

Советы и приемы для операторов ботов [ править ]

Обработка ссылок из черного списка [ править ]

Если SDZeroBot не может сохранить редактирование из-за того, что он вводит ссылку из черного списка спама (что, конечно, не является ошибкой бота, поскольку он, вероятно, просто взял текст для добавления из другого места), он определяет проблемную ссылку из Ответ API и удаляет протокол («http:» или «https:») из ссылки, а затем снова пытается сохранить страницу. Это означает, что ссылка, которая должна была выглядеть как ярлык ссылки, в конечном итоге выглядит как [ярлык ссылки google.com], но наиболее близка к исходной, позволяя редактировать. Кроме того, ссылка все равно была внесена в черный список, поэтому, вероятно, не должна быть активной.

Использовать OAuth [ править ]

Всегда используйте OAuth вместо BotPasswords. Есть все эти преимущества:

  • Быстрее: BotPasswords требуется как минимум 3 вызова API, чтобы вывести бота из блока: один для получения токена входа, другой для фактического входа в систему и обычно еще один для получения токенов редактирования. Поскольку OAuth не требует вызова API для начала аутентификации, вам достаточно одного вызова API - для получения токенов.
  • Меньшие ошибки: потеря сеанса часто происходит при использовании методов аутентификации на основе файлов cookie. Хорошие бот-фреймворки должны обрабатывать их автоматически, снова входя в систему при получении ответа API assertbotfailed или assertuserfailed, но если ваш нет, вы можете избежать этих проблем, просто используя OAuth. Срок действия токенов OAuth не истекает.
  • Не нужно кэшировать файлы cookie: если ваша задача бота выполняется слишком часто (скажем, каждые 10 минут), у вас, вероятно, будет высокая частота входа в систему, если вы не кэшируете файлы cookie входа и не используете их при запуске ботов. Администраторы серверов не одобряют высокий уровень входа в систему . Опять же, с OAuth вам не нужно об этом беспокоиться.
  • Более безопасный: я не знаю, почему, но слышал, что OAuth более безопасен.