Поделиться через


Когнитивный навык тональности (версия 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
                            }
                        ],
                    }
                ]
            }
        }
    ]
}

Примеры предупреждений

Если текст пустой, создается предупреждение и результаты тональности не возвращаются. Если язык не поддерживается, создается предупреждение и результаты тональности не возвращаются.

См. также