Добавление заданий в пул
- TSV-файл
- Использование файлов из облачных хранилищ
- Обучение-экзамен-реабилитация
- Изменение запущенного пула
TSV-файл
- Входное поле имеет тип "ссылка".
- Пул работает на неактуальной версии проекта. То есть создан до того, как вы изменили тип входного поля.
- Добавить требования к формату ссылок в инструкцию и подсказки в обучении.
- Обрезать полученные ссылки в js с помощью regexp и записать результат в новое выходное поле, а после сравнить полученное значение с эталоном.
- Ошибки в заголовках столбцов
-
Если заголовки столбцов некорректны, файл будет полностью отклонен. В остальных случаях указано количество заданий с ошибками обработки.
- Таблица ошибок обработки
-
Описание Как исправить "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)"
Лишние знаки табуляции.
Если в загружаемом TSV-файле после данных или ссылки стоит количество разделителей столбцов
\t
больше, чем задано число столбцов во входных данных, то появится сообщение об ошибке.Например, когда во входных определен 1 столбец, а в TSV-файле после ссылки прописано ещё два знака табуляции
\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"
В строке стоит непарная кавычка.
Проверьте, что все кавычки экранированы.
Описание Как исправить "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)"
Лишние знаки табуляции.
Если в загружаемом TSV-файле после данных или ссылки стоит количество разделителей столбцов
\t
больше, чем задано число столбцов во входных данных, то появится сообщение об ошибке.Например, когда во входных определен 1 столбец, а в TSV-файле после ссылки прописано ещё два знака табуляции
\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"
В строке стоит непарная кавычка.
Проверьте, что все кавычки экранированы.
- Существует динамическое перекрытие. Например на странице было 5 заданий, по 4-м из них ответы согласовались так, что общий ответ зачелся как верный. Пятое задание будет замешано в другой набор, поскольку оно не попало в финальный ответ и его необходимо «дооценить».
- У разных заданий существует разное перекрытие. Те задания, у которых перекрытие указано больше, будут дополнительно показываться в наборах с другими оставшимися заданиями в пуле.
- Если правило контроля качества меняет перекрытие у задания, то оно окажется в другом наборе.
Количество заданий зависит от сложности и длительности выполнения. Не делайте страницы заданий слишком большими: они неудобны для исполнителей (например, при сбоях в соединении с интернетом) и не пользуются спросом.
Вы можете указать сколько заданий будет на странице при загрузке заданий в пул. Подробнее о способах распределения заданий по страницам можно узнать здесь.
Про подключение Яндекс.Диска вы можете прочитать здесь.
В шаблоне проекта должно быть прописано, например, следующее:
<img src={{proxy img}} width="400">
, где img
— входное поле строкового формата.
Для тестирования используйте файл example.jpg
. Его URL вы можете найти в .
Каждое задание должно быть описано на отдельной строке в TSV-файле. Подробнее об этом вы можете прочитать здесь.
Когда вы создадите пул, то в нем будет настройка количества заданий на странице.
Заэкранируйте запятые обратным слэшем \
.
Для загрузки файла используйте кнопку Загрузить результаты. Формат можно посмотреть здесь.
Проверка ответов выполняется в TSV-файле.
Поле hint
заполняется для обучающих заданий. Если вы создаете обычное задание, вам нужно заполнить только поля с input
. Остальные можно либо не заполнять, либо удалить вместе с заголовками.
О структуре файла и его заполнении можно узнать здесь.
Add your text here — это подсказка, которая говорит о том, что текст в поле вы можете заменить на свои данные для задания. О структуре файла и его заполнении можно узнать здесь.
Из-за наличия кавычек в одном слове загружать ответ следует таким образом: "Сколько букв в слове ""Лихтенштейн"""
. Если внутри текста есть экранирование кавычками, то весь текст следует заключать в кавычки. Подробнее описано в Руководстве.
Проверьте поле hint
. Для обычных заданий это поле должно быть пустым.
В файле с основными заданиями должны быть заполнены столбцы с заголовками INPUT
. Вы можете увидеть эти заголовки, если скачаете образец файла из пула.
Если создаете контрольные задания, то заполните столбцы с правильными ответами — GOLDEN
.
Если обучающие, то также понадобится заполнить столбец HINT:text
. Для основных заданий все столбцы кроме INPUT
не нужны, их можно удалить.
Формат файла должен быть TSV, кодировка — UTF-8.
Если вы разместили файлы на Яндекс.Диске, посмотрите видео, как указать ссылки на них в TSV-файле.
Подробнее о создании файла в Руководстве. Если при загрузке возникают ошибки, поищите вашу ошибку на этой странице.
Ошибка будет возникать, если на вход ожидается тип URL, а приходит строка.
Зависит от задания. Технически можно много.
Но, во-первых, пользователи неохотно берутся за задания, которые требуют много времени на выполнение. То есть, они скорее сделают 10 заданий по одной минуте, чем одно задание на 10 минут.
Во-вторых, при большом количестве заданий на странице может быть проблема с загрузкой файлов для разметки. Например, картинок.
Третий момент — контроль качества и оценка выполнения всей страницы. Если вы используете дооценку заблокированных пользователей, то лучше дробить задание на более мелкие части, чтобы в переразметку отправлялось меньше заданий. Это позволит уложиться в бюджет.
Загруженные ссылки на картинки в файле Толока разделит на страницы в зависимости от того, какой способ их формирования вы указали при загрузке TSV-файла. Подробнее о трех способах загрузки можно узнать в Руководстве.
Порядок следования полей в TSV-файле значения не имеет. Можете делать так, как удобно.
Загрузить в пул задания с разными ответами через интерфейс невозможно. Можно только через API
Если у вас выставлена галочка Сохранять порядок заданий, то разметка начнется после того, как будут взяты в работу предыдущие загруженные задания. Если такой галочки нет, то нет и гарантии, что задания будут раздаваться последовательно.
Массив строк во входных данных записывается через запятую. Например: INPUT:typestext1, text2, text3, text4
Все значения записываются в один столбец. Не забудьте экранировать кавычки. Подробнее об экранировании кавычек для формата JSON можно узнать в Руководстве.
Нет, если вы загрузите в пул файл с несуществующими заголовками, система выдаст ошибку загрузки. Все обязательные INPUT поля, используемые в спецификации должны быть в TSV-файле с заданиями. Лишних полей и столбцов быть не должно.
Если вы не хотите показывать какие-то данные исполнителям, но они вам нужны в файле, создайте для них необязательные скрытые входные поля в проекте.
Текст в поле GOLDEN должен в точности совпадать с эталоном.
Обычно, если копировать ссылку из браузера на определенный сайт, они будут иметь одинаковый формат. Другое дело, если ссылка была обрезана или набрана на клавиатуре.
Настройки умного смешивания указываются для файла — не для пула.
При первой загрузке файла указанные настройки будут применяться для всех файлов, загруженных в дальнейшем в этот пул.
Все значения записываются в один столбец. Не забудьте экранировать кавычки.
Подробнее об экранировании кавычек для формата JSON можно узнать в Руководстве.
Task — это отдельное задание. Task suite — страница с заданиями. Исполнитель получает оплату за страницу заданий.
result
соответствуют номеру строки загружаемого файла. Строки, обработанные с ошибкой, имеют статус "success": false
.Одно и то же задание может попасть на разные страницы, если:
Использование файлов из облачных хранилищ
- Для поля входных данных, куда вы передаете ссылку на файл, в проекте указан тип «строка».
- В компоненте в шаблоне задания используется выражение proxy.
- Формат относительных ссылок в TSV-файле с заданиями указан верно: <уникальное имя>/<путь и имя файла>.
- В настройках проекта в поле Входные данные указан тип ссылка. Необходимо выбрать тип строка.
- В TSV-файле указаны абсолютные ссылки на файлы для заданий. Необходимо вставить ссылку вида
<уникальное имя>/<путь и имя файла>
. Например:yadisk/image1.jpg
илиyadisk/photos/image1.png
. - Фото с Яндекс.Диска используются в инструкции к заданию в мобильном приложении. Чтобы фото отобразилось в инструкции, используйте только прямые ссылки.
- Файлы удалены или находятся не в той папке на Диске, на которую ведет ссылка.
- OAuth-токен не активен. Обновите токен на странице Интеграция с внешними сервисами.
- Подключить Яндекс.Диск в профиле.
- Установить тип строка для поля входных данных.
- Вставлять ссылку на файл при помощи компонента
proxy
. - Для поля входных данных, куда вы передаете ссылку на файл, в проекте указан тип «строка».
- В компоненте в шаблоне задания используется выражение proxy.
- Формат относительных ссылок в TSV-файле с заданиями указан верно: <уникальное имя>/<путь и имя файла>.
Если картинки, аудио или видео с Яндекс.Диска не отображаются в инструкции или на странице задания, убедитесь, что вы правильно подключили Диск и загрузили файлы.
Для создания задания возьмите за основу шаблон для разметки видео.
Чтобы разместить ваши видеоролики на Яндекс.Диске, его нужно подключить и настроить проект.
Подробная видеоинструкция об этом в нашем блоге.
Попробуйте воспользоваться рекомендациями с этой страницы или написать в службу поддержки Яндекс.Диска.
Чтобы добавить картинки с помощью ссылок на Яндекс.Диск, используйте ссылку вида: /api/proxy/название прокси/путь до картинки
.
В настройках профиля заказчика на вкладке странице.
настройте интеграцию с внешними сервисами. Подробнее об этом наПодробная инструкция и видео.
Можно взять за основу шаблон для разметки видео.
Чтобы разместить ваши видеоролики на Яндекс.Диске, его нужно подключить и настроить проект.
Подробная видеоинструкция есть в нашем блоге.
Обучение-экзамен-реабилитация
- Получил значение навыка ниже значения в поле Уровень прохождения.
- Не выполнил ни одного задания, к которому привязано обучение, в течение этого срока.
- Перейдите в карточку пользователя.
- Выберите вкладку Профиль.
- Найдите в списке нужный навык и скачайте историю его изменений.
- Добавить требования к формату ссылок в инструкцию и подсказки в обучении.
- Обрезать полученные ссылки в js с помощью regexp и записать результат в новое выходное поле, а после сравнить полученное значение с эталоном.
- Правильные ответы пометить в колонке
GOLDEN:result
. - Заполнить колонку
HINT:text
, куда записывается подсказка в случае выбора неверного варианта ответа.
Обучающие и контрольные вопросы будут иметь спецификацию проекта. Но вы можете сделать отдельный проект и разместить в нем инструкцию, опросник, приложить примеры видео. А потом по ответам назначить навык. По этому навыку вы будете допускать исполнителей к основному проекту.
В пуле отображается общее число исполнителей, которые выполнили там хотя бы одну страницу заданий. Тренировочный навык может со временем теряться из-за настройки повторного прохождения. Она позволяет заново выполнить тренировку по истечении указанного срока, если исполнитель так и не приступил к заданиям в привязанных пулах или сделал слишком большой перерыв в выполнении заданий (например, из-за блокировки). Поэтому в тренировочном навыке отображаются те исполнители, которые либо недавно завершили обучение, либо регулярно выполняют ваше задание и не дают навыку исчезнуть.
Экзаменационным мы называем пул, в котором содержатся только контрольные задания. Обычно он делается небольшим и служит для проверки того, как пользователи научились выполнять задание после чтения инструкции и прохождения обучения.
В отличие от пула для основной разметки, ответы на все задания вам уже известны. Стоимость можно установить нулевой. По результатам ответов на контрольные задания вы можете назначить пользователям навык и далее указать его в основном пуле в качестве фильтра. Например, = 80
или = отсутствует>
. Составление экзамена не обязательно, в простых заданиях достаточно тренировки. Но многие заказчики используют также и экзамен.
За количество дней, в течение которых сохраняется тренировочный навык, отвечает параметр Повторное прохождение.
В файле задания оставьте пустыми контрольные значения для необязательных выходных данных.
В обучающем пуле задания имеют бесконечное перекрытие. Пока открыт пул, к которому оно привязано, и запущено само обучение, задания из него будут видны пользователям. Подробнее об обучающих пулах.
Текст в поле GOLDEN должен в точности совпадать с эталоном.
Обычно, если копировать ссылку из браузера на определенный сайт, они будут иметь одинаковый формат. Другое дело, если ссылка была обрезана или набрана на клавиатуре.
Умное смешивание задается при загрузке заданий в пул. После создания пула нажмите Загрузить и выбираете соответствующий способ формирования страниц с заданиями. При этом вы можете загрузить их отдельными файлами, либо одним файлом, расположив в любом порядке.
Через интерфейс пул можно закрыть вручную в любое время, но задать определенное количество прошедших обучающий пул и затем закрыть его автоматически не получится.
Обучение помогает пользователям тренироваться выполнять задание и разобраться с инструкцией.
На основе его результатов заказчик может отобрать в основной пул тех пользователей, которые справились достаточно хорошо.
Однако, одно лишь прохождение обучающего пула не гарантирует, что тот или иной исполнитель станет в дальнейшем качественно выполнять основные задания. Вероятно, исполнители, которые прошли обучение с высоким уровнем точности, могли обменяться друг с другом правильными ответами.
Помимо обучения нужно добавлять в основные пулы правила контроля качества и контрольные задания. Это позволит контролировать качество исполнителя на всём протяжении его работы над заданием.
Если же задание предполагает ответы в свободной форме или получение файлов с данными, используйте Отложенную приемку, чтобы выплачивать вознаграждение после проверки.
Это техническая особенность тренировочных пулов. В них задания загружаются только таким образом. Если вы хотите загружать задания в обучение постранично, создайте основной пул, укажите тип пула Тренировка и установите нулевую стоимость.
Первый обучающий пул нужно сделать на базе тренировочного пула, а второй экзаменационный — на базе основного пула. Если в нем будут только контрольные и/или обучающие задания, такой пул может иметь нулевую стоимость.
В экзаменационном пуле можно назначить навык, который будет определять результат сдачи экзамена и служить допуском в основной пул. Например: Если количество ответов ≥ 10 , то установить навык из поля <экзаменационный навык> % правильных ответов.
В требованиях к пользователям экзаменационного пула укажите: <экзаменационный навык> <80 или = отсутствует>
.
Установите в основном пуле фильтр: <экзаменационный навык> >=80 и <основной навык> >=70 или = отсутствует>
. Значения навыка вы сможете подобрать в зависимости от того, насколько хорошо пользователи справляются с вашим заданием.
Технически с одним заданием в обучении — никак. Навык после выполнения обучающего задания будет или 0 или 100.
Рекомендуем добавить минимум два задания: на первом исполнитель потренируется, а второе сможет уже выполнить верно. В этом случае можно начать допускать к основному пулу с навыка= 50.
Также вы можете создать обучающий пул на основе обычного. Назначайте навык правилом Контрольные задания. Тогда к основному пулу вы можете допустить пользователей с любым уровнем навыка, даже с 0. Но мы не советуем допускать к разметке тех, кто не справился с обучением.
Если установлено неполное прохождение и указано количество страниц, которое нужно пройти, то для прохождения тренировки не нужно проходить обучение целиком. Если такие настройки не выставлены, то для получения тренировочного навыка нужно пройти все задания в обучающем пуле.
Создать реабилитацию можно также, как и экзамен. В параметрах пула выберите тип Реабилитация. В фильтрах реабилитационного пула укажите верхнее и нижнее значение <основного навыка> пользователей, которым он будет доступен.
Например, если в основную разметку попадают пользователи с навыком 70 и выше, то в реабилитационный пул можно отправить тех, чей навык между 69 и 40.
Чтобы получилось «окно», нужно указать навык дважды с верхним и нижним значением. Например: <основной навык > <70 и <основной навык > >=40
.
Да, считается.
В сущность обучения заложена функция отбора исполнителей для основного задания. Именно поэтому обучение должно быть связано с основным пулом и становится неактивным, как только этот пул закрывается.
Пользователь проходит обучение, чтобы получить доступ к оплачиваемым заданиям. Если обучение необязательное, то скорее всего, будет мало желающих его проходить. Технически такое «факультативное» обучение можно реализовать на базе основного пула с обучающими заданиями внутри.
Чтобы оно показывалось отдельно от других пулов, снимите галочку использовать описание проекта и укажите в этом поле, что это необязательный обучающий набор заданий. В параметрах пула выберите тип Тренировка
В обучающем пуле отложенная приемка невозможна.
Но вы можете создать обучающий пул с типом Тренировка на базе обычного пула и в нем выставить отложенную приемку.
Создать такое обучение невозможно, потому что для того, чтобы ответ засчитался верным, он должен в точности совпасть с эталоном.
Для проектов со свободным вводом или файлами-вложениями можно сделать отборочное задание с отложенной приемкой. Тех, кто хорошо справится, можно будет пропустить по навыку в основной пул.
Необходимо в блоке Результат проверки в поле Сколько последних значений учитывать указать количество последних ответов исполнителя.
Например, требуется создать экзамен размером в три задания по одному заданию на страницу. Если исполнитель выполняет два из трех правильно, то получит навык.
Если задание с отложенной приемкой, то чтобы настроить правило по такой логике, необходимо указать 3 в параметре количество проверенных ответов. На скриншоте в первом случае навык получат все исполнители, которые выполнили 3 страницы заданий и ответы которых проверены, а во втором — только те, у которых приняты 2 или 3 задания.
Чтобы ответ на контрольное или обучающее задание был засчитан как верный, он должен полностью совпасть с эталоном. Для этого текст нужно нормализовать с помощью JavaScript: удалить пробелы, знаки препинания, специальные символы и заглавные буквы, а результат записать в отдельное выходное поле. Такой обработанный ответ можно уже сравнивать с контрольным.
Другой вариант отбора исполнителей для проекта такого типа — отложенная приемка.
Изменение запущенного пула
- Если пул не запускался, то удалите все задания. Для этого в блоке Задания пула нажмите кнопку Удалить. Далее загрузите в пул только один файл.
- Если пул запускался, то удалите задания по одному через режим разметки.
Если вы изменили время на выполнение задания, то его значение применится к тем заданиям, которые еще не взяты исполнителями в работу. Тоже самое касается и случая, когда вы закрываете пул. У исполнителя, у которого задание активно, остается возможность его доделать.
Если вы загрузили в пул задания «Умным смешиванием», то можете остановить пул и разметить задания — отредактировать ответы, подсказки или удалить задания.
Если вы загружали их другим способом, то нужно будет клонировать пул и загрузить туда новый файл с откорректированным списком данных на разметку.
Все задания после загрузки попадают в один список, поэтому один файл удалить не получится.