Сначала запустите проект в песочнице. Так вы сможете избежать ошибок и потраченных средств, если окажется, что ваше задание не работает.
Из этого туториала вы узнаете, как в Яндекс Заданиях создать проект для модерации контента. Мы будем использовать пресет, который специально разработан для этого типа разметки данных.
В этом пресете исполнители оценивают представленный текст на наличие нарушений (ненормативная лексика, спам, некорректное поведение и т. д.) и выбирают один из предложенных вариантов ответа: Все хорошо или Есть нарушения. Если исполнитель обнаружил нарушения, он может уточнить их тип, ответив на дополнительный вопрос. Ответ на дополнительный вопрос представлен в виде группы чекбоксов, где исполнитель может выбрать один или несколько пунктов.
Пример готового задания
Вот несколько видов задач, которые можно решить с помощью такого проекта:
Модерация комментариев и логинов на форуме.
Проверка объявлений на сайте, отзывов о товаре в магазине или сообщений в соцсетях.
Наличие упоминания какого-то бренда или компании.
Пример
У вас есть блог и вы хотите провести модерацию комментариев к новой публикации, которая собрала много негатива — проверьте комментарии на нарушения правил: оскорбления, нарушения закона, спам и рекламу.
Пополните свой счет на странице Профиль. Если вы не уверены в том, какой бюджет потребуется, вы можете рассчитать это позже в процессе работы над проектом.
Создайте проект
Мы рекомендуем использовать пресет проекта, чтобы упростить настройку и получить хорошие результаты.
Нажмите Создать проект на странице Проекты.
Скриншот
Выберите пресет Анализ тональности и модерация контента.
Нажмите Использовать решение.
В разделе Общая информация заполните поля:
Название для исполнителей — название, которое будет отображаться в списке заданий для исполнителей.
Описание для исполнителей — краткое описание, которое будет отображаться в списке заданий для исполнителей.
Скриншот
В разделе Интерфейс задания настройте внешний вид задания.
Примечание
В пресете для создания интерфейса задания используется редактор HTML/JS/CSS. В туториале покажем, как использовать конструктор шаблонов для той же цели.
Воспользуйтесь готовым шаблоном, где уже настроены горячие клавиши, внешний вид задания и валидация: исполнитель не сможет отправить задание, если не выберет варианта ответа.
В редакторе интерфейса внесите изменения в соответствии со своим проектом:
Напишите вопрос, который исполнители увидят в вашем задании. Во всех заданиях проекта используется один и тот же вопрос.
Скриншот
Задайте варианты ответов. В списке options замените примеры ответов вашими значениями в следующих свойствах:
label — вариант ответа, который увидят исполнители. Убедитесь, что он понятен и корректен.
value — значение, которое вы увидите в файле с результатами разметки.
Скриншот
Если исполнитель выбирает опцию, которая требует дополнительной информации, появляется второй вопрос с чекбоксами. Условие, при котором дополнительный вопрос становится видимым, можно изменить. Для этого замените значение параметра to одним из значений, которые вы указали в свойстве value на предыдущем шаге.
Скриншот
Напишите текст дополнительного вопроса и варианты ответа на него.
Скриншот
В разделе Пример входных данных добавьте пример комментария. Он используется только при предварительном просмотре интерфейса задачи.
Скриншот
Чтобы определить, какие данные вы будете передавать исполнителю и получать в ответ, необходимо создать поля входных и выходных данных.
Чтобы увидеть поля входных и выходных данных, нажмите Показать спецификации.
Входные и выходные данные соответствуют интерфейсу задачи, настроенному в конструкторе шаблонов. Убедитесь, что все входные и выходные поля настроены правильно.
Входные данные — поле comment, текст для проверки.
Выходные данные — строка quality, в которую будет записан выбранный вариант из поля «Есть ли в тексте нарушения?». Остальные поля — типы нарушений. Используйте этот список полей или настройте его под свои задачи.
В редакторе Инструкция для исполнителей введите инструкцию, которую увидят исполнители, когда начнут выполнять ваше задание. Вы можете добавлять в инструкцию текст, таблицы и изображения.
Вы можете подготовить инструкцию в формате HTML и вставить ее в редактор. Чтобы переключиться в режим HTML, нажмите <>.
Совет
При написании инструкции помните, что исполнители заранее ничего не знают о ваших заданиях. Убедитесь, что инструкция понятна, но не слишком многословна.
Нажмите кнопку Сохранить справа вверху.
Подробнее о настройке проекта читайте в разделе Создание проекта.
Добавьте пул заданий
Пул — это набор оплачиваемых заданий, которые одновременно выдаются исполнителям.
Нажмите Создать новый пул на странице проекта.
Скриншот
Заполните поле Название пула. Название пула будет видно только вам на странице проекта.
При необходимости отключите опцию Использовать описание проекта и заполните поле Публичное описание. В этом случае в списке заданий для исполнителей будет отображаться описание пула вместо описания проекта.
Нажмите + Приватный комментарий, чтобы добавить описание, которое будет видно только вам на странице проекта.
В блоке Аудитория добавьте фильтры для отбора исполнителей:
Чтобы ваше задание было доступно только исполнителям, владеющим русским языком, установите язык и страну по номеру телефона.
Скриншот
Задания в пулах по умолчанию будут доступны для веб-версии Яндекс Заданий и мобильного приложения. Если вы хотите изменить настройки по умолчанию и ограничить видимость задачи для любой из версий, добавьте фильтр Клиент и выберите нужное значение: Веб-версия Яндекс Заданий или Мобильные Яндекс Задания.
Отключите опцию В моих заданиях может содержаться шокирующий или порнографический контент, если ваш пул их не содержит.
С помощью настройки Соотношение скорости и качества вы можете установить количество исполнителей, которые увидят ваши задания. Переместите ползунок вправо, чтобы заблокировать доступ к заданиям для исполнителей с недостаточно высоким рейтингом.
В блоке Цена установите цену за страницу заданий и перекрытие.
В поле Цена за страницу заданий, ₽ установите цену за страницу заданий.
Обратите внимание на индикатор Интерес исполнителей к цене. Он показывает, насколько цена за страницу заданий соответствует ожиданиям исполнителей. Если интерес невелик, вы можете повысить цену, чтобы привлечь больше исполнителей. Если интерес высокий, вы можете снизить цену, чтобы сэкономить деньги.
Как определить справедливую цену
Общее правило формирования цены — чем больше времени исполнитель тратит на выполнение, тем выше цена.
Вы можете зарегистрироваться в Яндекс Заданиях как исполнитель и узнать, сколько платят другие заказчики за задания.
Перейдите к редактированию пула (кнопка в верхнем правом углу страницы) и в блоке Контроль качества нажмите Добавить правило контроля качества.
Вы можете скопировать настройки контроля качества из другого пула. Для этого в разделе Аудитория нажмите Скопировать настройки другого пула.
Откройте страницу проекта, перейдите на вкладку Контроль качества и нажмите кнопку Настроить контроль качества. Далее нажмите + Добавить блок контроля качества.
Правила будут действовать во всех пулах проекта, и изменить их настройку в одном из пулов будет невозможно.
Чтобы отсеять исполнителей, которые слишком часто ошибаются при выполнении контрольных заданий, выберите Добавить правило контроля качества → Контрольные задания.
Скриншот
Если исполнитель дал не меньше 5 ответов на контрольные задания и доля правильных ответов на контрольные задания меньше 40%, то исполнитель будет заблокирован на проекте на 30 дней.
Правило будет работать, если вы указали правильные ответы для контрольных заданий.
Чтобы отсеять исполнителей, которые слишком быстро отвечают, добавьте правило контроля Добавить правило контроля качества → Быстрые ответы.
Значение параметра Минимальное время на страницу зависит от количества заданий на этой странице. Для выполнения одного задания в этом проекте достаточно 2–4 секунды. Значит, на страницу с 10-ю заданиями может хватить 20–30 секунд.
Один раз можно ошибиться неумышленно, а вот после 2–3 подобных случаев вы можете заблокировать исполнителя на какое-то время.
Скриншот
Если исполнитель выполнит две страницы заданий быстрее чем за 20 секунд, ему будет ограничен доступ к пулу и он не сможет выполнять ваши задания 10 дней.
Внимание
Ответы заблокированных исполнителей будут учтены, если не отклонить их вручную при помощи отложенной приемки. Чтобы отправить задания этих исполнителей на повторную разметку, настройте правило Повторное выполнение заданий после блокировки.
Добавьте блок Мнение большинства. Это правило устанавливает в качестве верного ответа самый популярный.
С помощью него вы можете отсеивать исполнителей, дающих неправильные ответы. Вы можете заблокировать исполнителя на 1 день, если он правильно ответил менее чем на 60% заданий. Если в значении параметра Считать большинством указано 2, это означает, что два совпавших ответа считаются правильными.
Загрузите задания
Нажмите кнопку Загрузить данные на странице пула. В открывшемся окне вы можете скачать шаблон файла с заданиями.
Добавьте в файл входные данные. Для этого типа проекта файл с заданиями должен иметь один параметр. Его название INPUT:comment, а значения являются ссылками на изображения.
Пример
INPUT:comment
Отличный пост, особенно понравилось описание новых возможностей. Спасибо!
Ерунда какая-то же. Структура статьи ни к черту, термины путаются. Автор, подучи матчасть!
А не поспорить ли нам в комментариях о бренности бытия, товарищи?
Прикрепите файл с заданиями.
Нажмите кнопку Продолжить.
Выберите способ распределения заданий по страницам Умное смешивание и укажите количество заданий на странице. Например: 9 основных и 1 контрольное.
Что такое умное смешивание?
Умное смешивание случайным образом формирует страницы с заданиями так, чтобы задания не повторялись для каждого исполнителя.
Нажмите кнопку Разделить задания на страницы.
Нажмите кнопку Предпросмотр, чтобы убедиться, что ваши задания отображаются правильно.
Используйте контрольные задания, чтобы повысить качество выполнения заданий исполнителями.
Нажмите Сохранить и перейти к следующему или Пропустить задание.
Нажмите Сохранить все контрольные задания.
Совет
Для больших пулов (более 1000 задач) мы рекомендуем добавлять в пул не менее 1% от общего числа заданий, то есть на 1000 заданий нужно добавить минимум 10 контрольных. Для небольших пулов (около 100 задач) вам нужно контролировать 10% задач.
Нажмите кнопку Запустить разметку. Пул станет доступным для исполнителей.
Отслеживайте статистику на страницах пула и проекта по мере выполнения заданий.
Получите результаты
Запустите агрегацию результатов, когда пул будет полностью выполнен. Для этого около кнопки Скачать результаты нажмите → Агрегация результатов по методу Дэвида — Скина.
Отслеживайте ход агрегации. Для этого нажмите Скачать результаты → Операции. По завершении нажмите кнопку Скачать.
Вы получите TSV-файл с результатами разметки:
INPUT — данные, которые вы загрузили для разметки.
OUTPUT — результат разметки (категория, выбранная исполнителями).
Как показывать исполнителям два разных варианта текста?
Если вы передаете тексты во входные данные, то достаточно загрузить в пул 2 разных задания: в одном из них в поле INPUT: <имя входного поля> вы передадите текст № 1, в другом — текст № 2.
Если текст в самом шаблоне задания, в блоке HTML, то нужно клонировать проект. Чтобы исполнитель мог сделать только одно задание в вашем проекте, используйте правило Выполненные задания. Можно назначить навык или заблокировать исполнителя, после того, как он отправит один ответ.
Как определить время на выполнение задания?
Попробуйте выполнить задания сами, попросите своих друзей и коллег. Найдите среднее время выполнения и добавьте к нему 50%.
Ошибки при загрузке заданий в пул
Как посмотреть лог обработки
Чтобы посмотреть лог обработки, нажмите Подробнее об ошибках загрузки. Лог обработки записан в формате JSON. Объекты внутри result соответствуют номеру строки загружаемого файла. Строки, обработанные с ошибкой, имеют статус "success": false.
Совет
Работать с большим логом удобнее, если скопировать его в текстовый редактор.
Ошибки в заголовках столбцов
Если заголовки столбцов некорректны, файл будет полностью отклонен. В остальных случаях указано количество заданий с ошибками обработки.
Таблица ошибок обработки
"parsing_error_of":"https://tlk.s3.yandex.net/wsdm2020/photos/2d5f63a3184919ce7e3e7068cf93da4b.jpg\t\t","exception_msg":"the nameMapping array and the sourceList should be the same size (nameMapping length = 1, sourceList size = 3)"
Описание
Как исправить
Лишние знаки табуляции.
Если в загружаемом файле после данных или ссылки стоит количество разделителей столбцов \t больше, чем задано число столбцов во входных данных, то появится сообщение об ошибке.
Например, когда во входных определен 1 столбец, а в файле после ссылки прописано еще два знака табуляции \t\t, то получится 3 столбца, 2 из которых лишние.
Удалите лишние разделители столбцов, в приведенном выше примере ошибки — оба знака (\t\t).
"exception_msg":"the nameMapping array and the sourceList should be the same size (nameMapping length = 4, sourceList size = 6)"
Описание
Как исправить
Не совпадает количество полей в заголовке и в строке.
Проверьте, что:
указано верное количество знаков табуляции в структуре файла;
строковые значения, содержащие знак табуляции, заключены в кавычки" ".
"code":"VALUE_REQUIRED","message":"Value must be present and not equal to null"
Описание
Как исправить
Не указано значение обязательного поля входных данных.
Проверьте, что заполнены все столбцы с обязательными полями входных данных.
"code":"INVALID_URL_SYNTAX","message":"Value must be in valid url format"
Описание
Как исправить
Данные в поле с типом «ссылка» («url») некорректны.
Проверьте, что все ссылки начинаются с префикса http://, https:// или www.
"exception_msg":"unexpected end of file while reading quoted column beginning on line 2 and ending on line 4"
Задание, для которого не указано ни подсказки, ни правильного ответа. Ответы должны будут давать исполнители. Это основные задания, которые вы будете загружать в пул, чтобы отдать исполнителям.
Задание, которое содержит правильный ответ. Контрольные задания нужны, чтобы следить за качеством ответов исполнителя.
Инструкция к заданию, которую видит исполнитель при выборе и выполнении задания. От четкости и полноты инструкции зависит качество ответов, которые вы получите, и рейтинг проекта. Хорошая инструкция поможет исполнителям правильно выполнить задание.
Файл, содержащий данные, которые нужно разметить. Заказчики используют эти файлы для загрузки заданий. В Яндекс Заданиях поддерживаются файлы в формате TSV.
Группа из нескольких заданий, ответы на которые должен отправить исполнитель за один раз.
Tab-separated values — текстовый формат файла, в котором данные разделены знаком табуляции, а строки — знаком перевода строки.
Человек, выполняющий задания в Яндекс Заданиях и получающий за это оплату. Все вместе исполнители обычно называются «крауд» (коллектив, толпа).
Параметр настройки пула, который позволяет проверять ответы и при этом платить только за правильные ответы и не платить за задания, которые исполнители сделали некачественно.
Добавление правильных ответов и подсказок в задания, а также изменение типов заданий.
Количество исполнителей, которые должны выполнить каждое задание пула. Перекрытие используется для того, чтобы убедиться, что результатам можно доверять.
Вопрос или задача, которое требует ответа от исполнителя в Яндекс Заданиях.