選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

使用 API 進行即時分析

焦點模式
使用 API 進行即時分析 - Amazon Comprehend

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

下列範例示範如何使用 Amazon Comprehend API 進行即時分析、使用 AWS CLI,以及 AWS 適用於 .NET、Java 和 Python SDKs。使用範例來了解 Amazon Comprehend 同步操作,以及做為您自己應用程式的建置區塊。

本節中的 .NET 範例使用 AWS SDK for .NET。您可以使用 AWS Toolkit for Visual Studio來使用 .NET 開發 AWS 應用程式。它包含實用的範本和 AWS Explorer,用於部署應用程式和管理服務。如需 的 .NET 開發人員觀點 AWS,請參閱 AWS .NET 開發人員指南

偵測慣用語言

若要判斷文字中使用的慣用語言,請使用 DetectDominantLanguage 操作。若要偵測批次中最多 25 個文件中的主要語言,請使用 BatchDetectDominantLanguage 操作。如需詳細資訊,請參閱即時批次 APIs

使用 AWS Command Line Interface

下列範例示範搭配 使用 DetectDominantLanguage操作 AWS CLI。

此範例格式適用於 Unix、Linux 和 macOS。用於 Windows 時,請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\)。

aws comprehend detect-dominant-language \ --region region \ --text "It is raining today in Seattle."

Amazon Comprehend 會以下列方式回應:

{ "Languages": [ { "LanguageCode": "en", "Score": 0.9793661236763 } ] }

使用 AWS SDK for Java、適用於 Python 的 SDK 或 SDK for .NET

如需如何判斷慣用語言的 SDK 範例,請參閱 DetectDominantLanguage 搭配 AWS SDK 或 CLI 使用

偵測具名實體

若要判斷文件中的具名實體,請使用 DetectEntities 操作。若要偵測批次中最多 25 個文件中的實體,請使用 BatchDetectEntities 操作。如需詳細資訊,請參閱即時批次 APIs

使用 AWS Command Line Interface

下列範例示範如何使用 DetectEntities操作 AWS CLI。您必須指定輸入文字的語言。

此範例格式適用於 Unix、Linux 和 macOS。用於 Windows 時,請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\)。

aws comprehend detect-entities \ --region region \ --language-code "en" \ --text "It is raining today in Seattle."

Amazon Comprehend 會以下列方式回應:

{ "Entities": [ { "Text": "today", "Score": 0.97, "Type": "DATE", "BeginOffset": 14, "EndOffset": 19 }, { "Text": "Seattle", "Score": 0.95, "Type": "LOCATION", "BeginOffset": 23, "EndOffset": 30 } ], "LanguageCode": "en" }

使用 AWS SDK for Java、適用於 Python 的 SDK 或 SDK for .NET

如需如何判斷慣用語言的 SDK 範例,請參閱 DetectEntities 搭配 AWS SDK 或 CLI 使用

偵測金鑰片語

若要判斷文字中使用的金鑰名詞片語,請使用 DetectKeyPhrases 操作。若要偵測批次中最多 25 個文件中的金鑰名詞片語,請使用 BatchDetectKeyPhrases 操作。如需詳細資訊,請參閱即時批次 APIs

使用 AWS Command Line Interface

下列範例示範搭配 使用 DetectKeyPhrases操作 AWS CLI。您必須指定輸入文字的語言。

此範例格式適用於 Unix、Linux 和 macOS。用於 Windows 時,請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\)。

aws comprehend detect-key-phrases \ --region region \ --language-code "en" \ --text "It is raining today in Seattle."

Amazon Comprehend 會以下列方式回應:

{ "LanguageCode": "en", "KeyPhrases": [ { "Text": "today", "Score": 0.89, "BeginOffset": 14, "EndOffset": 19 }, { "Text": "Seattle", "Score": 0.91, "BeginOffset": 23, "EndOffset": 30 } ] }

使用 AWS SDK for Java、適用於 Python 的 SDK 或 SDK for .NET

如需偵測金鑰片語的 SDK 範例,請參閱 DetectKeyPhrases 搭配 AWS SDK 或 CLI 使用

判斷情緒

Amazon Comprehend 提供下列 API 操作來分析情緒:

使用 AWS Command Line Interface

下列範例示範搭配 使用 DetectSentiment操作 AWS CLI。此範例會指定輸入文字的語言。

此範例格式適用於 Unix、Linux 和 macOS。用於 Windows 時,請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\)。

aws comprehend detect-sentiment \ --region region \ --language-code "en" \ --text "It is raining today in Seattle."

Amazon Comprehend 會以下列方式回應:

{ "SentimentScore": { "Mixed": 0.014585512690246105, "Positive": 0.31592071056365967, "Neutral": 0.5985543131828308, "Negative": 0.07093945890665054 }, "Sentiment": "NEUTRAL", "LanguageCode": "en" }

使用 AWS SDK for Java、適用於 Python 的 SDK 或 SDK for .NET

如需決定輸入文字情緒的 SDK 範例,請參閱 DetectSentiment 搭配 AWS SDK 或 CLI 使用

目標情緒的即時分析

