Контрольные задания
Контрольные задания содержат правильные ответы. Они используются, чтобы подсчитать долю правильных ответов исполнителя. В зависимости от результата вы можете либо изменить значение навыка у исполнителя, либо заблокировать доступ к заданиям.
Добавьте задания с правильными ответами в пул. Задайте значения ключей в массиве quality_control.configs
в настройках пула.
Тело и параметры запроса
Допустим, в проекте настроены:
-
Подсчет значения навыка, равного доле правильных ответов в контрольных заданиях. Значение навыка можно использовать для отбора исполнителей.
-
Прекращение доступа к проекту, если доля правильных ответов исполнителя меньше 75%.
Первый расчет навыка производится после выполнения 7-ми контрольных заданий. В расчете участвуют последние 10 ответов из контрольных заданий проекта.
Вы можете заблокировать доступ исполнителя к заданиям в проекте на необходимое количество дней, часов, минут (по отдельности и в совокупности) или навсегда.
Пример
Блокировка на 10 дней
{
"configs": [
{
"collector_config": {
"type": "GOLDEN_SET",
"parameters": {
"history_size": 10
}
},
"rules": [
{
"conditions": [
{
"key": "golden_set_answers_count",
"operator": "GT",
"value": 7
}
],
"action": {
"type": "SET_SKILL_FROM_OUTPUT_FIELD",
"parameters": {
"skill_id": "42",
"from_field": "golden_set_correct_answers_rate"
}
}
},
{
"conditions": [
{
"key": "golden_set_answers_count",
"operator": "GT",
"value": 7
},
{
"key": "golden_set_correct_answers_rate",
"operator": "LT",
"value": 75.0
}
],
"action": {
"type": "RESTRICTION_V2",
"parameters": {
"scope": "PROJECT",
"duration_unit": "DAYS",
"duration": 10,
"private_comment": "Control tasks were not completed"
}
}
}
]
}
]
}
Чтобы задать другой период блокировки, измените значение параметров duration_unit и duration ключа configs.rules.action.parameters
:
Единица измерения длительности блокировки:
MINUTES
— минуты;HOURS
— часы;DAYS
— дни;PERMANENT
— навсегда.
Длительность блокировки.
{
...
"action": {
"type": "RESTRICTION_V2",
"parameters": {
"scope": "PROJECT",
"duration_unit": "HOURS",
"duration": 12,
"private_comment": "Control tasks were not completed"
}
}
...
}
{
...
"action": {
"type": "RESTRICTION_V2",
"parameters": {
"scope": "PROJECT",
"duration_unit": "MINUTES",
"duration": 30,
"private_comment": "Control tasks were not completed"
}
}
...
}
{
...
"action": {
"type": "RESTRICTION_V2",
"parameters": {
"scope": "PROJECT",
"duration_unit": "PERMANENT",
"private_comment": "Control tasks were not completed"
}
}
...
}
Параметры
Все настройки правил контроля качества определяются в массиве объектов configs[]
. Он является обязательным и содержит следующие параметры:
Параметр |
Описание |
object Параметры для сбора статистики (например, количество пропусков заданий в пуле). |
|
object Набор правил контроля качества, которые нужно применить. |
'configs[].collector_config'
Параметр |
Описание |
|
string Критерий, на котором основан блок качества:
|
object (обязательный при условии) Обязательный, если
Параметры для сбора данных (зависят от блока контроля качества, указанного в ключе |
'configs[].collector_config.parameters'
Параметр |
Описание |
|
integer (обязательный при условии) Обязательный, если значение Количество исполнителей, которое считается большинством (например, 3 из 5). |
|
integer (обязательный при условии) Обязательный, если значение Минимальная приемлемая скорость ответа в секундах. |
|
integer (обязательный при условии) Обязательный, если
Максимальное количество последних заданий, выполненных исполнителем в проекте, ответов исполнителя или показов капчи в рамках проекта, которое нужно учитывать при подсчете. Если поле отсутствует, в расчете учитываются все задания, ответы исполнителя или показы капчи в пуле. |
'configs[].rules'
Параметр |
Описание |
object Действие в случае выполнения условий (например, закрыть доступ к проекту). |
|
object Условия (например, пропуск 10 страниц заданий подряд). Несколько условий объединяются с помощью оператора «и». |
'configs[].rules.action'
object Параметры действия. |
|
|
string Тип действия:
|
'configs[].rules.action.parameters'
Параметр |
Описание |
|
string Уровень ограничения:
|
|
string (обязательный при условии) Обязателен, если Идентификатор навыка, который необходимо обновлять по мере выполнения заданий. |
|
string (обязательный при условии) Обязателен, если Значение, которое нужно присвоить навыку:
|
|
integer (обязательный при условии) Обязателен, если Фиксированное значение, которое нужно присвоить навыку (число от 0 до 100). |
|
integer (обязательный при условии) Обязателен, если Значение определяет, на сколько изменить перекрытие. |
|
string (обязательный при условии) Обязателен, если Комментарий (причина отклонения ответов). Доступен заказчику и исполнителю. |
|
string Единица измерения длительности блокировки:
|
|
integer Длительность блокировки. |
|
string Комментарий (причина блокировки). Доступен только заказчику. |
|
boolean Определяет, нужно ли открыть закрытый пул:
|
'configs[].rules.conditions'
Параметр |
Описание |
|
string Значения, которые проверяются в условии.
Несколько условий с одинаковым значением поля |
|
string Оператор сравнения (данные
|
|
integer Пороговое значение переменной, указанной в |
Обязательный параметр