Sentiment - Sentiment

API 會傳回輸入文字的詳細情感分析。 分析會以多層級的資料細微性進行,從檔層級開始,向下 (目標和評量) 。

POST {Endpoint}/text/analytics/v3.1-preview.4/sentiment
POST {Endpoint}/text/analytics/v3.1-preview.4/sentiment?model-version={model-version}&showStats={showStats}&opinionMining={opinionMining}&stringIndexType={stringIndexType}

URI 參數

Name In Required Type Description
Endpoint
path True
  • string

(通訊協定和主機名稱的支援認知服務端點,例如: https://westus.api.cognitive.microsoft.com) 。

model-version
query
  • string

(選擇性) 此值表示將用於計分的模型。 如果未指定模型版本,API 應該預設為最新的非預覽版本。

opinionMining
query
  • boolean

(選擇性) 如果設定為 true,回應將不只會包含情感預測,也會意見反應 (以外觀為基礎的情感分析) 結果。

showStats
query
  • boolean

(選擇性) 如果設定為 true,回應將會包含要求和檔層級的統計資料。

stringIndexType
query

(選擇性) 指定用來解讀字串位移的方法。 根據 Unicode v1.1,預設為文字元素 (Graphemes) 。 如需其他資訊,請參閱 https://aka.ms/text-analytics-offsets

要求標頭

Media Types: "application/json", "text/json"

Name Required Type Description
Ocp-Apim-Subscription-Key True
  • string

要求本文

Media Types: "application/json", "text/json"

Name Required Type Description
documents True

要在這個批次中處理的一組檔。

回應

Name Type Description
200 OK

成功的呼叫會導致檔情感預測,以及每個情感類別的情感分數 (正面、負面和中性)

Media Types: "application/json", "text/json"

400 Bad Request

不正確的要求。

Media Types: "application/json", "text/json"

500 Internal Server Error

內部錯誤回應

Media Types: "application/json", "text/json"

安全性

Ocp-Apim-Subscription-Key

Type: apiKey
In: header

範例

Successful Sentiment request

Sample Request

POST {Endpoint}/text/analytics/v3.1-preview.4/sentiment
Ocp-Apim-Subscription-Key: {API key}
{
  "documents": [
    {
      "id": "1",
      "language": "en",
      "text": "Great atmosphere. Close to plenty of restaurants, hotels, and transit! Staff are friendly and helpful."
    }
  ]
}

Sample Response

{
  "documents": [
    {
      "confidenceScores": {
        "negative": 0,
        "neutral": 0,
        "positive": 1
      },
      "id": "1",
      "sentences": [
        {
          "targets": [
            {
              "confidenceScores": {
                "negative": 0,
                "positive": 1
              },
              "length": 10,
              "offset": 6,
              "relations": [
                {
                  "ref": "#/documents/0/sentences/0/assessments/0",
                  "relationType": "assessment"
                }
              ],
              "sentiment": "positive",
              "text": "atmosphere"
            }
          ],
          "confidenceScores": {
            "negative": 0,
            "neutral": 0,
            "positive": 1
          },
          "length": 17,
          "offset": 0,
          "assessments": [
            {
              "confidenceScores": {
                "negative": 0,
                "positive": 1
              },
              "isNegated": false,
              "length": 5,
              "offset": 0,
              "sentiment": "positive",
              "text": "great"
            }
          ],
          "sentiment": "positive",
          "text": "Great atmosphere."
        },
        {
          "targets": [
            {
              "confidenceScores": {
                "negative": 0.01,
                "positive": 0.99
              },
              "length": 11,
              "offset": 37,
              "relations": [
                {
                  "ref": "#/documents/0/sentences/1/assessments/0",
                  "relationType": "assessment"
                }
              ],
              "sentiment": "positive",
              "text": "restaurants"
            },
            {
              "confidenceScores": {
                "negative": 0.01,
                "positive": 0.99
              },
              "length": 6,
              "offset": 50,
              "relations": [
                {
                  "ref": "#/documents/0/sentences/1/assessments/0",
                  "relationType": "assessment"
                }
              ],
              "sentiment": "positive",
              "text": "hotels"
            }
          ],
          "confidenceScores": {
            "negative": 0.01,
            "neutral": 0.86,
            "positive": 0.13
          },
          "length": 52,
          "offset": 18,
          "assessments": [
            {
              "confidenceScores": {
                "negative": 0.01,
                "positive": 0.99
              },
              "isNegated": false,
              "length": 15,
              "offset": 18,
              "sentiment": "positive",
              "text": "Close to plenty"
            }
          ],
          "sentiment": "neutral",
          "text": "Close to plenty of restaurants, hotels, and transit!"
        }
      ],
      "sentiment": "positive",
      "warnings": []
    }
  ],
  "errors": [],
  "modelVersion": "2020-04-01"
}
{
  "error": {
    "code": "InvalidRequest",
    "message": "Invalid Request.",
    "innererror": {
      "code": "MissingInputRecords",
      "message": "Missing input records."
    }
  }
}
{
  "error": {
    "code": "InternalServerError",
    "message": "Internal Server Error"
  }
}

定義

DocumentError
DocumentSentiment
DocumentSentimentValue

檔的預測情感 (負、中性、正面或混合) 。

DocumentStatistics

如果在要求中指定 showStats = true,則此欄位會包含檔承載的相關資訊。

ErrorCodeValue

錯誤碼。

ErrorResponse
InnerError
InnerErrorCodeValue

錯誤碼。

MultiLanguageBatchInput

包含一組要由服務分析的輸入檔。

MultiLanguageInput

包含要由服務分析的輸入檔。

RequestStatistics

如果在要求中指定了 showStats = true,則此欄位會包含要求承載的相關資訊。

SentenceAssessment
SentenceSentiment
SentenceSentimentValue

句子的預測情感。

SentenceTarget
SentimentConfidenceScorePerLabel

代表所有情感類別間的信賴分數(介於0和1之間):正面、中性、負面。

SentimentResponse
StringIndexType
TargetConfidenceScoreLabel

代表所有情感類別的信賴分數:正面、中性、負。

TargetRelation
TargetRelationType

與目標相關的型別。

TextAnalyticsError
TextAnalyticsWarning
TokenSentimentValue

句子中的目標情感。

WarningCodeValue

錯誤碼。

DocumentError

Name Type Description
error

檔錯誤。

id
  • string

檔識別碼。

DocumentSentiment

Name Type Description
confidenceScores

檔層級情感每個情感類別的信賴分數,介於0和1之間。

id
  • string

唯一、非空白的檔識別碼。

sentences

句子層級情感分析。

sentiment

檔的預測情感 (負、中性、正面或混合) 。

statistics

如果在要求中指定 showStats = true,則此欄位會包含檔承載的相關資訊。

warnings

處理檔時所發生的警告。

DocumentSentimentValue

檔的預測情感 (負、中性、正面或混合) 。

Name Type Description
mixed
  • string
negative
  • string
neutral
  • string
positive
  • string

DocumentStatistics

如果在要求中指定 showStats = true,則此欄位會包含檔承載的相關資訊。

Name Type Description
charactersCount
  • integer

檔中辨識的文字元素數。

transactionsCount
  • integer

檔的交易數目。

ErrorCodeValue

錯誤碼。

Name Type Description
InternalServerError
  • string
InvalidArgument
  • string
InvalidRequest
  • string
NotFound
  • string
ServiceUnavailable
  • string

ErrorResponse

Name Type Description
error

檔錯誤。

InnerError

Name Type Description
code

錯誤碼。

details
  • object

錯誤詳細資料。

innererror

內部錯誤包含更明確的資訊。

message
  • string

錯誤訊息。

target
  • string

錯誤的目標。

InnerErrorCodeValue

錯誤碼。

Name Type Description
EmptyRequest
  • string
InvalidCountryHint
  • string
InvalidDocument
  • string
InvalidDocumentBatch
  • string
InvalidParameterValue
  • string
InvalidRequestBodyFormat
  • string
MissingInputRecords
  • string
ModelVersionIncorrect
  • string
UnsupportedLanguageCode
  • string

MultiLanguageBatchInput

包含一組要由服務分析的輸入檔。

Name Type Description
documents

要在這個批次中處理的一組檔。

MultiLanguageInput

包含要由服務分析的輸入檔。

Name Type Description
id
  • string

唯一、非空白的檔識別碼。

language
  • string

(選擇性) 這是一種語言的雙字母 ISO 639-1 標記法。 例如,使用 "en" 代表英文;"es" (適用于西班牙文)等等。如果未設定,請使用 "en" (英文)作為預設值。

text
  • string

要處理的輸入文字。

RequestStatistics

如果在要求中指定了 showStats = true,則此欄位會包含要求承載的相關資訊。

Name Type Description
documentsCount
  • integer

要求中提交的檔數目。

erroneousDocumentsCount
  • integer

無效檔的數目。 這包括空白、大小過大的限制或不支援的語言檔。

transactionsCount
  • integer

要求的交易數目。

validDocumentsCount
  • integer

有效檔的數目。 這會排除空白、大小超過限制或不支援的語言檔。

SentenceAssessment

Name Type Description
confidenceScores

評量情感句子中的信賴分數。

isNegated
  • boolean

表示評量是否為否定的指標。

length
  • integer

評量的長度。

offset
  • integer

從句子開頭算起的評量位移。

sentiment

句子中的評定情感。

text
  • string

偵測到評定文字。

SentenceSentiment

Name Type Description
assessments

句子的評量陣列。

confidenceScores

所有類別之句子的情感信賴分數(0到1)。

length
  • integer

句子的長度。

offset
  • integer

檔開頭的句子位移。

sentiment

句子的預測情感。

targets

句子之句子目標的陣列。

text
  • string

句子文字。

SentenceSentimentValue

句子的預測情感。

Name Type Description
negative
  • string
neutral
  • string
positive
  • string

SentenceTarget

Name Type Description
confidenceScores

目標情感句子中目標的信賴分數。

length
  • integer

目標的長度。

offset
  • integer

從句子開頭開始的目標位移。

relations

與目標相關之評量或目標物件的陣列。

sentiment

句子中的目標情感。

text
  • string

偵測到的目標文字。

SentimentConfidenceScorePerLabel

代表所有情感類別間的信賴分數(介於0和1之間):正面、中性、負面。

Name Type Description
negative
  • number
neutral
  • number
positive
  • number

SentimentResponse

Name Type Description
documents

每份檔的情感分析。

errors

依檔識別碼的錯誤。

modelVersion
  • string

此欄位會指出要使用哪一個模型進行計分。

statistics

如果在要求中指定了 showStats = true,則此欄位會包含要求承載的相關資訊。

StringIndexType

Name Type Description
TextElements_v8
  • string

傳回的位移和長度值會對應至 TextElements (Graphemes 和語素簇叢集,) 確認為 Unicode 8.0.0 版標準。 如果您的應用程式是以 .Net Framework 或 .Net Core 撰寫,且您將使用 System.globalization.stringinfo>,請使用此選項。

UnicodeCodePoint
  • string

傳回的位移和長度值會對應至 Unicode 程式碼點。 如果您的應用程式是以支援 Unicode 的語言撰寫,例如 Python,請使用此選項。

Utf16CodeUnit
  • string

傳回的位移和長度值會對應至 UTF-16 程式碼單位。 如果您的應用程式是以支援 Unicode 的語言撰寫,例如 JAVA、JavaScript,請使用此選項。

TargetConfidenceScoreLabel

代表所有情感類別的信賴分數:正面、中性、負。

Name Type Description
negative
  • number
positive
  • number

TargetRelation

Name Type Description
ref
  • string

指出連結化物件的 JSON 指標。

relationType

與目標相關的型別。

TargetRelationType

與目標相關的型別。

Name Type Description
assessment
  • string
target
  • string

TextAnalyticsError

Name Type Description
code

錯誤碼。

details

導致此報告錯誤的特定錯誤詳細資料。

innererror

內部錯誤包含更明確的資訊。

message
  • string

錯誤訊息。

target
  • string

錯誤的目標。

TextAnalyticsWarning

Name Type Description
code

錯誤碼。

message
  • string

警告訊息。

targetRef
  • string

表示目標物件的 JSON 指標參考。

TokenSentimentValue

句子中的目標情感。

Name Type Description
mixed
  • string
negative
  • string
positive
  • string

WarningCodeValue

錯誤碼。

Name Type Description
DocumentTruncated
  • string
LongWordsInDocument
  • string