Загрузка файлов

В задаче на вкладке Задания вы можете загрузить аудио-, видео- или текстовые файлы, таблицы (xlsx, csv, tsv), приложения (json и ogg) или изображения, которые требуется разметить. Для этого нажмите Загрузить данные или Загрузить ещё, если в задаче уже есть задания.

Ограничения

Максимальный размер загружаемого файла: 500 Мб. Количество файлов не ограничено.

Нельзя загружать файлы следующих форматов: apk, app, bat, bin, cgi, cmd, com, cpp, js, jse, exe, gadget, gtp, hta, jar, msi, msu, paf, paf.exe, pif, ps1, pwz, scr, thm, vb, vbe, vbs, wsf.

Изображения, аудио и видео

Когда вы загружаете изображения, аудио или видео, то по умолчанию ссылки на эти файлы будут доступны в настройках интерфейса по переменной filename.

Если вы хотите переопределить переменную, то используйте объект dataMapping в поле Config на вкладке Интерфейс.

Текстовые файлы

Когда вы загружаете текстовый файл, то данные из файла автоматически доступны в настройках интерфейса по переменной fileData.

Если вы хотите переопределить переменную, то используйте объект dataMapping в поле Config на вкладке Интерфейс.

JSON-файлы

Пример JSON-файла вы можете посмотреть и скачать на вкладке Интерфейс в блоке Example data.

Таблицы

Вы можете загрузить данные в табличном формате — xlsx, csv или tsv. Для этого используйте раздел Датасеты или создайте таблицу самостоятельно.

  • Размер файла — до 50 Мб.

  • Количество строк в файле — до 50 тысяч.

  • Каждая строка соответствует одному заданию.

  • Пустые строки игнорируются.

  • Данные таблицы сохраняются в системе в виде JSON. Невалидный JSON, текст и числа сохраняются в виде строки.

  • Таблица не загрузится, если в ней нет столбца INPUT или другого аналогичного.

Пример таблицы вы можете скачать на вкладке Интерфейс в блоке Example data.

Заголовки столбцов:

  • INPUT:<input data field> — данные для разметки. Данные могут быть в виде текста, URL или JSON. Если в таблице нет столбца с таким заголовком, то в качестве данных для разметки сохранятся данные из других столбцов, исключая столбцы, приведенные ниже.

  • FILENAME — название задания, отображается в задаче и в результатах разметки. Могут быть не уникальные значения. Если данных нет, название генерируется в виде: [название файла] + [номер строки]. Если столбец заполнен не для всех строк, отображается ошибка разбора файла.

  • GOLDEN:<output data field> — правильные ответы на контрольные задания. Столбец нужен только в контрольных и обучающих заданиях.

  • HINT:<output data field> — подсказка к обучающему заданию. В таблице может быть несколько столбцов HINT, их содержимое объединяется в общий текст и отображается над заданием.

  • PREMARKUP:<output data field> — данные предразметки.

Данные из столбца INPUT (или другого аналогичного) сохраняются в системе в формате JSON:

  • Eсли вы указали данные в виде текста, числа или URL, то они сохранятся в виде строки, например:

    {
        "text": "25000"
    }
  • Eсли вы указали данные в формате валидного JSON, то они сохранятся в формате JSON внутри объекта:

    {
        "data": {
            "date": "29.05",
            "text": "Привет",
            "claim": "wrgw"
        }
    }
  • Если вы используете кавычки, в JSON они автоматически экранируются:

    {
        "text": "ОАО \"Ромашка\""
    }

Данные из остальных столбцов сохраняются в системе в виде файла атрибутов. Например:

|== | GOLDEN:result1 |GOLDEN:text |HINT:text |PREMARKUP:result2 | Правильный ответ | 1 | Подсказка | 0 |==

{
    "control": {
        "result1": "Правильный ответ",
        "text": "1"
    },
    "explanation": "Подсказка",
    "premarkup": {
        "result2": "0"
    }
}

Загрузка двух файлов для сравнения

Чтобы добавить в задание несколько файлов для сравнения, загрузите файлы на платформу TagMe в раздел Датасеты или используйте внешнее хранилище с доступом по HTTP-протоколу.

Затем загрузите в задачу файл со ссылками, например:

{
  "image1": "/docs/templates/data/image1.png",
  "image2": "/docs/templates/data/image2.png"
}

PDF-файлы

Чтобы загрузить PDF-файлы для шаблона Сегментация PDF-файла, используйте SDK.

Файлы с предразметкой

Вы можете загрузить в задачу предварительно установленные метки — предразметку.

Предразметка загружается вместе с объектом разметки в JSON-файле или настраивается в редакторе атрибутов задания. Подробнее читайте в разделе Атрибуты.

Пример JSON файла с предразметкой
{
    "messages": [
        {
           ...
        },
        ...
        {
            ...
        }
    ],
    "marks": [
        {
            "id": "mark-1",
            "messageId": "message-2",
            "entityId": "entity-1"
        },
        {
            "id": "mark-2",
            "messageId": "message-2",
            "entityId": "entity-2"
        }
    ]
}

Структура меток должна соответствовать структуре, которая будет отправляться разметчиками в созданном задании.

Например, использовать шаблон для сегментации изображений. В JS-блоке внести следующие изменения, связанные с обработкой загруженного файла.

JS
const prepareTask = async (task, templateData) => {
    const {marks} = templateData
    const premarkupMarks = Array.isArray(marks) ? marks : [];

    return {
        ...task,
        marks: premarkupMarks,
        validateResult(result) {
            if (result.marks.length == 0) {
                return 'Разметьте изображение';
            }
            return true;
        },

        transformResult(result) {
            return result;
        }
    };
};

exports.Task = class Task extends exports.Task {
    render() {
        prepareTask(this.task, this.getTemplateData())
            .then((preparedTask) => {
                this.validate = preparedTask.validateResult;
                this.transform = preparedTask.transformResult;
                super.render();
                this.setPreparedTask(preparedTask);
            });
    }
};
EXAMPLE
{
    "filename": "https://tagme.sberdevices.ru/docs/customer/_attachments/premarkup-plus-base64.json"
}