Перейти к содержимому
Последнее обновление

Конфигурация и настройка

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

Структура настроек позволяет вам:

  1. Предоставлять подсказки о содержании обрабатываемого текста для улучшения результатов анализа.
  2. Настраивать выходные данные и выбирать конкретные разделы для отображения.
  3. Определять стандарты тегов в соответствии с используемыми вами стандаратми.

Общие примечания

  • Все настройки выполняются по желанию.
  • Чтобы использовать настройки по умолчанию, передайте пустой объект: {}.
  • Указывайте только те настройки, которые вы хотите изменить.

Подсказки по содержанию

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

Формат

Параметр format определяет формат текста и влияет на логику обработки.

format (string) - Defines the format of the content. This influences how the underlying language models process the content. For example: when Tisane is told it's a review, it might look for sentiment more aggressively. With aliases, Tisane may try segment words and expect specific length. And so on.

Значение по умолчанию: пусто/не задано.

Поддерживаемые значения формата

Поддерживаются следующие значения формата:

  • review - отзывы о продуктах/услугах или люзоры общего характера. Приоритет отдается обнаружению настроений и рекламного спама (нежелательных коммерческих предложений), которые могут содержать запутанные слова.

  • dialogue - для комментариев/постов в диалоге. Он распознает контекстно-зависимые сигналы, такие как оскорбления и другие личные нападки. Например: Комментарий, содержащий слово «снежинка», может быть помечен как личное оскорбление (в отличие от отзыва или псевдонима).

  • shortpost - для постов в микроблогах. Например, твит, который не является ответом на другой твит.

  • longform - для длинных постов или статей.

  • proofread - для постов, прошедших вычитку. В этом формате проверка орфографии автоматически отключается.

  • alias - представляет собой псевдоним в интернет-сообществах или имя пользователя.

  • search - для поисковых запросов; поисковые запросы не обязательно представляют собой полные или грамматически правильные предложения.

Проверка орфографии и работа с текстом

Эти настройки управляют политикой проверки орфографии. Они помогают управлять тем, когда и как применяется проверка орфографии, чтобы свести к минимуму ошибки и ложные срабатывания.

  • disable_spellcheck (логическое значение) — отключает автоматическую проверку орфографии, если установлено значение true . По умолчанию: false (проверка орфографии включена).
  • lowercase_spellcheck_only (логическое значение) — проверка орфографии применяется только к словам, написанным строчными буквами. Это помогает избежать ложных срабатываний при распознавании имен собственных. По умолчанию: false (относится ко всем словам).

Настройки синтаксического анализа (парсинга)

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

  • min_generic_frequency (целое число) — исключает редкие или эзотерические термины на основе частоты. Применяется только к лексическим единицам без областей. Допустимый диапазон: От «0» до «10» (более высокие значения исключают более редкие термины).
  • subscope (логическое значение) — включает синтаксический анализ подобластей для определенных контекстов, таких как хэштеги, URL-адреса, запутанный текст (например,«ятебяненавижу»). По умолчанию: false.
  • lang_detect_segmentation_regex (строка) — пользовательские границы определения языка с использованием регулярных выражений. Например: (([\r\n]|[.!?][ ])) .Это регулярное выражение рассматривает символы новой строки и знаки препинания в конце предложения как границы. Это может быть полезно для текстов, содержащих несколько языков.
  • disable_phrases (логического знаечние) — еслиtrue, синтаксические структуры не отображаются. Используйте только в том случае, если вам необходимо обнаружить простые объекты или вернуться к режиму «мешка слов».
  • disable_commonsense_cues (логическое значение) - если true, синтаксические структуры отображаются, но знание здравого смысла не применяется. Ускоряет обработку, но снижает точность; контекстно-зависимые структуры (большинство abuse , некоторые объекты) не будут обнаружены.

Настройка областей

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

  • domain_factors (массив структур) — этот параметр предоставляет подсказки, специфичные для сеанса, для настройки релевантности различных областей контента. Это помогает усиливать или подавлять определенные типы контента в зависимости от вашего варианта использования.

Формат элемента массива

{ "domain_id": multiplier }

domain_id (string): The identifier for a specific domain of interest.

multiplier (number): A factor that increases or decreases the relevance of the domain.

Пример:

"domain_factors": {"12345": 2.3, "2222": 5.0}

Примеры использования

  1. Чтобы усилить соответствующие обсласти, установите значения больше 1.

Пример:

Акцент на таких темах, как преступность или наркотики:

