Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Analyse en temps réel à l'aide de l'API
Les exemples suivants montrent comment utiliser l'API Amazon Comprehend pour une analyse en temps réel, à l'aide des kits de développement logiciel (SDK) et des AWS kits de développement logiciel (SDK) pour .NET, Java et Python. AWS CLI Utilisez les exemples pour en savoir plus sur les opérations synchrones d'Amazon Comprehend et comme éléments de base pour vos propres applications.
Les exemples .NET présentés dans cette section utilisent le kit AWS SDK for .NET. Vous pouvez utiliser le AWS Toolkit for Visual Studiopour développer des AWS applications à l'aide de .NET. Il inclut des modèles utiles et l'AWSexplorateur pour le déploiement d'applications et la gestion des services. Pour connaître le point de vue des développeurs .NETAWS, consultez le AWSguide destiné aux développeurs .NET.
Rubriques
Détecter la langue dominante
Pour déterminer la langue dominante utilisée dans le texte, utilisez l'DetectDominantLanguageopération. Pour détecter la langue dominante dans un maximum de 25 documents par lot, utilisez l'BatchDetectDominantLanguageopération. Pour plus d’informations, consultez API par lots en temps réel.
Rubriques
Utilisation de l AWS Command Line Interface
L'exemple suivant montre comment utiliser l'DetectDominantLanguage
opération avec leAWS CLI.
L'exemple est mis en forme pour Unix, Linux et macOS. Pour Windows, remplacez le caractère de continuation Unix, à savoir la barre oblique inversée (\), à la fin de chaque ligne par un accent circonflexe (^).
aws comprehend detect-dominant-language \ --region
region
\ --text "It is raining today in Seattle."
Amazon Comprehend répond comme suit :
{ "Languages": [ { "LanguageCode": "en", "Score": 0.9793661236763 } ] }
À l'aide du AWS SDK for Java SDK pour Python, ou AWS SDK for .NET
Pour des exemples de SDK expliquant comment déterminer la langue dominante, consultezÀ utiliser DetectDominantLanguage avec un AWS SDK ou CLI.
Détection des entités nommées
Pour déterminer les entités nommées dans un document, utilisez l'DetectEntitiesopération. Pour détecter des entités dans un maximum de 25 documents par lot, utilisez l'BatchDetectEntitiesopération. Pour plus d’informations, consultez API par lots en temps réel.
Rubriques
Utilisation de l AWS Command Line Interface
L'exemple suivant illustre l'utilisation de l'DetectEntities
opération à l'aide duAWS CLI. Vous devez spécifier la langue du texte saisi.
L'exemple est mis en forme pour Unix, Linux et macOS. Pour Windows, remplacez le caractère de continuation Unix, à savoir la barre oblique inversée (\), à la fin de chaque ligne par un accent circonflexe (^).
aws comprehend detect-entities \ --region
region
\ --language-code "en" \ --text "It is raining today in Seattle."
Amazon Comprehend répond comme suit :
{ "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" }
À l'aide du AWS SDK for Java SDK pour Python, ou AWS SDK for .NET
Pour des exemples de SDK expliquant comment déterminer la langue dominante, consultezÀ utiliser DetectEntities avec un AWS SDK ou CLI.
Détecter les phrases clés
Pour déterminer les phrases nominales clés utilisées dans le texte, utilisez l'DetectKeyPhrasesopération. Pour détecter les phrases nominales clés dans un maximum de 25 documents par lot, utilisez cette BatchDetectKeyPhrasesopération. Pour plus d’informations, consultez API par lots en temps réel.
Rubriques
Utilisation de l AWS Command Line Interface
L'exemple suivant montre comment utiliser l'DetectKeyPhrases
opération avec leAWS CLI. Vous devez spécifier la langue du texte saisi.
L'exemple est mis en forme pour Unix, Linux et macOS. Pour Windows, remplacez le caractère de continuation Unix, à savoir la barre oblique inversée (\), à la fin de chaque ligne par un accent circonflexe (^).
aws comprehend detect-key-phrases \ --region
region
\ --language-code "en" \ --text "It is raining today in Seattle."
Amazon Comprehend répond comme suit :
{ "LanguageCode": "en", "KeyPhrases": [ { "Text": "today", "Score": 0.89, "BeginOffset": 14, "EndOffset": 19 }, { "Text": "Seattle", "Score": 0.91, "BeginOffset": 23, "EndOffset": 30 } ] }
À l'aide du AWS SDK for Java SDK pour Python, ou AWS SDK for .NET
Pour des exemples de SDK qui détectent des phrases clés, consultezÀ utiliser DetectKeyPhrases avec un AWS SDK ou CLI.
Déterminer le sentiment
Amazon Comprehend fournit les opérations d'API suivantes pour analyser les sentiments :
DetectSentiment— Détermine le sentiment émotionnel général d'un document.
-
BatchDetectSentiment— Déterminez le sentiment général d'un maximum de 25 documents par lot. Pour de plus amples informations, veuillez consulter la page API par lots en temps réel.
StartSentimentDetectionJob— Démarre une tâche de détection des sentiments asynchrone pour un ensemble de documents.
ListSentimentDetectionJobs— Renvoie la liste des tâches de détection des sentiments que vous avez soumises.
DescribeSentimentDetectionJob— Obtient les propriétés (y compris le statut) associées à la tâche de détection des sentiments spécifiée.
StopSentimentDetectionJob— Arrête la tâche d'évaluation des sentiments en cours spécifiée.
Rubriques
Utilisation de la AWS Command Line Interface
L'exemple suivant montre comment utiliser l'DetectSentiment
opération avec leAWS CLI. Cet exemple indique la langue du texte saisi.
L'exemple est mis en forme pour Unix, Linux et macOS. Pour Windows, remplacez le caractère de continuation Unix, à savoir la barre oblique inversée (\), à la fin de chaque ligne par un accent circonflexe (^).
aws comprehend detect-sentiment \ --region
region
\ --language-code "en" \ --text "It is raining today in Seattle."
Amazon Comprehend répond comme suit :
{
"SentimentScore": {
"Mixed": 0.014585512690246105,
"Positive": 0.31592071056365967,
"Neutral": 0.5985543131828308,
"Negative": 0.07093945890665054
},
"Sentiment": "NEUTRAL",
"LanguageCode": "en"
}
À l'aide du AWS SDK for Java SDK pour Python, ou AWS SDK for .NET
Pour des exemples de SDK qui déterminent le sentiment du texte saisi, voirÀ utiliser DetectSentiment avec un AWS SDK ou CLI.
Analyse en temps réel pour un sentiment ciblé
Amazon Comprehend fournit les opérations d'API suivantes pour une analyse ciblée des sentiments en temps réel :
DetectTargetedSentiment— Analyse le sentiment des entités mentionnées dans un document.
-
BatchDetectTargetedSentiment— Analyse le sentiment ciblé pour un maximum de 25 documents par lot. Pour de plus amples informations, veuillez consulter la page API par lots en temps réel.
Si le texte que vous analysez n'inclut aucun sentiment cibléTypes d'entités, l'API renvoie un tableau d'entités vide.
Utilisation de la AWS Command Line Interface
L'exemple suivant montre comment utiliser l'DetectTargetedSentiment
opération avec leAWS CLI. Cet exemple indique la langue du texte saisi.
L'exemple est mis en forme pour Unix, Linux et macOS. Pour Windows, remplacez le caractère de continuation Unix, à savoir la barre oblique inversée (\), à la fin de chaque ligne par un accent circonflexe (^).
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 répond comme suit :
{
"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
}
}
}
]
}
]
}
Détection de la syntaxe
Pour analyser le texte afin d'extraire les mots individuels et de déterminer les parties du discours pour chaque mot, utilisez l'DetectSyntaxopération. Pour analyser la syntaxe d'un maximum de 25 documents par lot, utilisez l'BatchDetectSyntaxopération. Pour plus d’informations, consultez API par lots en temps réel.
Rubriques
Utilisation du kit AWS Command Line Interface.
L'exemple suivant montre comment utiliser l'DetectSyntax
opération avec leAWS CLI. Cet exemple indique la langue du texte saisi.
L'exemple est mis en forme pour Unix, Linux et macOS. Pour Windows, remplacez le caractère de continuation Unix, à savoir la barre oblique inversée (\), à la fin de chaque ligne par un accent circonflexe (^).
aws comprehend detect-syntax \ --region
region
\ --language-code "en" \ --text "It is raining today in Seattle."
Amazon Comprehend répond comme suit :
{ "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 } ] }
À l'aide du AWS SDK for Java SDK pour Python, ou AWS SDK for .NET
Pour des exemples de SDK qui détectent la syntaxe du texte saisi, consultezÀ utiliser DetectSyntax avec un AWS SDK ou CLI.
API par lots en temps réel
Pour envoyer des lots contenant jusqu'à 25 documents, vous pouvez utiliser les opérations par lots en temps réel d'Amazon Comprehend. L'appel d'une opération par lots est identique à l'appel des API de document unique pour chaque document de la demande. L'utilisation des API par lots peut améliorer les performances de vos applications. Pour plus d’informations, consultez Traitement synchrone de plusieurs documents.
Traitement par lots avec AWS CLI
Ces exemples montrent comment utiliser les opérations d'API par lots à l'aide duAWS Command Line Interface. Toutes les opérations sauf l'BatchDetectDominantLanguage
utilisation du fichier JSON suivant process.json
appelé en entrée. Pour cette opération, l'LanguageCode
entité n'est pas incluse.
Le troisième document du fichier JSON ("$$$$$$$$"
) provoquera une erreur lors du traitement par lots. Il est inclus afin que les opérations incluent un BatchItemErrordans la réponse.
{ "LanguageCode": "en", "TextList": [ "I have been living in Seattle for almost 4 years", "It is raining today in Seattle", "$$$$$$$$" ] }
Les exemples sont formatés pour Unix, Linux et macOS. Pour Windows, remplacez le caractère de continuation Unix, à savoir la barre oblique inversée (\), à la fin de chaque ligne par un accent circonflexe (^).
Rubriques
Détecter la langue dominante à l'aide d'un batch (AWS CLI)
L'BatchDetectDominantLanguageopération détermine la langue dominante de chaque document d'un lot. Pour obtenir la liste des langues qu'Amazon Comprehend peut détecter, consultez. Langue dominante La AWS CLI commande suivante lance l'BatchDetectDominantLanguage
opération.
aws comprehend batch-detect-dominant-language \ --endpoint
endpoint
\ --regionregion
\ --cli-input-json file://path to input file
/process.json
Voici la réponse de l'BatchDetectDominantLanguage
opération :
{ "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." } ] }
Détecter les entités à l'aide d'un lot (AWS CLI)
Utilisez cette BatchDetectEntitiesopération pour rechercher les entités présentes dans un lot de documents. Pour plus d'informations sur les entités, consultez Entités. La AWS CLI commande suivante lance l'BatchDetectEntities
opération.
aws comprehend batch-detect-entities \ --endpoint
endpoint
\ --regionregion
\ --cli-input-json file://path to input file
/process.json
Détecter les phrases clés à l'aide d'un batch (AWS CLI)
L'BatchDetectKeyPhrasesopération renvoie les phrases nominales clés d'un lot de documents. La AWS CLI commande suivante lance l'BatchDetectKeyNounPhrases
opération.
aws comprehend batch-detect-key-phrases --endpoint
endpoint
--regionregion
--cli-input-json file://path to input file
/process.json
Détectez les sentiments à l'aide d'un batch (AWS CLI)
Détectez l'impression générale d'un lot de documents à l'aide de cette BatchDetectSentimentopération. La AWS CLI commande suivante lance l'BatchDetectSentiment
opération.
aws comprehend batch-detect-sentiment \ --endpoint
endpoint
\ --regionregion
\ --cli-input-json file://path to input file
/process.json
Traitement par lots avec AWS SDK for .NET
L'exemple de programme suivant montre comment utiliser l'BatchDetectEntitiesopération avec leAWS SDK for .NET. La réponse du serveur contient un BatchDetectEntitiesItemResultobjet pour chaque document traité avec succès. En cas d'erreur lors du traitement d'un document, un enregistrement figurera dans la liste des erreurs de la réponse. L'exemple récupère chacun des documents contenant une erreur et les renvoie.
L'exemple .NET présenté dans cette section utilise le AWS SDK for .NET. Vous pouvez utiliser le AWS Toolkit for Visual Studiopour développer des AWS applications à l'aide de .NET. Il inclut des modèles utiles et l'AWSexplorateur pour le déploiement d'applications et la gestion des services. Pour connaître le point de vue des développeurs .NETAWS, consultez le AWSguide destiné aux développeurs .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"); } } }