Изменить задание

PATCH /tasks/{id}

Меняет перекрытие задания.

Вы можете:

  • задать числовое значение (параметр overlap) или установить бесконечное перекрытие (параметр infinite_overlap), чтобы выдавать задание всем исполнителям (например, для обучающих заданий);

  • добавить предварительные ответы или изменить их значения (параметр baseline_solutions), если они уже были заданы.

    Предварительные ответы используются для расчета уверенности в ответе при динамическом перекрытии (incremental relabeling, IRL);

  • сделать из обычных заданий контрольные и обучающие или отредактировать ответы и подсказки для уже существующих заданий.

Примеры запросов

curl -X PATCH 'https://tasks.yandex.ru/api/v1/tasks/000012bb84--62d80429f20bf20e50f36a27' \
     -H 'Authorization: OAuth PlaceYourRealOAuthToken_Here' \
     -H 'Content-Type: application/json' \
     -d '{"overlap":5,"infinite_overlap":false}'
import requests

url = "https://tasks.yandex.ru/api/v1/tasks/000012bb84--62d80429f20bf20e50f36a27"
headers = {
  'Authorization': 'OAuth PlaceYourRealOAuthToken_Here',
  'Content-Type': 'application/json'
}
payload = {
  "overlap": 5,
  "infinite_overlap": False
}
response = requests.patch(url, headers=headers, json=payload)