"domain_factors": {"31058": 5.0, "45220": 5.0, "14112": 5.0, "14509": 3.0, "28309": 5.0, "43220": 5.0, "34581": 5.0}.

  1. Чтобы скрыть неуместные области, установите значения меньше 1. Это помогает снизить шум от не связанных между собой тем.

Временной контекст (ЗАРЕЗЕРВИРОВАНО)

Функция временного контекста обеспечивает более точную интерпретацию языка, учитывая, как со временем менялось употребление слов.

  • when (строка даты, формат ГГГГ-ММ-ДД) — позволяет указать дату создания контента. Это помогает модели отфильтровывать анахроничные значения слов, которые не существовали в указанное время.

Например: Слова_troll (тролль)_, mail (почта) и post (пост) имели другие значения до эпохи Интернета. В исторических текстах эта настройка помогает игнорировать современные значения слов, которых в то время не существовало.

Настройка вывода

Следующие параметры позволяют настраивать вывод, указывая релевантные/нерелевантные функции и требуемый уровень детализации.

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

Настройка ответа

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

Следующие настройки определяют, какие аспекты контента будут сообщаться:

  • abuse (логическое значение) — выводит информацию об обнаруженных случаях проблемного контента. По умолчанию: true.
  • sentiment (логическое значение) — выводит фрагменты, связанные с настроениями. По умолчанию: true.
  • document_sentiment (логическое значение) — выводит тональность на уровне документа. Он предоставляет общий анализ настроений для всего текста. По умолчанию: false.
  • entities (логическое значение) — выводит именованные объекты, обнаруженные в тексте. Например: Люди, организации, места. По умолчанию: true.
  • topics (логическое значение) — выводит темы, указанные в контенте. По умолчанию: true.

Примечание: если рассматриваемая структура не обнаружена во входных данных, раздел пропускается.

Определение темы

Функция определения тем позволяет вам определять ключевые темы (предметы, темы) в контенте.

Следующие настройки управляют тем, как извлекаются и представляются темы:

  • topic_stats (логическое значение) — включает статистику охвата по каждой теме, если включено. По умолчанию: false. При установке на true, вывод становится объектом со следующими атрибутами:

    • topic (строка): Название темы.

    • coverage (число с плавающей точкой): Доля предложений во входных данных, относящихся к теме.

  • optimize_topics (логическое значение) — удаляет менее конкретные темы, если они пересекаются с более конкретными, если включено. Например: Когда темой является cryptocurrency, оптимизация удаляет finance. По умолчанию: false .

Низкоуровневая функциональность

Эти настройки обеспечивают глубокое понимание структуры и смысла текста путем разбиения его на лексические блоки, определения и фразовые структуры. Подробные сведения могут быть использованы при сопоставлении определенных критериев, не отраженных в разделах верхнего уровня, таких как abuse или topics . Например, при поиске всех словосочетаний или ссылок на различные типы транспортных средств и т. д.

  • words (логическое значение) — выводит лексические фрагменты (или слова) для каждого предложения. По умолчанию: false

В языках без пробелов (китайский, японский, тайский) результаты токенизации считаются словами.

В языках, использующих сложные слова (немецкий, голландский, норвежский, венгерский), сложные слова делятся на отдельные лексические компоненты.

  • fetch_definitions (логическое значение) — включает словарные определения слов во входном тексте. По умолчанию: false.

Примечание: fetch_definitions рассматривается только тогда, когда words установлено на true .

  • parses (логическое значение) — выводит леса синтаксического анализа, представляющие иерархическую структуру фраз в предложениях. По умолчанию: false.

  • deterministic (логическое значение) — определяет, следует ли выводить только обнаруженный смысл или включать наиболее морфологически возможные интерпретации:

    • Если true (по умолчанию): Выводит только обнаруженное значение.

    • Если false: Выводятся n-лучшие значения.

Объяснимость

Эти настройки управляют включением соответствующих фрагментов текста и пояснений для обнаруженных оскорблений, настроений и объектов. Они помогают прояснить, почему определенные сегменты текста были помечены или извлечены.

  • snippets (логическое значение) — включает фрагменты текста в разделах оскорблений, настроений и объектов. По умолчанию: false

  • explain (логическое значение) — предоставляет обоснования или объяснения для обнаруженных фрагментов оскорблений и настроений, где это возможно. По умолчанию: false.

Стандарты и форматы

Следующие параметры определяют стандарты и форматы, используемые в объекте ответа.