Amazon Comprehend 為目標情緒即時分析提供下列 API 操作:

如果您分析的文字不包含任何目標情緒 實體類型,API 會傳回空的實體陣列。

使用 AWS Command Line Interface

下列範例示範搭配 使用 DetectTargetedSentiment操作 AWS CLI。此範例會指定輸入文字的語言。

此範例格式適用於 Unix、Linux 和 macOS。用於 Windows 時,請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\)。

aws comprehend detect-targeted-sentiment \ --region region \ --language-code "en" \ --text "The burger was cooked perfectly but it was cold. The service was OK."

Amazon Comprehend 會以下列方式回應:

{ "Entities": [ { "DescriptiveMentionIndex": [ 0 ], "Mentions": [ { "BeginOffset": 4, "EndOffset": 10, "Score": 1, "GroupScore": 1, "Text": "burger", "Type": "OTHER", "MentionSentiment": { "Sentiment": "POSITIVE", "SentimentScore": { "Mixed": 0.001515, "Negative": 0.000822, "Neutral": 0.000243, "Positive": 0.99742 } } }, { "BeginOffset": 36, "EndOffset": 38, "Score": 0.999843, "GroupScore": 0.999661, "Text": "it", "Type": "OTHER", "MentionSentiment": { "Sentiment": "NEGATIVE", "SentimentScore": { "Mixed": 0, "Negative": 0.999996, "Neutral": 0.000004, "Positive": 0 } } } ] }, { "DescriptiveMentionIndex": [ 0 ], "Mentions": [ { "BeginOffset": 53, "EndOffset": 60, "Score": 1, "GroupScore": 1, "Text": "service", "Type": "ATTRIBUTE", "MentionSentiment": { "Sentiment": "NEUTRAL", "SentimentScore": { "Mixed": 0.000033, "Negative": 0.000089, "Neutral": 0.993325, "Positive": 0.006553 } } } ] } ] }

偵測語法

若要剖析文字以擷取個別字詞,並判斷每個字詞的語音部分,請使用 DetectSyntax 操作。若要剖析批次中最多 25 個文件的語法,請使用 BatchDetectSyntax 操作。如需詳細資訊,請參閱即時批次 APIs

使用 AWS Command Line Interface。

下列範例示範搭配 使用 DetectSyntax操作 AWS CLI。此範例會指定輸入文字的語言。

此範例格式適用於 Unix、Linux 和 macOS。用於 Windows 時,請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\)。

aws comprehend detect-syntax \ --region region \ --language-code "en" \ --text "It is raining today in Seattle."

Amazon Comprehend 會以下列方式回應:

{ "SyntaxTokens": [ { "Text": "It", "EndOffset": 2, "BeginOffset": 0, "PartOfSpeech": { "Tag": "PRON", "Score": 0.8389829397201538 }, "TokenId": 1 }, { "Text": "is", "EndOffset": 5, "BeginOffset": 3, "PartOfSpeech": { "Tag": "AUX", "Score": 0.9189288020133972 }, "TokenId": 2 }, { "Text": "raining", "EndOffset": 13, "BeginOffset": 6, "PartOfSpeech": { "Tag": "VERB", "Score": 0.9977611303329468 }, "TokenId": 3 }, { "Text": "today", "EndOffset": 19, "BeginOffset": 14, "PartOfSpeech": { "Tag": "NOUN", "Score": 0.9993606209754944 }, "TokenId": 4 }, { "Text": "in", "EndOffset": 22, "BeginOffset": 20, "PartOfSpeech": { "Tag": "ADP", "Score": 0.9999061822891235 }, "TokenId": 5 }, { "Text": "Seattle", "EndOffset": 30, "BeginOffset": 23, "PartOfSpeech": { "Tag": "PROPN", "Score": 0.9940338730812073 }, "TokenId": 6 }, { "Text": ".", "EndOffset": 31, "BeginOffset": 30, "PartOfSpeech": { "Tag": "PUNCT", "Score": 0.9999997615814209 }, "TokenId": 7 } ] }

使用 AWS SDK for Java、適用於 Python 的 SDK 或 SDK for .NET

如需偵測輸入文字語法的 SDK 範例,請參閱 DetectSyntax 搭配 AWS SDK 或 CLI 使用

即時批次 APIs

若要傳送最多 25 個文件的批次,您可以使用 Amazon Comprehend 即時批次操作。呼叫批次操作與呼叫請求中每個文件APIs 相同。使用批次 APIs 可以為您的應用程式帶來更好的效能。如需詳細資訊,請參閱多個文件同步處理

使用 進行批次處理 AWS CLI

這些範例示範如何使用 批次 API 操作 AWS Command Line Interface。除了 之外,所有操作都BatchDetectDominantLanguage使用稱為 的下列 JSON 檔案process.json做為輸入。對於該操作,不包含LanguageCode實體。

JSON 檔案 ("$$$$$$$$") 中的第三個文件會在批次處理期間造成錯誤。它包含在其中,以便操作在回應中包含 BatchItemError

{ "LanguageCode": "en", "TextList": [ "I have been living in Seattle for almost 4 years", "It is raining today in Seattle", "$$$$$$$$" ] }

