Анализ тональности и модерация контента
Напишите нам, если не нашли ответ в Справке. Вы можете приложить скриншоты или видео, чтобы ускорить помощь:
Написать в чат Написать в Telegram
Используйте этот пресет, чтобы классифицировать содержание текста по определенным категориям.
В пресете по умолчанию для создания интерфейса задания используется редактор HTML/JS/CSS. В этом разделе описано, как использовать Конструктор шаблонов для этой же цели. В разделе Интерфейс проекта выберите Конструктор шаблонов и вставьте код из примера в раздел Конфигурация.
В этом примере исполнителю нужно ответить на вопрос: если в тексте нарушения правил публикации или нет. Если ответ положительный, то отметить это нарушения.
Интерфейс разметки содержит:
- текст;
- варианты ответов;
- горячие клавиши.
При выборе ответа Да, отображается уточняющий вопрос с вариантами ответа на него.
Обратите внимание, что в этом примере уже настроен внешний вид задания и валидация: исполнитель не сможет отправить задание, если не выберет один из вариантов ответа.
Из каких компонентов состоит этот пример
- view.list — отображает данные списком;
- view.text — показывает текст;
Показать код
{
"type": "view.text",
"content": {
"type": "data.input",
"path": "text"
}
}
- view.alert — создает цветную рамку для выделения важной информации;
В этом примере текст выделен синим цветом.
Показать код
{
"type": "view.alert",
"theme": "info",
"content": {
"type": "view.text",
"content": {
"type": "data.input",
"path": "comment"
}
}
}
- view.markdown — отображает текст в разметке Markdown;
Показать код
{
"type": "view.markdown",
"content": "**Есть ли в тексте какие-либо нарушения правил публикации?**"
}
Компонент view.markdown
потребляет много ресурсов и может влиять на производительность устройства исполнителя. Чтобы отобразить текст без разметки, используйте компонент view.text.
- field.radio-group — добавляет группу переключателей-радиокнопок для выбора одного ответа;
Показать код
{
"type": "field.radio-group",
"options": [
{
"label": "Нет",
"value": "no"
},
{
"label": "Да",
"value": "yes"
}
],
"data": {
"type": "data.output",
"path": "is_infringements"
},
"validation": {
"type": "condition.required",
"hint": "Выберите вариант ответа."
}
}
- field.checkbox — добавляет чекбокс;
Показать код
{
"type": "field.checkbox-group",
"label": "Какие нарушения?",
"options": [
{
"label": "Реклама или спам",
"value": "advertising"
},
{
"label": "Бессмысленный текст",
"value": "nonsense"
},
{
"label": "Оскорбление",
"value": "insult"
},
{
"label": "Нарушение закона",
"value": "law_violation"
},
{
"label": "Ненормативная лексика",
"value": "profanity"
}
],
"data": {
"type": "data.output",
"path": ""
},
"validation": {
"type": "condition.required",
"hint": "Выберите одно или несколько нарушений."
}
}
- condition.required — проверяет, что поле с данными заполнено;
Показать код
{
"type": "condition.required",
"hint": "Выберите вариант ответа."
}
- helper.if — в зависимости от условия позволяет выполнить либо один блок кода, либо другой;
Показать код
{
"type": "helper.if",
"condition": {
"type": "condition.equals",
"data": {
"type": "data.output",
"path": "is_infringements"
},
"to": "yes"
},
"then": {
"type": "field.checkbox-group",
"label": "Какие нарушения?",
"options": [
{
"label": "Реклама или спам",
"value": "advertising"
},
{
"label": "Бессмысленный текст",
"value": "nonsense"
},
{
"label": "Оскорбление",
"value": "insult"
},
{
"label": "Нарушение закона",
"value": "law_violation"
},
{
"label": "Ненормативная лексика",
"value": "profanity"
}
],
"data": {
"type": "data.output",
"path": ""
},
"validation": {
"type": "condition.required",
"hint": "Выберите одно или несколько нарушений."
}
}
}
- plugin.toloka — настраивает внешний вид задания;
Показать код
{
"type": "plugin.toloka",
"layout": {
"kind": "scroll",
"taskWidth": 500
}
}
- plugin.hotkeys — добавляет горячие клавиши.
Показать код
{
"1": {
"type": "action.set",
"data": {
"type": "data.output",
"path": "is_infringements"
},
"payload": "no"
},
"2": {
"type": "action.set",
"data": {
"type": "data.output",
"path": "is_infringements"
},
"payload": "yes"
},
"w": {
"type": "action.toggle",
"data": {
"type": "data.output",
"path": "advertising"
}
},
"a": {
"type": "action.toggle",
"data": {
"type": "data.output",
"path": "nonsense"
}
},
"s": {
"type": "action.toggle",
"data": {
"type": "data.output",
"path": "insult"
}
},
"d": {
"type": "action.toggle",
"data": {
"type": "data.output",
"path": "law_violation"
}
},
"f": {
"type": "action.toggle",
"data": {
"type": "data.output",
"path": "profanity"
}
},
"type": "plugin.hotkeys"
}
Если вам не подходит этот пресет, посмотрите другие примеры в этом разделе.
Добавить описание
Чтобы добавить описание к заданию, воспользуйтесь компонентом view.text.
Показать код
{
"type": "view.text",
"content": "Решите, соответствует ли текст правилам публикации."
}
Добавить поле для ввода ответа
Чтобы исполнители могли оставить комментарий, добавьте компонент для ввода многострочного текста field.textarea.
Показать код
{
"type": "field.textarea",
"label": "Коментарии",
"placeholder": "Введите текст",
"data": {
"type": "data.output",
"path": "comment"
}
}