Стандарт характеристик

  • feature_standard (строка) — определяет стандарт вывода характеристик, связанных с грамматикой, стилем и семантикой.

Поддерживаются следующие значения формата:

Примечание: Наибольшее количество обозначений функций предлагают собственные коды Tisane (и их описания), за которыми следуют аббревиатуры толкования, потом идут универсальные зависимости, а затем теги Penn treebank.

Стандарт тем

  • topic_standard (строка) - определяет стандарт, используемый для вывода тем в объекте ответа..

Поддерживаются следующие значения формата:

  • iptc_code - rод таксономии темы IPTC

  • iptc_description - описание таксономии тем IPTC (по умолчанию)

  • iab_code - код таксономии темы IAB

  • iab_description - описание таксономии тем IAB

  • native - описание области Tisane (взято из описания семьи)

Тип анализа настроений

  • sentiment_analysis_type (строка) - определяет используемую стратегию анализа настроений.

Поддерживаются следующие значения формата:

  • products_and_services - наиболее распространенный тип анализа настроений: товары и услуги.
  • entity – анализ настроений с использованием объектов в качестве целей.

Контекст и долговременная память

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

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

Модуль долговременной памяти позволяет устранить эти пробелы.

Когда одного текста недостаточно

Зачастую для выполнения задачи НЛП требуется нечто большее, чем просто текстовый ввод:

  • Злоупотребление: Термин, относящийся к этнической или религиозной группе, сам по себе может не быть оскорбительным, но когда он сочетается с уничижительным образом (например, обезьяна, свинья), намерение оскорбить становится очевидным.
  • Гендерная неоднозначность при переводе: В таких языках, как английский, пол человека указывается не всегда. При переводе на языки, требующие этого (например: русский или французский), необходим дополнительный контекст.
  • Мошенничество: Мошенники могут извлекать данные по частям из нескольких сообщений. В отрыве от предыдущих сообщений, без ссылок на них, трудно или невозможно определить момент совершения преступления.

Модуль долговременной памяти Tisane решает эти проблемы. Он состоит из трех компонентов (все необязательные):

  • Переназначения — переназначение значений, атрибутов и гиперонимов для индивидуальной интерпретации.
  • Флаги — для предоставления нетекстового контекста.
  • Антецеденты — для точного отслеживания местоимений и ссылок.

Это обеспечивает более точное понимание языка. Модуль помогает обнаружить скрытые злоупотребления, мошенничество и контекстные нюансы.

Что такое гипероним?

Гипероним — это слово, которое представляет собой широкую категорию, в которую попадают более конкретные слова (называемые гипонимами). Например, цвет является гипернимом розовый; * транспортное средство* является гипернимом грузовик. В компьютерной лингвистике и обработке естественного языка (NLP) гипернимы помогают иерархически классифицировать слова, что может быть полезно для фильтрации или уточнения анализа контента.

Перезначение

Переназначения изменяют способ анализа текста, корректируя атрибуты и условия в зависимости от контекста.

Примеры:

  • Если слово является глаголом в 1-м или 2-м лице, укажите определенный род. Это позволит получать более точные переводы на язык, где склоняемые формы могут различаться для разных родов.

  • Перезапись первоначального значения группы слов (включая все флективные формы). Это позволяет обнаруживать кодовые слова и секретный язык.

  • Добавление функций или гиперонимов. Например, мы можем захотеть отметить определенную категорию артефактов как item_of_interest, что приведет к извлечению этих артефактов как объекта.

Как работают переназначения

Переназначения определены в разделе assign раздел как массив структур с двумя основными компонентами: условия (if) и атрибуты (then).

  • if - условие, которое должно совпадать, основано на комбинации:

    • regex - регулярное выражение (синтаксис RE2)
    • family - семейный идентификатор
    • features - список значений характеристик. Например: [{"index":1, "value":"NOUN"}].
    • hypernym — идентификатор семьи гиперонима
  • then - атрибуты, назначаемые при соблюдении всех требований в условии:

    • family - идентификатор семьи
    • features - список значений характеристик. Например: [{"index":5, "value":"F"}].
    • hypernym — идентификатор семьи гиперонима