這些範例已針對 Unix、Linux 和 macOS 格式化。用於 Windows 時,請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\)。

使用批次偵測慣用語言 (AWS CLI)

BatchDetectDominantLanguage 操作會決定批次中每個文件的主要語言。如需 Amazon Comprehend 可偵測的語言清單,請參閱 主要語言。下列 AWS CLI 命令會呼叫 BatchDetectDominantLanguage操作。

aws comprehend batch-detect-dominant-language \ --endpoint endpoint \ --region region \ --cli-input-json file://path to input file/process.json

以下是 BatchDetectDominantLanguage操作的回應:

{ "ResultList": [ { "Index": 0, "Languages":[ { "LanguageCode":"en", "Score": 0.99 } ] }, { "Index": 1 "Languages":[ { "LanguageCode":"en", "Score": 0.82 } ] } ], "ErrorList": [ { "Index": 2, "ErrorCode": "InternalServerException", "ErrorMessage": "Unexpected Server Error. Please try again." } ] }

使用批次 (AWS CLI) 偵測實體

使用 BatchDetectEntities 操作來尋找存在於文件批次中的實體。如需實體的詳細資訊,請參閱實體。下列 AWS CLI 命令會呼叫 BatchDetectEntities操作。

aws comprehend batch-detect-entities \ --endpoint endpoint \ --region region \ --cli-input-json file://path to input file/process.json

使用批次 (AWS CLI) 偵測金鑰片語

BatchDetectKeyPhrases 操作會在一批文件中傳回金鑰名詞片語。下列 AWS CLI 命令會呼叫 BatchDetectKeyNounPhrases操作。

aws comprehend batch-detect-key-phrases --endpoint endpoint --region region --cli-input-json file://path to input file/process.json

使用批次偵測情緒 (AWS CLI)

使用 BatchDetectSentiment 操作偵測一批文件的整體情緒。下列 AWS CLI 命令會呼叫 BatchDetectSentiment操作。

aws comprehend batch-detect-sentiment \ --endpoint endpoint \ --region region \ --cli-input-json file://path to input file/process.json

使用 進行批次處理 AWS SDK for .NET

下列範例程式示範如何搭配 使用 BatchDetectEntities 操作 SDK for .NET。伺服器回應包含每個已成功處理之文件的 BatchDetectEntitiesItemResult 物件。如果處理文件時發生錯誤,回應中的錯誤清單中會有一個記錄。此範例會取得每個文件並顯示錯誤並重新傳送。

本節中的 .NET 範例使用 AWS SDK for .NET。您可以使用 AWS Toolkit for Visual Studio來使用 .NET 開發 AWS 應用程式。它包含有用的範本和 AWS Explorer,用於部署應用程式和管理服務。如需 的 .NET 開發人員觀點 AWS,請參閱 AWS .NET 開發人員指南

using System; using System.Collections.Generic; using Amazon.Comprehend; using Amazon.Comprehend.Model; namespace Comprehend { class Program { // Helper method for printing properties static private void PrintEntity(Entity entity) { Console.WriteLine(" Text: {0}, Type: {1}, Score: {2}, BeginOffset: {3} EndOffset: {4}", entity.Text, entity.Type, entity.Score, entity.BeginOffset, entity.EndOffset); } static void Main(string[] args) { AmazonComprehendClient comprehendClient = new AmazonComprehendClient(Amazon.RegionEndpoint.USWest2); List<String> textList = new List<String>() { { "I love Seattle" }, { "Today is Sunday" }, { "Tomorrow is Monday" }, { "I love Seattle" } }; // Call detectEntities API Console.WriteLine("Calling BatchDetectEntities"); BatchDetectEntitiesRequest batchDetectEntitiesRequest = new BatchDetectEntitiesRequest() { TextList = textList, LanguageCode = "en" }; BatchDetectEntitiesResponse batchDetectEntitiesResponse = comprehendClient.BatchDetectEntities(batchDetectEntitiesRequest); foreach (BatchDetectEntitiesItemResult item in batchDetectEntitiesResponse.ResultList) { Console.WriteLine("Entities in {0}:", textList[item.Index]); foreach (Entity entity in item.Entities) PrintEntity(entity); } // check if we need to retry failed requests if (batchDetectEntitiesResponse.ErrorList.Count != 0) { Console.WriteLine("Retrying Failed Requests"); List<String> textToRetry = new List<String>(); foreach(BatchItemError errorItem in batchDetectEntitiesResponse.ErrorList) textToRetry.Add(textList[errorItem.Index]); batchDetectEntitiesRequest = new BatchDetectEntitiesRequest() { TextList = textToRetry, LanguageCode = "en" }; batchDetectEntitiesResponse = comprehendClient.BatchDetectEntities(batchDetectEntitiesRequest); foreach(BatchDetectEntitiesItemResult item in batchDetectEntitiesResponse.ResultList) { Console.WriteLine("Entities in {0}:", textList[item.Index]); foreach (Entity entity in item.Entities) PrintEntity(entity); } } Console.WriteLine("End of DetectEntities"); } } }
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。