Когнитивный навык тональности (версия 3)
Навык тональности (версия 3) оценивает неструктурированный текст и для каждой записи предоставляет метки тональности (например, "отрицательный", "нейтральный" и "положительный") на основе самой высокой оценки достоверности, найденной службой на уровне предложения и документа. Этот навык использует модели машинного обучения, предоставляемые службой языка 3 в службах ИИ Azure. Он также предоставляет возможности интеллектуального анализа мнений, которые предоставляют более подробную информацию о мнениях, связанных с атрибутами продуктов или услуг в тексте.
Примечание.
Этот навык привязан к службам ИИ Azure и требует оплачиваемого ресурса для транзакций, превышающих 20 документов на индексатор в день. За выполнение встроенных навыков взимается плата за существующие службы ИИ Azure по мере использования.
@odata.type
Microsoft.Skills.Text.V3.SentimentSkill
Ограничения данных
Максимальный размер записи — 5000 знаков, как определено в String.Length
. Если вам нужно разбить данные перед отправкой в навык тональности, можно воспользоваться навыком разделения текста.
Параметры навыков
Параметры зависят от регистра.
имени параметра | Description |
---|---|
defaultLanguageCode |
(Необязательно.) Код языка применяется к документам, в которых не указан язык явным образом. Полный список поддерживаемых языков. |
modelVersion |
(необязательно) Указывает версию модели , используемую при вызове анализа тональности. Если значение не указано, по умолчанию будет использоваться самая последняя версия. Мы рекомендуем не указывать это значение, если это не необходимо. |
includeOpinionMining |
Если задано значение true , включает функцию интеллектуального анализа мнений, которая позволяет включить анализ тональности на основе аспектов в выходные результаты. По умолчанию — false . |
Входные данные навыков
Ввод имени | Description |
---|---|
text |
Анализируемый текст. |
languageCode |
(Дополнительно) Строка, указывающая язык записей. Если этот параметр не задан, используется значение по умолчанию "en". Полный список поддерживаемых языков. |
Выходные данные навыка
Имя вывода | Description |
---|---|
sentiment |
Строковое значение, представляющее метку тональности всего проанализированного текста (положительная, нейтральная или отрицательная). |
confidenceScores |
Сложный тип с тремя значениями типа double: одно для положительной оценки, одно для нейтральной и одно для отрицательной. Диапазон значений — от 0 до 1,00, где 1,00 представляет наибольшую возможную достоверность для данной метки. |
sentences |
Коллекция сложных типов для разбивки тональности текста по предложениям. В ней также возвращаются результаты интеллектуального анализа мнений в виде целевых объектов и оценок, если includeOpinionMining имеет значение true . |
Пример определения
{
"@odata.type": "#Microsoft.Skills.Text.V3.SentimentSkill",
"context": "/document",
"includeOpinionMining": true,
"inputs": [
{
"name": "text",
"source": "/document/content"
},
{
"name": "languageCode",
"source": "/document/languageCode"
}
],
"outputs": [
{
"name": "sentiment",
"targetName": "sentiment"
},
{
"name": "confidenceScores",
"targetName": "confidenceScores"
},
{
"name": "sentences",
"targetName": "sentences"
}
]
}
Пример ввода
{
"values": [
{
"recordId": "1",
"data": {
"text": "I had a terrible time at the hotel. The staff was rude and the food was awful.",
"languageCode": "en"
}
}
]
}
Пример полученных результатов
{
"values": [
{
"recordId": "1",
"data": {
"sentiment": "negative",
"confidenceScores": {
"positive": 0.0,
"neutral": 0.0,
"negative": 1.0
},
"sentences": [
{
"text": "I had a terrible time at the hotel.",
"sentiment": "negative",
"confidenceScores": {
"positive": 0.0,
"neutral": 0.0,
"negative": 1.0
},
"offset": 0,
"length": 35,
"targets": [],
"assessments": [],
},
{
"text": "The staff was rude and the food was awful.",
"sentiment": "negative",
"confidenceScores": {
"positive": 0.0,
"neutral": 0.0,
"negative": 1.0
},
"offset":36,
"length": 42,
"targets": [
{
"text": "staff",
"sentiment": "negative",
"confidenceScores": {
"positive": 0.0,
"neutral": 0.0,
"negative": 1.0
},
"offset": 40,
"length": 5,
"relations": [
{
"relationType": "assessment",
"ref": "#/documents/0/sentences/1/assessments/0",
}
]
},
{
"text": "food",
"sentiment": "negative",
"confidenceScores": {
"positive": 0.0,
"neutral": 0.0,
"negative": 1.0
},
"offset": 63,
"length": 4,
"relations": [
{
"relationType": "assessment",
"ref": "#/documents/0/sentences/1/assessments/1",
}
]
}
],
"assessments": [
{
"text": "rude",
"sentiment": "negative",
"confidenceScores": {
"positive": 0.0,
"neutral": 0.0,
"negative": 1.0
},
"offset": 50,
"length": 4,
"isNegated": false
},
{
"text": "awful",
"sentiment": "negative",
"confidenceScores": {
"positive": 0.0,
"neutral": 0.0,
"negative": 1.0
},
"offset": 72,
"length": 5,
"isNegated": false
}
],
}
]
}
}
]
}
Примеры предупреждений
Если текст пустой, создается предупреждение и результаты тональности не возвращаются. Если язык не поддерживается, создается предупреждение и результаты тональности не возвращаются.