Примеры:

  1. Предположим, что говорит женщина (если это 1-е лицо, укажите женский род):
 `"assign":[{"if":{"features":[{"index":9,"value":"1"}]},"then":{"features":[{"index":5,"value":"F"}]}}]`
  1. Предположим, что любое упоминание контейнера относится к незаконному предмету:
   `"assign":[{"if":{"family":26888},"then":{"hypernym":123078}}]`
  1. Отмечать нападки на конкретно указанных третьих лиц как личные нападки (переопределив имена как «участников обсуждения»):
  `"assign":[{"if":{"features":[{"index":14,"value":"NA"},{"index":22,"value":"PERS"}]},"then":{"features":[{"index":33,"value":"DIPA"}],"hypernym":123887}}]`

Флаги

Флаги служат контекстными подсказками, которые либо предоставляют информацию, выходящую за рамки текущего текстового ввода, либо изменяют способ выполнения анализа определенным образом. Каждый флаг представлен в виде строки. (Некоторые из этих флагов могут переключаться автоматически при вводе определенного текста.)

В дополнение к флагам, возвращенным в раздел memory, следующие флаги можно установить вручную:

ФлагЗначение
agents_of_bad_thingsПлохой актер, о котором уже упоминалось ранее.
aggressive_crime_scanВ случае неопределенности предполагается наличие преступного умысла.
bad_animalКонтекст включает животное, символизирующее плохие качества. Например: свинья, обезьяна, змея.
bulk_messageВыполняется массовая рассылка сообщения.
death_relatedКонтекст подразумевает смерть.
game_violence_okВ игровых чатах разрешать призывы к насилию.
make_moneyКонтекст — это зарабатывание денег.
my_departureАвтор упомянул об отъезде.
sexually_conservativeЛюбой обмен фотографиями или двусмысленное взаимодействие считается сексуальным.
trusted_partyАвтор утверждает, что является доверенным лицом. Например: Супруг, родственник.
wasteТема посвящена отходам (органическим/неорганическим).
won_prizeУпоминания или намеки на выигрыш денег/призов.
work_from_homeУпоминается работа на дому.
organizationБыла упомянута организация.
roleБыла упомянута должность или роль.

Антецеденты

Антецеденты помогают в разрешении тождества по референту.

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

Структура

Каждый антецедент содержит:

  • family - идентификатор семьи антецедента
  • features - список значений характеристик. Например: {"index":36, "value":"WFH"}.

Рейтинг отношения сигнал/шум

При анализе сообщений, в которых комментируется какая-либо проблема или статья, полезно отдавать приоритет тем, которые наиболее актуальны и основаны на разуме, а не на эмоциях. Ранжирование по принципу «сигнал-шум» помогает достичь этого, фильтруя контент по релевантности и логическому качеству.

Как это работает

Чтобы рассчитать рейтинг отношения сигнал/шум:

  1. Проанализируйте заголовок статьи, используя keyword_features и (по желанию) stop_hypernyms в настройках. Извлеките атрибут relevant.
  2. Ранжируйте посты по релевантности, используя атрибут relevant.

Шаг 1: Определите соответствующие концепции

(This step can be omitted, if we already know the relevant concepts.)

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

На этот анализ влияют два ключевых параметра:

  • keyword_features (объект строк со строковыми значениями) — определяет характеристики, которые следует искать в слове. Если совпадение найдено, соответствующий семейный идентификатор добавляется в набор потенциально релевантных семейных идентификаторов.
  • stop_hypernyms (массив целых чисел) — отфильтровывает нежелательные обобщения, такие как абстрактные термины или эмоции. Если в этом параметре указан гиперним для потенциально соответствующего семейного идентификатора, он не будет рассматриваться. Например: В заголовке Страх и ненависть в Лас-Вегасе мы можем захотеть оставить только Лас-Вегас. Эта настройка необязательная.

Если используется keyword_features, ответ будет включать атрибут relevant, содержащий идентифицированные идентификаторы семьи.

Мы рекомендуем вам включить массив relevant в настройках при выполнении шага 2 («Ранжирование сообщений по релевантности»). Это помогает расставить приоритеты в публикациях, в которых упоминаются концепции, связанные с этими идентификаторами семей, гарантируя, что процесс ранжирования будет сосредоточен на наиболее релевантном контенте.

Шаг 2: Оцените релевантность постов

Используйте атрибут relevant из шага 1 для оценки постов или комментариев.

Рейтинг повышается, когда:

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

Рейтинг снижается в штрафном порядке, если:

  • Негативность не привязана к конкретным аспектам.
  • Обнаружен проблемный контент (если только не ищется конкретный криминальный контент).

Примечание: Параметр abuse_not_noise (при установке на true) предотвращает снижение рейтинга при обнаружении проблемного контента.