Создать одно или несколько заданий
POST /tasks
Создает одно или несколько заданий.
Ограничение
Вы можете создать не более 200 000 заданий в минуту и не более 4 000 000 заданий в день. Общий размер всех полей input_values
в одном запросе не должен превышать 1 048 576 байт, output_values
— 4 194 304 байт.
См. полный список ограничений на странице Ограничение количества запросов.
Примеры запросов
curl -X POST 'https://tasks.yandex.ru/api/v1/tasks' \
-H 'Authorization: OAuth PlaceYourRealOAuthToken_Here' \
-H 'Content-Type: application/json' \
-d '{"input_values":{"image":"https://example.com/image_example.png"},"known_solutions":[{"output_values":{"result":"pink"}}],"infinite_overlap":true,"pool_id":"1238218"}'
import requests
url = "https://tasks.yandex.ru/api/v1/tasks"
headers = {
'Authorization': 'OAuth PlaceYourRealOAuthToken_Here',
'Content-Type': 'application/json'
}
payload = {
"input_values": {
"image": "https://example.com/image_example.png"
},
"known_solutions": [
{
"output_values": {
"result": "pink"
}
}
],
"infinite_overlap": True,
"pool_id": "1238218"
}
response = requests.post(url, headers=headers, json=payload)
print(response.text)
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://tasks.yandex.ru/api/v1/tasks',
'qs': {},
'headers': {
'Authorization': 'OAuth PlaceYourRealOAuthToken_Here',
'Content-Type': 'application/json'
},
'body': JSON.stringify({
"input_values": {
"image": "https://example.com/image_example.png"
},
"known_solutions": [
{
"output_values": {
"result": "pink"
}
}
],
"infinite_overlap": true,
"pool_id": "1238218"
})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
Заголовки
Заголовок |
Описание |
|
API-токен для авторизации аккаунта. В качестве префикса добавьте |
|
Указывает формат данных ( |
Query-параметры
Указываются в ссылке после знака вопроса, перечисляются через &
.
Параметр |
Описание |
|
boolean Способ обработки запроса:
По умолчанию значение |
|
boolean Настройки перекрытия:
|
|
string (обязательный при условии) Обязателен, если при создании заданий не используется параметр По умолчанию значение |
|
boolean Параметры валидации JSON-объектов:
По умолчанию значение |
|
boolean Открыть пул сразу после завершения операции, если пул закрыт. По умолчанию значение |
|
string Идентификатор операции для отложенной загрузки одного или нескольких заданий (при значении Рекомендуется задавать идентификатор в POST-запросе, чтобы избежать случайных ошибок, например, повторного создания операции с теми же заданиями. Идентификатор должен соответствовать стандарту RFC4122. В дальнейшем идентификатор можно использовать для получения данных об операции. |
Тело и параметры запроса
Пример тела запроса
{
"pool_id": "1",
"input_values": {
"image_url": "www.images/image1.ru"
},
"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,
"reserved_for": [],
"unavailable_for": []
}
Задания, объединенные в массив.
Пример тела запроса
[
{
"pool_id": "1238218",
"input_values": {
"image_url": "https://example.com/image_example1.png"
},
"known_solutions": [
{
"output_values": {
"result": "OK"
},
"correctness_weight": 1
}
],
"baseline_solutions": [
{
"output_values": {
"result": "OK"
},
"confidence_weight": 1
}
],
"message_on_unknown_solution": "The cat is in a good mood.",
"infinite_overlap": false,
"reserved_for": [],
"unavailable_for": []
},
{
"pool_id": "1238218",
"input_values": {
"image_url": "https://example.com/image_example2.png"
},
"known_solutions": [
{
"output_values": {
"result": "BAD"
},
"correctness_weight": 1
}
],
"baseline_solutions": [
{
"output_values": {
"result": "BAD"
},
"confidence_weight": 1
}
],
"message_on_unknown_solution": "The cat is in a bad mood.",
"infinite_overlap": false,
"reserved_for": [],
"unavailable_for": []
}
]
Параметр |
Описание |
|
string Идентификатор пула, в который загружается задание. |
|
string Идентификатор задания из другого пула, с которого было скопировано это задание, для проверки мнением большинства. |
|
object Входные данные для задания. Список пар:
|
array of objects Правильные ответы для контрольных и обучающих заданий. Можно указать несколько вариантов правильного ответа на задание. Если один вариант правильнее другого, вы можете присваивать вариантам ответов разный вес. Для этого используйте ключ
Полный список параметров приведен в таблице Правильные ответы для контрольных и обучающих заданий. |
|
|
string Подсказка к заданию (для обучающих заданий). |
array of objects Предварительные ответы. Эти данные имитируют ответы исполнителей при расчете уверенности в ответе ( Для каждого предварительного ответа нужно определить значения выходных данных ( Допустим, в задании вы просите исполнителя определить, что на изображении: кошка или собака. И допустим, ваша нейронная сеть уже определила, что на изображении может быть собака с вероятностью 80%, кошка с уверенностью 40%. Допустим, указано динамическое перекрытие от 1 до 3, а минимальная уверенность в ответе — 85%. Если исполнитель ответит «Собака» и уверенность в его ответе высокая, то скорее всего перекрытие не будет повышаться — хватит одного ответа. Если исполнитель ответит «Кошка», то уверенности скорее всего не хватит и перекрытие будет повышаться и дальше. Нельзя использовать при создании страницы заданий — в ответе на запрос будет ошибка с кодом Полный список параметров приведен в таблице Предварительные ответы. |
|
object Блок перевода на другие языки. Полный список параметров приведен в таблице Переводы на другие языки. Подробнее о переводе см. в документе Перевод на другие языки. |
|
|
string (обязательный при условии) Обязателен, если при создании заданий не используется параметр Перекрытие задания. |
|
boolean Выдача задания с бесконечным перекрытием. Используется, например, для обучающих заданий, чтобы выдать их всем исполнителям:
По умолчанию значение |
|
array of strings Идентификаторы исполнителей, которым задание будет доступно. |
|
array of strings Идентификаторы исполнителей, для которых задание должно быть недоступно. |
Правильные ответы для контрольных и обучающих заданий ('known_solutions')
Параметр |
Описание |
|
object Значения выходных данных для проверки. Надо задать значения для всех обязательных полей выходных данных.
|
|
float Вес правильного ответа, в диапазоне от 0 до 1. Позволяет засчитать ответ как частично правильный. Это удобно, когда на задание нет одного однозначно правильного ответа. Это работает как начисление баллов: если для получения навыка надо выполнить одно контрольное задание правильно (набрать 1 балл), то можно выполнить правильно одно задание с весом 1 или два задания с весом 0.5 и больше. Значение по умолчанию 1. |
Предварительные ответы ('baseline_solutions')
Параметр |
Описание |
|
object Значения выходных данных для предварительных ответов.
|
|
float Уверенность в ответе, в диапазоне от 0 до 1. Значение по умолчанию 1. |
Переводы на другие языки ('localization_config')
Параметр |
Описание |
|
string Исходный язык, на котором заполнены:
|
array of objects Массив языков перевода. Полный список параметров приведен в таблице Языки переводов. |
Языки переводов ('additional_languages')
Параметр |
Описание |
|
string Язык перевода. |
|
object Перевод названия проекта. Источник перевода:
|
|
object Перевод описания проекта. Источник перевода:
|
|
object Перевод инструкции по выполнению заданий. Источник перевода:
|
|
object Перевод интерфейса задания. |
|
array of objects Ключи с переводом элементов интерфейса задания. Источник перевода:
|
|
object Подсказка для задания (используется для обучающих заданий). |
Ответ
В зависимости от значения параметра async_mode в запросе ответ содержит:
Одно задание
Пример ответа
{
"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": []
}
Сведения о созданном задании. Помимо параметров, которые задаются при создании задания, включает параметры, которые присваиваются заданию автоматически:
Параметр |
Описание |
|
string Идентификатор задания. |
|
string Дата и время создания страницы заданий по UTC в формате ISO 8601 |
|
integer Оставшееся количество исполнителей, которым доступно это задание. |
Пример ответа
{
"id": "2ed92b7f-75c0-4771-ae2f-3911232d6d4e",
"type": "TASK.BATCH_CREATE",
"status": "RUNNING",
"submitted": "2020-12-23T16:26:20.131",
"progress": 0,
"parameters": {
"open_pool": false,
"allow_defaults": false,
"skip_invalid_items": false
}
}
Параметр |
Описание |
|
string Идентификатор операции. |
|
string Тип операции:
|
|
string Статус операции:
Отображается для всех операций, кроме создания пула. |
|
string Дата и время отправки запроса по UTC в формате ISO 8601: |
|
string Дата и время начала операции по UTC в формате ISO 8601: |
|
string Дата и время завершения операции по UTC в формате ISO 8601: |
|
integer Ход выполнения операции в процентах. |
object Параметры операции (зависят от типа операции). Полный список параметров приведен в таблице Параметры операции. |
|
object Детали выполнения операции. Полный список параметров приведен в таблице Детали выполнения операции. |
Параметры операции ('parameters')
Параметр |
Описание |
|
string Идентификатор проекта, для которого вы хотите получить текущий статус. |
|
string Идентификатор пула, для которого вы хотите получить текущий статус. |
|
string Идентификатор обучающего пула, для которого вы хотите получить текущий статус. |
|
boolean Только для заданий и страниц заданий. Нужно ли открыть пул сразу после создания заданий или страниц заданий, если он закрыт. |
|
boolean Только для заданий и страниц заданий. Настройки перекрытия:
|
|
boolean Только для заданий и страниц заданий. Параметры валидации JSON-объектов:
|
Детали выполнения операции ('details')
Параметр |
Описание |
|
integer Количество элементов в запросе. |
|
integer Количество элементов, прошедших валидацию. |
|
integer Количество элементов, не прошедших валидацию. |
|
integer Количество успешно созданных или загруженных элементов. |
|
integer Количество элементов, которые не удалось создать или загрузить. |
Несколько заданий
Пример ответа
{
"items": {
"0": {
"id": "f432cac2-7184-47a3-8220-12ce362cb208",
"pool_id": "21",
"input_values": {
"image": "https://images.com/1.png"
},
"overlap": 3,
"created": "2016-09-29T18:04:00"
}
},
"validation_errors": {
"1": {
"input_values.image": {
"code": "VALUE_REQUIRED",
"message": "Value must be present and not equal to null"
}
}
}
}
Параметр |
Описание |
|
object Объект с созданными заданиями. |
|
object Порядковый номер задания в массиве при создании (начиная с 0). |
|
string Идентификатор задания. |
|
string Идентификатор пула, в который было загружено задание. |
|
string Перекрытие страницы заданий. |
|
string Дата и время создания страницы заданий по UTC в формате ISO 8601 |
|
object Объект с ошибками в заданиях. Возвращается, если в запросе используется параметр |
Пример ответа
{
"id": "26e130ad3652443a3dc5094791e48ef9",
"type": "TASK.BATCH_CREATE",
"status": "FAIL",
"submitted": "2015-12-13T23:32:01",
"started": "2015-12-13T23:33:00",
"finished": "2015-12-13T23:34:12",
"parameters": {
"allow_defaults": false,
"skip_invalid_items": false,
"open_pool": false
},
"details": {
"total_count": 2,
"valid_count": 1,
"not_valid_count": 1,
"success_count": 0,
"failed_count": 2
}
}
Параметр |
Описание |
|
string Идентификатор операции. |
|
string Тип операции:
|
|
string Статус операции:
Отображается для всех операций, кроме создания пула. |
|
string Дата и время отправки запроса по UTC в формате ISO 8601: |
|
string Дата и время начала операции по UTC в формате ISO 8601: |
|
string Дата и время завершения операции по UTC в формате ISO 8601: |
|
integer Ход выполнения операции в процентах. |
object Параметры операции (зависят от типа операции). Полный список параметров приведен в таблице Параметры операции. |
|
object Детали выполнения операции. Полный список параметров приведен в таблице Детали выполнения операции. |
Параметры операции ('parameters')
Параметр |
Описание |
|
string Идентификатор проекта, для которого вы хотите получить текущий статус. |
|
string Идентификатор пула, для которого вы хотите получить текущий статус. |
|
string Идентификатор обучающего пула, для которого вы хотите получить текущий статус. |
|
boolean Только для заданий и страниц заданий. Нужно ли открыть пул сразу после создания заданий или страниц заданий, если он закрыт. |
|
boolean Только для заданий и страниц заданий. Настройки перекрытия:
|
|
boolean Только для заданий и страниц заданий. Параметры валидации JSON-объектов:
|
Детали выполнения операции ('details')
Параметр |
Описание |
|
integer Количество элементов в запросе. |
|
integer Количество элементов, прошедших валидацию. |
|
integer Количество элементов, не прошедших валидацию. |
|
integer Количество успешно созданных или загруженных элементов. |
|
integer Количество элементов, которые не удалось создать или загрузить. |
Обязательный параметр