print(response.text)
var request = require('request');
var options = {
  'method': 'PATCH',
  'url': 'https://tasks.yandex.ru/api/v1/tasks/000012bb84--62d80429f20bf20e50f36a27',
  'qs': {},
  'headers': {
    'Authorization': 'OAuth PlaceYourRealOAuthToken_Here',
    'Content-Type': 'application/json'
  },
  'body': JSON.stringify({
    "overlap": 5,
    "infinite_overlap": false
  })
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

Заголовки

Заголовок

Описание

Authorization

API-токен для авторизации аккаунта. В качестве префикса добавьте OAuth.

Content-Type

Указывает формат данных (application/json) в передаваемом теле запроса.

Path-параметры

Параметр

Описание

id*

string

Идентификатор задания.

Тело и параметры запроса

Числовое значение перекрытия

{
  "overlap": <new overlap value>,
  "infinite_overlap": false
}

Бесконечное перекрытие

{
  "overlap": null,
  "infinite_overlap": true
}

Предварительные ответы

{
  "baseline_solutions": [
    {
      "output_values": {<output data values>},
      "confidence_weight": <from 0 to 1>
    }
  ]
}

Ответы и подсказки для контрольных и обучающих заданий

{
  "known_solutions": [
    {
      "output_values": {<output data values>},
      "correctness_weight": <from 0 to 1>
    }
  ],
  "message_on_unknown_solution": <message string>
}

Ответ

Содержит данные задания в формате JSON.

Пример ответа
{
  "id": "000248a756--6422ca21e5997032541d856b",
  "created": "2023-03-28T11:06:09.827",
  "pool_id": "38315862",
  "input_values": {
    "image_url": "https://example.com/image1.jpg"
  },
  "known_solutions": [
    {
      "output_values": {
        "result": "OK",
        "like": false
      },
      "correctness_weight": 0.8
    },
    {
      "output_values": {
        "result": "OK",
        "like": true
      },
      "correctness_weight": 1
    }
  ],
  "baseline_solutions": [
    {
      "output_values": {
        "result": "OK",
        "like": false
      },
      "confidence_weight": 0.8
    },
    {
      "output_values": {
        "result": "OK",
        "like": true
      },
      "confidence_weight": 1
    }
  ],
  "message_on_unknown_solution": "The cat is in a good mood.",
  "overlap": 3,
  "infinite_overlap": false,
  "remaining_overlap": 3,
  "reserved_for": [],
  "unavailable_for": []
}

Включает:

  • параметры, которые используются при создании задания:

    Параметр

    Описание

    pool_id*

    string

    Идентификатор пула, в который загружается задание.

    origin_task_id

    string

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

    input_values*

    object

    Входные данные для задания. Список пар:

    "<id поля 1>": "<значение поля 1>",
    "<id поля 2>": "<значение поля 2>",
    ...
     "<id поля n>": "<значение поля n>"
    

    known_solutions[]

    array of objects

    Правильные ответы для контрольных и обучающих заданий.

    Можно указать несколько вариантов правильного ответа на задание.

    Если один вариант правильнее другого, вы можете присваивать вариантам ответов разный вес. Для этого используйте ключ correctness_weight.

    • Контрольный задания — задания с правильными ответами. Используются для контроля качества ответов.
    • Обучающие задания — задания для обучения исполнителей. Обучающие задания содержат правильные ответы и подсказки. Если исполнитель отвечает неправильно, на экран выводится подсказка. Исполнитель не может перейти к следующему заданию, пока не введет правильный ответ.

    Полный список параметров приведен в таблице Правильные ответы для контрольных и обучающих заданий.

    message_on_unknown_solution

    string

    Подсказка к заданию (для обучающих заданий).

    baseline_solutions[]

    array of objects

    Предварительные ответы. Эти данные имитируют ответы исполнителей при расчете уверенности в ответе ( confidence). Они используются в динамическом перекрытии (incremental relabeling, IRL) и в агрегации результатов по навыку.

    Для каждого предварительного ответа нужно определить значения выходных данных (output_values) и уверенность в ответе (confidence_weight).

    Допустим, в задании вы просите исполнителя определить, что на изображении: кошка или собака. И допустим, ваша нейронная сеть уже определила, что на изображении может быть собака с вероятностью 80%, кошка с уверенностью 40%. Допустим, указано динамическое перекрытие от 1 до 3, а минимальная уверенность в ответе — 85%.

    Если исполнитель ответит «Собака» и уверенность в его ответе высокая, то скорее всего перекрытие не будет повышаться — хватит одного ответа. Если исполнитель ответит «Кошка», то уверенности скорее всего не хватит и перекрытие будет повышаться и дальше.

    Нельзя использовать при создании страницы заданий — в ответе на запрос будет ошибка с кодом 400 и пометкой VALUE_NOT_ALLOWED.

    Полный список параметров приведен в таблице Предварительные ответы.

    localization_config

    object

    Блок перевода на другие языки. Полный список параметров приведен в таблице Переводы на другие языки.

    Подробнее о переводе см. в документе Перевод на другие языки.

    overlap

    string (обязательный при условии)

    Обязателен, если при создании заданий не используется параметр allow_defaults=true и перекрытие не указано в параметрах пула (ключ defaults.default_overlap_for_new_tasks).

    Перекрытие задания.

    infinite_overlap

    boolean

    Выдача задания с бесконечным перекрытием. Используется, например, для обучающих заданий, чтобы выдать их всем исполнителям:

    • true — установить бесконечное перекрытие;
    • false — оставить перекрытие, указанное для задания или пула.

    По умолчанию значение false.

    reserved_for[]

    array of strings

    Идентификаторы исполнителей, которым задание будет доступно.

    unavailable_for[]

    array of strings

    Идентификаторы исполнителей, для которых задание должно быть недоступно.

    Правильные ответы для контрольных и обучающих заданий ('known_solutions')

    Параметр

    Описание

    output_values*

    object

    Значения выходных данных для проверки. Надо задать значения для всех обязательных полей выходных данных.

    "<id поля 1>": "<правильный ответ>",
    "<id поля 2>": "<правильный ответ>",
    ...
    

    correctness_weight

    float

    Вес правильного ответа, в диапазоне от 0 до 1.

    Позволяет засчитать ответ как частично правильный. Это удобно, когда на задание нет одного однозначно правильного ответа.

    Это работает как начисление баллов: если для получения навыка надо выполнить одно контрольное задание правильно (набрать 1 балл), то можно выполнить правильно одно задание с весом 1 или два задания с весом 0.5 и больше.

    Значение по умолчанию 1.

    Предварительные ответы ('baseline_solutions')

    Параметр

    Описание

    output_values*

    object

    Значения выходных данных для предварительных ответов.

    "<id поля 1>": "<предварительный ответ>",
    "<id поля 2>": "<предварительный ответ>",
    ...
    

    confidence_weight

    float

    Уверенность в ответе, в диапазоне от 0 до 1.

    Значение по умолчанию 1.

    Переводы на другие языки ('localization_config')

    Параметр

    Описание

    default_language

    string

    Исходный язык, на котором заполнены:

    • public_name* (string — название проекта. Его увидят исполнители)
    • public_description* (string — описание проекта. Его увидят исполнители)
    • public_instructions (string — инструкция по выполнению заданий. В инструкции можно использовать любую HTML-разметку)

    additional_languages[]

    array of objects

    Массив языков перевода. Полный список параметров приведен в таблице Языки переводов.

    Языки переводов ('additional_languages')

    Параметр

    Описание

    language

    string

    Язык перевода.

    public_name

    object

    Перевод названия проекта.

    Источник перевода:

    • REQUESTER — заказчик сам установил значение.

    public_description

    object

    Перевод описания проекта.

    Источник перевода:

    • REQUESTER — заказчик сам установил значение.

    public_instructions

    object

    Перевод инструкции по выполнению заданий.

    Источник перевода:

    • REQUESTER — заказчик сам установил значение.

    tb_view_spec

    object

    Перевод интерфейса задания.

    tb_view_spec.keys[]

    array of objects

    Ключи с переводом элементов интерфейса задания.

    Источник перевода:

    • REQUESTER — заказчик сам установил значение.

    message_on_unknown_solution

    object

    Подсказка для задания (используется для обучающих заданий).

  • параметры, которые присваиваются автоматически:

    Параметр

    Описание

    id

    string

    Идентификатор задания.

    created

    string

    Дата и время создания страницы заданий по UTC в формате ISO 8601 YYYY-MM-DDThh:mm:ss[.sss].

    remaining_overlap

    integer

    Оставшееся количество исполнителей, которым доступно это задание.

Обязательный параметр

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

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