

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Uso de la API de Amazon Comprehend
<a name="using-the-api"></a>

La API de Amazon Comprehend admite operaciones para realizar análisis (sincrónicos) en tiempo real y operaciones para iniciar y gestionar trabajos de análisis asíncronos.

Puede usar los operadores de la API Amazon Comprehend directamente, o puede usar la CLI o uno de los. SDKs Los ejemplos de este capítulo utilizan la CLI, el SDK de Python y el SDK de Java.

Para ejecutar los ejemplos AWS CLI y Python, debe instalar el AWS CLI. Para obtener más información, consulte [Configure el AWS Command Line Interface ()AWS CLI](setting-up.md#setup-awscli).

Para ejecutar los ejemplos de Java, debe instalar AWS SDK para Java. Para obtener instrucciones sobre cómo instalar el SDK para Java, consulte [Configurar el AWS SDK para Java](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/setup.html).

**Topics**
+ [Uso de Amazon Comprehend con un SDK AWS](sdk-general-information-section.md)
+ [Análisis en tiempo real mediante la API](using-api-sync.md)
+ [Trabajos de análisis asíncrono mediante la API](api-async.md)

# Uso de Amazon Comprehend con un SDK AWS
<a name="sdk-general-information-section"></a>

AWS Los kits de desarrollo de software (SDKs) están disponibles para muchos lenguajes de programación populares. Cada SDK proporciona una API, ejemplos de código y documentación que facilitan a los desarrolladores la creación de aplicaciones en su lenguaje preferido.


| Documentación de SDK | Ejemplos de código | 
| --- | --- | 
| [AWS SDK para C\$1\$1](https://docs.aws.amazon.com/sdk-for-cpp) | [AWS SDK para C\$1\$1 ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/cpp) | 
| [AWS CLI](https://docs.aws.amazon.com/cli) | [AWS CLI ejemplos de código](https://docs.aws.amazon.com/code-library/latest/ug/cli_2_code_examples.html) | 
| [AWS SDK para Go](https://docs.aws.amazon.com/sdk-for-go) | [AWS SDK para Go ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/gov2) | 
| [AWS SDK para Java](https://docs.aws.amazon.com/sdk-for-java) | [AWS SDK para Java ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2) | 
| [AWS SDK para JavaScript](https://docs.aws.amazon.com/sdk-for-javascript) | [AWS SDK para JavaScript ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javascriptv3) | 
| [AWS SDK para Kotlin](https://docs.aws.amazon.com/sdk-for-kotlin) | [AWS SDK para Kotlin ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/kotlin) | 
| [AWS SDK para .NET](https://docs.aws.amazon.com/sdk-for-net) | [AWS SDK para .NET ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/dotnetv3) | 
| [AWS SDK para PHP](https://docs.aws.amazon.com/sdk-for-php) | [AWS SDK para PHP ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/php) | 
| [Herramientas de AWS para PowerShell](https://docs.aws.amazon.com/powershell) | [Herramientas de AWS para PowerShell ejemplos de código](https://docs.aws.amazon.com/code-library/latest/ug/powershell_5_code_examples.html) | 
| [AWS SDK para Python (Boto3)](https://docs.aws.amazon.com/pythonsdk) | [AWS SDK para Python (Boto3) ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/python) | 
| [AWS SDK para Ruby](https://docs.aws.amazon.com/sdk-for-ruby) | [AWS SDK para Ruby ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/ruby) | 
| [AWS SDK para Rust](https://docs.aws.amazon.com/sdk-for-rust) | [AWS SDK para Rust ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/rustv1) | 
| [AWS SDK para SAP ABAP](https://docs.aws.amazon.com/sdk-for-sapabap) | [AWS SDK para SAP ABAP ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/sap-abap) | 
| [AWS SDK para Swift](https://docs.aws.amazon.com/sdk-for-swift) | [AWS SDK para Swift ejemplos de código](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/swift) | 

**Ejemplo de disponibilidad**  
¿No encuentra lo que necesita? Solicite un ejemplo de código a través del enlace de **Enviar comentarios** que se encuentra al final de esta página.

# Análisis en tiempo real mediante la API
<a name="using-api-sync"></a>

Los siguientes ejemplos muestran cómo utilizar la API Amazon Comprehend para el análisis en tiempo real mediante AWS CLI, y para.NET, Java y Python. AWS SDKs Utilice los ejemplos para conocer las operaciones sincrónicas de Amazon Comprehend y como bloques de construcción para sus propias aplicaciones.

En los ejemplos de .NET de esta sección, se utiliza [AWS SDK para .NET](https://docs.aws.amazon.com/sdk-for-net/latest/developer-guide/welcome.html). Puede utilizarla [AWS Toolkit for Visual Studio](https://docs.aws.amazon.com/AWSToolkitVS/latest/UserGuide/welcome.html)para desarrollar AWS aplicaciones mediante .NET. Incluye plantillas útiles y el AWS explorador para implementar aplicaciones y administrar servicios. Para obtener una perspectiva de desarrollador de.NET AWS, consulte la [AWS guía para desarrolladores de.NET](https://docs.aws.amazon.com/sdk-for-net/latest/developer-guide/welcome.html). 

**Topics**
+ [Detección del idioma dominante](#get-started-api-dominant-language)
+ [Detección de entidades con nombre](#get-started-api-entities)
+ [Detección de frases clave](#get-started-api-key-phrases)
+ [Determinación de la opinión](#get-started-api-sentiment)
+ [Análisis en tiempo real de la opinión específica](#get-started-api-targeted-sentiment)
+ [Detección de la sintaxis](#get-started-api-syntax)
+ [Lote en tiempo real APIs](#get-started-batch)

## Detección del idioma dominante
<a name="get-started-api-dominant-language"></a>

Para determinar el idioma dominante utilizado en el texto, utilice la [DetectDominantLanguage](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DetectDominantLanguage.html)operación. Para detectar el idioma dominante en un máximo de 25 documentos de un lote, utilice la [BatchDetectDominantLanguage](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectDominantLanguage.html)operación. Para obtener más información, consulte [Lote en tiempo real APIs](#get-started-batch).

**Topics**
+ [Utilización del AWS Command Line Interface](#get-started-api-dominant-language-cli)
+ [Mediante AWS SDK para Java el SDK para Python o SDK para .NET](#get-started-api-dominant-language-java)

### Utilización del AWS Command Line Interface
<a name="get-started-api-dominant-language-cli"></a>

El siguiente ejemplo muestra el uso de la operación `DetectDominantLanguage` en la AWS CLI.

El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

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

Amazon Comprehend responde con lo siguiente:

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

### Mediante AWS SDK para Java el SDK para Python o SDK para .NET
<a name="get-started-api-dominant-language-java"></a>

Para ver ejemplos del SDK sobre cómo determinar el idioma dominante, consulte [Úselo `DetectDominantLanguage` con un AWS SDK o CLI](example_comprehend_DetectDominantLanguage_section.md).

## Detección de entidades con nombre
<a name="get-started-api-entities"></a>

Para determinar las entidades nombradas en un documento, utilice la [DetectEntities](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DetectEntities.html)operación. Para detectar entidades en un máximo de 25 documentos de un lote, utilice la [BatchDetectEntities](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectEntities.html)operación. Para obtener más información, consulte [Lote en tiempo real APIs](#get-started-batch).

**Topics**
+ [Usando el AWS Command Line Interface](#get-started-api-entities-cli)
+ [Mediante AWS SDK para Java el SDK para Python o SDK para .NET](#get-started-api-entities-java)

### Usando el AWS Command Line Interface
<a name="get-started-api-entities-cli"></a>

El siguiente ejemplo muestra el uso de la operación `DetectEntities` mediante la AWS CLI. Debe especificar el idioma del archivo de entrada. 

El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

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

Amazon Comprehend responde con lo siguiente:

```
{
    "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"
}
```

### Mediante AWS SDK para Java el SDK para Python o SDK para .NET
<a name="get-started-api-entities-java"></a>

Para ver ejemplos del SDK sobre cómo determinar el idioma dominante, consulte [Úselo `DetectEntities` con un AWS SDK o CLI](example_comprehend_DetectEntities_section.md).

## Detección de frases clave
<a name="get-started-api-key-phrases"></a>

Para determinar las frases nominales clave que se utilizan en el texto, utilice la [DetectKeyPhrases](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DetectKeyPhrases.html)operación. Para detectar las frases nominales clave en un máximo de 25 documentos de un lote, utilice la [BatchDetectKeyPhrases](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectKeyPhrases.html)operación. Para obtener más información, consulte [Lote en tiempo real APIs](#get-started-batch).

**Topics**
+ [Usando el AWS Command Line Interface](#get-started-api-key-phrases-cli)
+ [Mediante AWS SDK para Java el SDK para Python o SDK para .NET](#get-started-api-key-phrases-java)

### Usando el AWS Command Line Interface
<a name="get-started-api-key-phrases-cli"></a>

El siguiente ejemplo muestra el uso de la operación `DetectKeyPhrases` en la AWS CLI. Debe especificar el idioma del archivo de entrada.

El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

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

Amazon Comprehend responde con lo siguiente:

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

### Mediante AWS SDK para Java el SDK para Python o SDK para .NET
<a name="get-started-api-key-phrases-java"></a>

Para ver ejemplos de SDK que detectan frases clave, consulte [Úselo `DetectKeyPhrases` con un AWS SDK o CLI](example_comprehend_DetectKeyPhrases_section.md).

## Determinación de la opinión
<a name="get-started-api-sentiment"></a>

Amazon Comprehend ofrece las siguientes operaciones de API para analizar las opiniones:
+ [DetectSentiment](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DetectSentiment.html)— Determina el sentimiento emocional general de un documento.
+  [BatchDetectSentiment](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectSentiment.html)— Determina el sentimiento general en un lote de hasta 25 documentos. Para obtener más información, consulte [Lote en tiempo real APIs](#get-started-batch)
+  [StartSentimentDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartSentimentDetectionJob.html)— Inicia un trabajo de detección asíncrona de opiniones para un conjunto de documentos.
+  [ListSentimentDetectionJobs](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_ListSentimentDetectionJobs.html)— Devuelve la lista de trabajos de detección de opiniones que ha enviado.
+  [DescribeSentimentDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeSentimentDetectionJob.html)— Obtiene las propiedades (incluido el estado) asociadas al trabajo de detección de opiniones especificado.
+  [StopSentimentDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StopSentimentDetectionJob.html)— Detiene el trabajo de opinión en curso especificado.

**Topics**
+ [Utilización del AWS Command Line Interface](#get-started-api-sentiment-cli)
+ [Mediante AWS SDK para Java el SDK para Python o SDK para .NET](#get-started-api-sentiment-java)

### Utilización del AWS Command Line Interface
<a name="get-started-api-sentiment-cli"></a>

El siguiente ejemplo muestra el uso de la operación `DetectSentiment` en la AWS CLI. En este ejemplo se especifica el idioma del texto de entrada.

El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

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

 Amazon Comprehend responde con lo siguiente:

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

### Mediante AWS SDK para Java el SDK para Python o SDK para .NET
<a name="get-started-api-sentiment-java"></a>

Para ver ejemplos del SDK que determinan la opinión del texto introducido, consulte [Úselo `DetectSentiment` con un AWS SDK o CLI](example_comprehend_DetectSentiment_section.md).

## Análisis en tiempo real de la opinión específica
<a name="get-started-api-targeted-sentiment"></a>

Amazon Comprehend proporciona las siguientes operaciones de API para el análisis específico de las opiniones en tiempo real:
+ [DetectTargetedSentiment](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DetectTargetedSentiment.html)— Analiza la opinión de las entidades mencionadas en un documento.
+  [BatchDetectTargetedSentiment](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectTargetedSentiment.html)— Analiza las opiniones específicas de hasta 25 documentos en un lote. Para obtener más información, consulte [Lote en tiempo real APIs](#get-started-batch)

Si el texto que está analizando no incluye ninguna opinión específica [Tipos de entidad](how-targeted-sentiment.md#how-targeted-sentiment-entities), la API devuelve una matriz de entidades vacía.

### Usando el AWS Command Line Interface
<a name="get-started-api-targeted-sentiment-cli"></a>

El siguiente ejemplo muestra el uso de la operación `DetectTargetedSentiment` en la AWS CLI. En este ejemplo se especifica el idioma del texto de entrada.

El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

```
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 responde con lo siguiente:

```
{
"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
            }
          }
        }
      ]
    }
  ]
}
```

## Detección de la sintaxis
<a name="get-started-api-syntax"></a>

Para analizar el texto a fin de extraer las palabras individuales y determinar las partes del discurso de cada palabra, utilice la [DetectSyntax](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DetectSyntax.html)operación. Para analizar la sintaxis de hasta 25 documentos en un lote, utilice la [BatchDetectSyntax](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectSyntax.html)operación. Para obtener más información, consulte [Lote en tiempo real APIs](#get-started-batch).

**Topics**
+ [Usando el AWS Command Line Interface.](#get-started-api-syntax-cli)
+ [Mediante AWS SDK para Java el SDK para Python o SDK para .NET](#get-started-api-syntax-java)

### Usando el AWS Command Line Interface.
<a name="get-started-api-syntax-cli"></a>

El siguiente ejemplo muestra el uso de la operación `DetectSyntax` en la AWS CLI. En este ejemplo se especifica el idioma del texto de entrada. 

El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^). 

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

Amazon Comprehend responde con lo siguiente:

```
{
    "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
        }
    ]
}
```

### Mediante AWS SDK para Java el SDK para Python o SDK para .NET
<a name="get-started-api-syntax-java"></a>

Para ver ejemplos del SDK que detectan la sintaxis del texto introducido, consulte [Úselo `DetectSyntax` con un AWS SDK o CLI](example_comprehend_DetectSyntax_section.md).

## Lote en tiempo real APIs
<a name="get-started-batch"></a>

Para enviar lotes de hasta 25 documentos, puede utilizar las operaciones por lotes en tiempo real de Amazon Comprehend. Llamar a una operación por lotes es igual a llamar al único documento APIs de cada documento de la solicitud. El uso del lote APIs puede mejorar el rendimiento de sus aplicaciones. Para obtener más información, consulte [Procesamiento sincrónico de varios documentos](concepts-processing-modes.md#how-batch).

**Topics**
+ [Procesamiento por lotes con AWS CLI](#batch-cli)
+ [Procesamiento por lotes con AWS SDK para .NET](#batch-csharp)

### Procesamiento por lotes con AWS CLI
<a name="batch-cli"></a>

En estos ejemplos se muestra cómo usar las operaciones de la API por lotes con AWS Command Line Interface. Todas las operaciones, excepto `BatchDetectDominantLanguage` utilizan el siguiente archivo JSON `process.json` denominado como entrada. Para esa operación, la entidad `LanguageCode` no está incluida.

El tercer documento del archivo JSON (`"$$$$$$$$"`) provocará un error durante el procesamiento por lotes. Se incluye para que las operaciones incluyan un [BatchItemError](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchItemError.html)en la respuesta.

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

Los ejemplos están preparados para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

**Topics**
+ [Cómo detectar el idioma dominante mediante un lote (AWS CLI)](#batch-dominant-language)
+ [Cómo detectar entidades mediante un lote (AWS CLI)](#batch-entities)
+ [Cómo detectar frases clave mediante un lote (AWS CLI)](#batch-key-phrase)
+ [Cómo detectar la opinión mediante un lote (AWS CLI)](#batch-sentiment)

#### Cómo detectar el idioma dominante mediante un lote (AWS CLI)
<a name="batch-dominant-language"></a>

La [BatchDetectDominantLanguage](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectDominantLanguage.html)operación determina el idioma dominante de cada documento de un lote. Para obtener una lista de los idiomas que Amazon Comprehend puede detectar, consulte [Idioma predominante](how-languages.md). El siguiente AWS CLI comando llama a la `BatchDetectDominantLanguage` operación.

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

La siguiente es la respuesta de la operación `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."
      }
    ]
}
```

#### Cómo detectar entidades mediante un lote (AWS CLI)
<a name="batch-entities"></a>

Utilice la [BatchDetectEntities](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectEntities.html)operación para buscar las entidades presentes en un lote de documentos. Para obtener más información sobre entidades, consulte [Entidades](how-entities.md). El siguiente comando AWS CLI llama a la operación `BatchDetectEntities`.

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

#### Cómo detectar frases clave mediante un lote (AWS CLI)
<a name="batch-key-phrase"></a>

La [BatchDetectKeyPhrases](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectKeyPhrases.html)operación devuelve las frases nominales clave de un lote de documentos. El siguiente AWS CLI comando llama a la `BatchDetectKeyNounPhrases` operación.

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

#### Cómo detectar la opinión mediante un lote (AWS CLI)
<a name="batch-sentiment"></a>

Detecte el sentimiento general de un lote de documentos mediante la [BatchDetectSentiment](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectSentiment.html)operación. El siguiente AWS CLI comando llama a la `BatchDetectSentiment` operación.

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

### Procesamiento por lotes con AWS SDK para .NET
<a name="batch-csharp"></a>

El siguiente programa de ejemplo muestra cómo utilizar la [BatchDetectEntities](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectEntities.html)operación con el SDK para .NET. La respuesta del servidor contiene un [BatchDetectEntitiesItemResult](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_BatchDetectEntitiesItemResult.html)objeto para cada documento que se haya procesado correctamente. Si se produce un error al procesar un documento, habrá un registro en la lista de errores de la respuesta. El ejemplo obtiene cada uno de los documentos con un error y los vuelve a enviar.

En los ejemplos de .NET de esta sección se utiliza [AWS SDK para .NET](https://docs.aws.amazon.com/sdk-for-net/latest/developer-guide/welcome.html). Puede utilizar el [AWS Toolkit for Visual Studio](https://docs.aws.amazon.com/AWSToolkitVS/latest/UserGuide/welcome.html)para desarrollar AWS aplicaciones mediante .NET. Incluye plantillas útiles y el AWS explorador para implementar aplicaciones y administrar servicios. Para obtener una perspectiva de desarrollador de.NET AWS, consulte la [AWS guía para desarrolladores de.NET](https://docs.aws.amazon.com/sdk-for-net/latest/developer-guide/welcome.html). 

```
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");
        }
    }
}
```

# Trabajos de análisis asíncrono mediante la API
<a name="api-async"></a>

En los siguientes ejemplos se utiliza el Amazon Comprehend asincrónico APIs para crear y gestionar trabajos de análisis mediante el. AWS CLI

**Topics**
+ [Análisis asincrónico para información de Amazon Comprehend](api-async-insights.md)
+ [Análisis asíncrono para opiniones dirigidas](using-api-targeted-sentiment.md)
+ [Análisis asíncrono para la detección de eventos](get-started-api-events.md)
+ [Análisis asíncrono para el modelado de temas](get-started-topics.md)

# Análisis asincrónico para información de Amazon Comprehend
<a name="api-async-insights"></a>

En las siguientes secciones se utiliza la API de Amazon Comprehend para ejecutar operaciones asíncronas con el fin de analizar la información de Amazon Comprehend.

**Topics**
+ [Requisitos previos](#detect-topics-role-auth)
+ [Inicio de un trabajo de análisis](#how-start-job)
+ [Monitoreo de trabajos de análisis](#how-monitor-progress)
+ [Obtención de resultados del análisis](#how-get-results)

## Requisitos previos
<a name="detect-topics-role-auth"></a>

Los documentos deben ser archivos de texto con formato UTF-8. Puede enviar sus documentos en dos formatos. El formato que utilice depende del tipo de documentos que desee analizar, tal como se describe en la tabla siguiente.


| Description (Descripción) | Formato | 
| --- | --- | 
| Cada archivo contiene un documento de entrada. Esto es lo mejor para colecciones de documentos de gran tamaño. | Un documento por archivo | 
|  La entrada comprende uno o más archivos. Cada línea de un archivo se considera un documento. Esta opción es la mejor para documentos cortos, como publicaciones en redes sociales. Cada línea debe terminar con un salto de línea (LF,\$1n), un retorno de carro (CR,\$1 r) o ambos (CRLF,\$1 r\$1n). No se puede usar el separador de líneas UTF-8 (u\$12028) para terminar una línea.  | Un documento por línea | 

Al iniciar un trabajo de análisis, debe especificar la ubicación S3 para los datos de entrada. El URI debe estar en la misma AWS región que el punto final de la API al que está llamando. El URI puede apuntar a un único archivo o puede ser el prefijo de un conjunto de archivos de datos. Para obtener más información, consulta el tipo de datos [InputDataConfig](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_InputDataConfig.html).

Debe conceder a Amazon Comprehend acceso al bucket de Amazon S3 que contiene la colección de documentos y los archivos de salida. Para obtener más información, consulte [Se requieren permisos basados en roles para las operaciones asíncronas](security_iam_id-based-policy-examples.md#auth-role-permissions).

## Inicio de un trabajo de análisis
<a name="how-start-job"></a>

Para enviar un trabajo de análisis, utilice la consola de Amazon Comprehend o la operación de `Start*` correspondiente:
+  [StartDominantLanguageDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartDominantLanguageDetectionJob.html)— Comience a detectar el idioma dominante en cada documento de la colección. Para obtener más información sobre el idioma predominante de un documento, consulte [Idioma predominante](how-languages.md).
+  [StartEntitiesDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartEntitiesDetectionJob.html)— Iniciar un trabajo para detectar entidades en cada documento de la colección. Para obtener más información sobre entidades, consulte [Entidades](how-entities.md).
+  [StartKeyPhrasesDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartKeyPhrasesDetectionJob.html)— Comience a detectar frases clave en cada documento de la colección. Para obtener más información sobre las frases clave, consulte [Frases clave](how-key-phrases.md).
+  [StartPiiEntitiesDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartPiiEntitiesDetectionJob.html)— Comience a detectar la información de identificación personal (PII) en cada documento de la colección. Para obtener más información acerca de la PII, consulte [Detección de entidades de PII](how-key-phrases.md).
+  [StartSentimentDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartSentimentDetectionJob.html)— Comience a detectar el sentimiento en cada documento de la colección. Para obtener más información sobre las opiniones, consulte [Opiniones](how-sentiment.md).

## Monitoreo de trabajos de análisis
<a name="how-monitor-progress"></a>

La operación `Start*` devuelve un identificador que puede utilizar para supervisar el progreso del trabajo. 

Para supervisar el progreso usando la API, utilice una de estas dos operaciones, en función de si desea supervisar el progreso de un trabajo individual o de varios de ellos. 

Para supervisar el progreso de un trabajo de análisis individual, utilice las operaciones de `Describe*`. Debe proporcionar el identificador del trabajo que le ha reportado la operación de `Start*`. La respuesta de la operación de `Describe*` contiene el campo `JobStatus` con el estado del trabajo.

Para supervisar el progreso de varios trabajos de análisis, utilice las operaciones de `List*`. Las operaciones de `List*` reportan una lista de los trabajos que ha enviado a Amazon Comprehend. La respuesta incluye un campo `JobStatus` para cada trabajo en el que se indica el estado de este.

Si el campo de estado está configurado en `COMPLETED` o `FAILED`, el procesamiento del trabajo se ha completado.

Para obtener el estado de un trabajo individual, utilice la operación de `Describe*` para el análisis que esté realizando.
+  [DescribeDominantLanguageDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeDominantLanguageDetectionJob.html)
+  [DescribeEntitiesDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeEntitiesDetectionJob.html)
+  [DescribeKeyPhrasesDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeKeyPhrasesDetectionJob.html)
+  [DescribePiiEntitiesDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribePiiEntitiesDetectionJob.html)
+  [DescribeSentimentDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeSentimentDetectionJob.html)

Para obtener el estado de varios trabajos, utilice la operación de `List*` para el análisis que esté realizando.
+  [ListDominantLanguageDetectionJobs](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_ListDominantLanguageDetectionJobs.html)
+  [ListEntitiesDetectionJobs](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_ListEntitiesDetectionJobs.html)
+  [ListKeyPhrasesDetectionJobs](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_ListKeyPhrasesDetectionJobs.html)
+  [ListPiiEntitiesDetectionJobs](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_ListPiiEntitiesDetectionJobs.html)
+  [ListSentimentDetectionJobs](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_ListSentimentDetectionJobs.html)

Para restringir los resultados a trabajos que satisfagan determinados criterios, utilice el parámetro `Filter` de la operación `List*`. Puede filtrar los resultados por el nombre del trabajo, el estado del trabajo o la fecha y hora de envío del trabajo. Para obtener más información, consulte el parámetro `Filter` de cada una de las operaciones de `List*` en la referencia de la API de Amazon Comprehend.

## Obtención de resultados del análisis
<a name="how-get-results"></a>

Una vez finalizada un trabajo de análisis, utilice una operación de `Describe*` para obtener la ubicación de los resultados. Si el estado del trabajo es `COMPLETED`, la respuesta incluirá un campo `OutputDataConfig` que contiene un campo con la ubicación de Amazon S3 del archivo de salida. El archivo, `output.tar.gz`, es un archivo comprimido que contiene los resultados del análisis.

Si el estado de un trabajo es `FAILED`, la respuesta contendrá un campo `Message` en el que se describe el motivo por el cual el trabajo no se ha completado correctamente.

Para obtener el estado de los trabajos individuales, utilice la operación de `Describe*` pertinente:
+  [DescribeDominantLanguageDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeDominantLanguageDetectionJob.html)
+  [DescribeEntitiesDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeEntitiesDetectionJob.html)
+  [DescribeKeyPhrasesDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeKeyPhrasesDetectionJob.html)
+  [DescribeSentimentDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeSentimentDetectionJob.html)

Los resultados se reportan en un único archivo con una estructura JSON para cada documento. Cada archivo de respuesta también incluye mensajes de error para cualquier trabajo con el campo de estado configurado en `FAILED`.

En cada una de las siguientes secciones se muestran ejemplos de los resultados para los dos formatos de entrada.

### Obtención de los resultados de la detección del idioma predominante
<a name="async-dominant-language"></a>

A continuación se muestra un ejemplo de un archivo de salida de un trabajo de análisis que ha detectado el idioma predominante. El formato de entrada es de un documento por línea. Para obtener más información, consulte la operación [DetectDominantLanguage](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DetectDominantLanguage.html).

```
{"File": "0_doc", "Languages": [{"LanguageCode": "en", "Score": 0.9514502286911011}, {"LanguageCode": "de", "Score": 0.02374090999364853}, {"LanguageCode": "nl", "Score": 0.003208699868991971}, "Line": 0}
{"File": "1_doc", "Languages": [{"LanguageCode": "en", "Score": 0.9822712540626526}, {"LanguageCode": "de", "Score": 0.002621392020955682}, {"LanguageCode": "es", "Score": 0.002386554144322872}], "Line": 1}
```

A continuación se muestra un ejemplo del resultado de un análisis en el que el formato de entrada es un documento por archivo:

```
{"File": "small_doc", "Languages": [{"LanguageCode": "en", "Score": 0.9728053212165833}, {"LanguageCode": "de", "Score": 0.007670710328966379}, {"LanguageCode": "es", "Score": 0.0028472368139773607}]}
{"File": "huge_doc", "Languages": [{"LanguageCode": "en", "Score": 0.984955906867981}, {"LanguageCode": "de", "Score": 0.0026436643674969673}, {"LanguageCode": "fr", "Score": 0.0014206881169229746}]}
```

### Obtención de los resultados de la detección de entidades
<a name="async-entities"></a>

A continuación se muestra un ejemplo de un archivo de salida de un trabajo de análisis que ha detectado entidades en los documentos. El formato de entrada es de un documento por línea. Para obtener más información, consulte la operación [DetectEntities](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DetectEntities.html). El resultado contiene dos mensajes de error, uno para un documento demasiado largo y otro para un documento que no está en formato UTF-8.

```
{"File": "50_docs", "Line": 0, "Entities": [{"BeginOffset": 0, "EndOffset": 22, "Score": 0.9763959646224976, "Text": "Cluj-NapocaCluj-Napoca", "Type": "LOCATION"}"]}
{"File": "50_docs", "Line": 1, "Entities": [{"BeginOffset": 11, "EndOffset": 15, "Score": 0.9615424871444702, "Text": "Maat", "Type": "PERSON"}}]}
{"File": "50_docs", "Line": 2, "ErrorCode": "DOCUMENT_SIZE_EXCEEDED", "ErrorMessage": "Document size exceeds maximum size limit 102400 bytes."}
{"File": "50_docs", "Line": 3, "ErrorCode": "UNSUPPORTED_ENCODING", "ErrorMessage": "Document is not in UTF-8 format and all subsequent lines are ignored."}
```

A continuación, se muestra un ejemplo del resultado de un análisis en el que el formato de la entrada es un documento por archivo. El resultado contiene dos mensajes de error, uno para un documento demasiado largo y otro para un documento que no está en formato UTF-8. 

```
{"File": "non_utf8.txt", "ErrorCode": "UNSUPPORTED_ENCODING", "ErrorMessage": "Document is not in UTF-8 format and all subsequent line are ignored."}
{"File": "small_doc", "Entities": [{"BeginOffset": 0, "EndOffset": 4, "Score": 0.645766019821167, "Text": "Maat", "Type": "PERSON"}]}
{"File": "huge_doc", "ErrorCode": "DOCUMENT_SIZE_EXCEEDED", "ErrorMessage": "Document size exceeds size limit 102400 bytes."}
```

### Obtención de los resultados de la detección de frases clave
<a name="async-key-phrases"></a>

A continuación se muestra un ejemplo de un archivo de salida de un trabajo de análisis que ha detectado frases clave en un documento. El formato de entrada es de un documento por línea. Para obtener más información, consulte la operación [DetectKeyPhrases](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DetectKeyPhrases.html).

```
{"File": "50_docs", "KeyPhrases": [{"BeginOffset": 0, "EndOffset": 22, "Score": 0.8948641419410706, "Text": "Cluj-NapocaCluj-Napoca"}, {"BeginOffset": 45, "EndOffset": 49, "Score": 0.9989854693412781, "Text": "Cluj"}], "Line": 0}            
```

A continuación se muestra un ejemplo del resultado de un análisis en el que el formato de entrada es un documento por archivo.

```
{"File": "1_doc", "KeyPhrases": [{"BeginOffset": 0, "EndOffset": 22, "Score": 0.8948641419410706, "Text": "Cluj-NapocaCluj-Napoca"}, {"BeginOffset": 45, "EndOffset": 49, "Score": 0.9989854693412781, "Text": "Cluj"}]}            
```

### Obtención de resultados de detección de información de identificación personal (PII)
<a name="async-pii"></a>

A continuación se muestra un ejemplo de un archivo de salida de un trabajo de análisis que ha detectado entidades de PII en los documentos. El formato de entrada es de un documento por línea. 

```
{"Entities":[{"Type":"NAME","BeginOffset":40,"EndOffset":69,"Score":0.999995},{"Type":"ADDRESS","BeginOffset":247,"EndOffset":253,"Score":0.998828},{"Type":"BANK_ACCOUNT_NUMBER","BeginOffset":406,"EndOffset":411,"Score":0.693283}],"File":"doc.txt","Line":0}
{"Entities":[{"Type":"SSN","BeginOffset":1114,"EndOffset":1124,"Score":0.999999},{"Type":"EMAIL","BeginOffset":3742,"EndOffset":3775,"Score":0.999993},{"Type":"PIN","BeginOffset":4098,"EndOffset":4102,"Score":0.999995}],"File":"doc.txt","Line":1}
```

A continuación, se muestra un ejemplo del resultado de un análisis en el que el formato de la entrada es un documento por archivo.

```
{"Entities":[{"Type":"NAME","BeginOffset":40,"EndOffset":69,"Score":0.999995},{"Type":"ADDRESS","BeginOffset":247,"EndOffset":253,"Score":0.998828},{"Type":"BANK_ROUTING","BeginOffset":279,"EndOffset":289,"Score":0.999999}],"File":"doc.txt"}
```

### Obtención de resultados de detección de opiniones
<a name="async-sentiment"></a>

A continuación se muestra un ejemplo de un archivo de salida de un análisis que ha detectado la opinión expresada en un documento. Incluye un mensaje de error porque un documento es demasiado largo. El formato de entrada es de un documento por línea. Para obtener más información, consulte la operación [DetectSentiment](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DetectSentiment.html).

```
{"File": "50_docs", "Line": 0, "Sentiment": "NEUTRAL", "SentimentScore": {"Mixed": 0.002734508365392685, "Negative": 0.008935936726629734, "Neutral": 0.9841893315315247, "Positive": 0.004140198230743408}}
{"File": "50_docs", "Line": 1, "ErrorCode": "DOCUMENT_SIZE_EXCEEDED", "ErrorMessage": "Document size is exceeded maximum size limit 5120 bytes."}
{"File": "50_docs", "Line": 2, "Sentiment": "NEUTRAL", "SentimentScore": {"Mixed": 0.0023119584657251835, "Negative": 0.0029857370536774397, "Neutral": 0.9866572022438049, "Positive": 0.008045154623687267}}
```

A continuación se muestra un ejemplo del resultado de un análisis en el que el formato de entrada es un documento por archivo.

```
{"File": "small_doc", "Sentiment": "NEUTRAL", "SentimentScore": {"Mixed": 0.0023450672160834074, "Negative": 0.0009663937962614, "Neutral": 0.9795311689376831, "Positive": 0.017157377675175667}}
{"File": "huge_doc", "ErrorCode": "DOCUMENT_SIZE_EXCEEDED", "ErrorMessage": "Document size is exceeds the limit of 5120 bytes."}
```

# Análisis asíncrono para opiniones dirigidas
<a name="using-api-targeted-sentiment"></a>

Para obtener información sobre el análisis en tiempo real de la opinión dirigida, consulte [Análisis en tiempo real de la opinión específica](using-api-sync.md#get-started-api-targeted-sentiment).

Amazon Comprehend proporciona las siguientes operaciones de API para iniciar y gestionar el análisis asíncrono de opiniones dirigidas:
+  [StartTargetedSentimentDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartTargetedSentimentDetectionJob.html)— Inicia un trabajo asíncrono de detección de opiniones específicas para una colección de documentos.
+  [ListTargetedSentimentDetectionJobs](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_ListTargetedSentimentDetectionJobs.html)— Devuelve la lista de trabajos de detección de opiniones segmentados que ha enviado.
+  [DescribeTargetedSentimentDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeTargetedSentimentDetectionJob.html)— Obtiene las propiedades (incluido el estado) asociadas al trabajo de detección de opiniones objetivo especificado.
+  [StopTargetedSentimentDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StopTargetedSentimentDetectionJob.html)— Detiene el trabajo de opinión objetivo especificado en curso.

**Topics**
+ [Antes de comenzar](#api-targeted-sentiment-before)
+ [Analiza el sentimiento objetivo mediante el AWS CLI](#api-targeted-sentiment-cli)

## Antes de comenzar
<a name="api-targeted-sentiment-before"></a>

Antes de comenzar, asegúrese de que dispone de:
+ **Buckets de entrada y de salida**: identifique los buckets de Amazon S3 que quiere usar para la entrada y la salida. Los buckets deben estar situados en la misma región que la API a la cual está llamando.
+ **Rol de servicio de IAM**: debe tener un rol de servicio de IAM con permiso para acceder a sus buckets de entrada y salida. Para obtener más información, consulte [Se requieren permisos basados en roles para las operaciones asíncronas](security_iam_id-based-policy-examples.md#auth-role-permissions).

## Analiza el sentimiento objetivo mediante el AWS CLI
<a name="api-targeted-sentiment-cli"></a>

El siguiente ejemplo muestra el uso de la operación `StartTargetedSentimentDetectionJob` en la AWS CLI. En este ejemplo se especifica el idioma del texto de entrada.

El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

```
aws comprehend start-targeted-sentiment-detection-job \
       --job-name "job name" \
       --language-code "en" \
       --cli-input-json file://path to JSON input file
```

Para el parámetro de `cli-input-json`, debe proporcionar la ruta de un archivo JSON que contiene los datos de solicitud, como se muestra en el siguiente ejemplo.

```
{
    "InputDataConfig": {
        "S3Uri": "s3://input bucket/input path",
        "InputFormat": "ONE_DOC_PER_FILE"
    },
    "OutputDataConfig": {
        "S3Uri": "s3://output bucket/output path"
    },
    "DataAccessRoleArn": "arn:aws:iam::account ID:role/data access role"
}
```

Si la solicitud para iniciar el trabajo se ha realizado correctamente, recibirá la siguiente respuesta:

```
{
    "JobStatus": "SUBMITTED",
    "JobArn": "job ARN"
    "JobId": "job ID"
}
```

# Análisis asíncrono para la detección de eventos
<a name="get-started-api-events"></a>

**Topics**
+ [Antes de comenzar](#events-before)
+ [Detecte eventos mediante el AWS CLI](#events-cli)
+ [Enumere los eventos mediante el AWS CLI](#list-events)
+ [Describa los eventos mediante el AWS CLI](#describe-events)
+ [Cómo obtener los resultados de la detección de eventos](#async-events)

Para detectar eventos en un conjunto de documentos, utilice el [StartEventsDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartEventsDetectionJob.html)para iniciar un trabajo asíncrono.

## Antes de comenzar
<a name="events-before"></a>

Antes de comenzar, asegúrese de que dispone de:
+ **Buckets de entrada y de salida**: identifique los buckets de Amazon S3 que quiere usar para la entrada y la salida. Los buckets deben estar situados en la misma región que la API a la cual está llamando.
+ **Rol de servicio de IAM**: debe tener un rol de servicio de IAM con permiso para acceder a sus buckets de entrada y salida. Para obtener más información, consulte [Se requieren permisos basados en roles para las operaciones asíncronas](security_iam_id-based-policy-examples.md#auth-role-permissions).

## Detecte eventos mediante el AWS CLI
<a name="events-cli"></a>

En el siguiente ejemplo, se muestra el uso de la [StartEventsDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartEventsDetectionJob.html)operación con AWS CLI

El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

```
aws comprehend start-events-detection-job \
  --region region \
  --job-name job name \
  --cli-input-json file://path to JSON input file
```

Para el parámetro de `cli-input-json`, debe proporcionar la ruta de un archivo JSON que contiene los datos de solicitud, como se muestra en el siguiente ejemplo.

```
{
  "InputDataConfig": {
      "S3Uri": "s3://input bucket/input path",
      "InputFormat": "ONE_DOC_PER_LINE"
  },
  "OutputDataConfig": {
      "S3Uri": "s3://output bucket/output path"
  },
  "DataAccessRoleArn": "arn:aws:iam::account ID:role/data access role"
  "LanguageCode": "en",
  "TargetEventTypes": [
      "BANKRUPTCY",
      "EMPLOYMENT",
      "CORPORATE_ACQUISITION",
      "INVESTMENT_GENERAL",
      "CORPORATE_MERGER",
      "IPO",
      "RIGHTS_ISSUE",
      "SECONDARY_OFFERING",
      "SHELF_OFFERING",
      "TENDER_OFFERING",
      "STOCK_SPLIT"
  ]
}
```

Si la solicitud para iniciar el trabajo de detección de eventos se ha realizado correctamente, recibirá la siguiente respuesta:

```
{
  "JobStatus": "SUBMITTED",
  "JobId": "job ID"
}
```

## Enumere los eventos mediante el AWS CLI
<a name="list-events"></a>

Utilice la [ListEventsDetectionJobs](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_ListEventsDetectionJobs.html)operación para ver una lista de los trabajos de detección de eventos que ha enviado. La lista incluye información sobre las ubicaciones de entrada y salida que utilizó y el estado de cada uno de los trabajos de detección. El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

```
aws comprehend list-events-detection-jobs --region region 
```

Obtendrá una respuesta JSON similar a la siguiente en respuesta a:

```
{
 "EventsDetectionJobPropertiesList": [
    {
       "DataAccessRoleArn": "arn:aws:iam::account ID:role/data access role",
       "EndTime": timestamp,
       "InputDataConfig": {
          "InputFormat": "ONE_DOC_PER_LINE",
          "S3Uri": "s3://input bucket/input path"
       },
       "JobId": "job ID",
       "JobName": "job name",
       "JobStatus": "COMPLETED",
       "LanguageCode": "en",
       "Message": "message",
       "OutputDataConfig": {
          "S3Uri": "s3://output bucket/ouput path"
       },
       "SubmitTime": timestamp,
       "TargetEventTypes": [
         "BANKRUPTCY",
         "EMPLOYMENT",
         "CORPORATE_ACQUISITION",
         "INVESTMENT_GENERAL",
         "CORPORATE_MERGER",
         "IPO",
         "RIGHTS_ISSUE",
         "SECONDARY_OFFERING",
         "SHELF_OFFERING",
         "TENDER_OFFERING",
         "STOCK_SPLIT"
  ]
    }
 ],
 "NextToken": "next token"
}
```

## Describa los eventos mediante el AWS CLI
<a name="describe-events"></a>

Puede utilizar la [DescribeEventsDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeEventsDetectionJob.html)operación para obtener el estado de un trabajo existente. El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

```
aws comprehend describe-events-detection-job \
  --region region \
  --job-id job ID
```

Obtendrá el siguiente JSON similar en respuesta a:

```
{
 "EventsDetectionJobProperties": {
    "DataAccessRoleArn": "arn:aws:iam::account ID:role/data access role",
    "EndTime": timestamp,
    "InputDataConfig": {
       "InputFormat": "ONE_DOC_PER_LINE",
       "S3Uri": "S3Uri": "s3://input bucket/input path"
    },
    "JobId": "job ID",
    "JobName": "job name",
    "JobStatus": "job status",
    "LanguageCode": "en",
    "Message": "message",
    "OutputDataConfig": {
       "S3Uri": "s3://output bucket/output path"
    },
    "SubmitTime": timestamp,
    "TargetEventTypes": [
      "BANKRUPTCY",
      "EMPLOYMENT",
      "CORPORATE_ACQUISITION",
      "INVESTMENT_GENERAL",
      "CORPORATE_MERGER",
      "IPO",
      "RIGHTS_ISSUE",
      "SECONDARY_OFFERING",
      "SHELF_OFFERING",
      "TENDER_OFFERING",
      "STOCK_SPLIT"
  ]
 }
}
```

## Cómo obtener los resultados de la detección de eventos
<a name="async-events"></a>

A continuación se muestra un ejemplo de un archivo de salida de un trabajo de análisis que detectó eventos en los documentos. El formato de entrada es de un documento por línea. 

```
{"Entities": [{"Mentions": [{"BeginOffset": 12, "EndOffset": 27, "GroupScore": 1.0, "Score": 0.916355, "Text": "over a year ago", "Type": "DATE"}]}, {"Mentions": [{"BeginOffset": 33, "EndOffset": 39, "GroupScore": 1.0, "Score": 0.996603, "Text": "Amazon", "Type": "ORGANIZATION"}]}, {"Mentions": [{"BeginOffset": 66, "EndOffset": 77, "GroupScore": 1.0, "Score": 0.999283, "Text": "Whole Foods", "Type": "ORGANIZATION"}]}], "Events": [{"Arguments": [{"EntityIndex": 2, "Role": "INVESTEE", "Score": 0.999283}, {"EntityIndex": 0, "Role": "DATE", "Score": 0.916355}, {"EntityIndex": 1, "Role": "INVESTOR", "Score": 0.996603}], "Triggers": [{"BeginOffset": 373, "EndOffset": 380, "GroupScore": 0.999984, "Score": 0.999955, "Text": "acquire", "Type": "CORPORATE_ACQUISITION"}], "Type": "CORPORATE_ACQUISITION"}, {"Arguments": [{"EntityIndex": 2, "Role": "PARTICIPANT", "Score": 0.999283}], "Triggers": [{"BeginOffset": 115, "EndOffset": 123, "GroupScore": 1.0, "Score": 0.999967, "Text": "combined", "Type": "CORPORATE_MERGER"}], "Type": "CORPORATE_MERGER"}], "File": "doc.txt", "Line": 0}
```

Para obtener más información sobre la estructura de los archivos de salida de los eventos y los tipos de evento admitidos, consulte [Events](how-events.md).

# Análisis asíncrono para el modelado de temas
<a name="get-started-topics"></a>

 Para determinar los temas de un conjunto de documentos, utilice el [StartTopicsDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartTopicsDetectionJob.html)para iniciar un trabajo asíncrono. Puede supervisar los temas de los documentos escritos en inglés o español.

**Topics**
+ [Antes de comenzar](#topics-before)
+ [Utilización del AWS Command Line Interface](#topics-cli)
+ [Uso del SDK para Python o SDK para .NET](#topic-java)

## Antes de comenzar
<a name="topics-before"></a>

Antes de comenzar, asegúrese de que dispone de:
+ **Buckets de entrada y de salida**: identifique los buckets de Amazon S3 que quiere usar para la entrada y la salida. Los buckets deben estar situados en la misma región que la API a la cual está llamando.
+ **Rol de servicio de IAM**: debe tener un rol de servicio de IAM con permiso para acceder a sus buckets de entrada y salida. Para obtener más información, consulte [Se requieren permisos basados en roles para las operaciones asíncronas](security_iam_id-based-policy-examples.md#auth-role-permissions).

## Utilización del AWS Command Line Interface
<a name="topics-cli"></a>

En el siguiente ejemplo se muestra el uso de la `StartTopicsDetectionJob` operación con AWS CLI

El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

```
aws comprehend start-topics-detection-job \
                --number-of-topics topics to return \
                --job-name "job name" \
                --region region \
                --cli-input-json file://path to JSON input file
```

Para el parámetro de `cli-input-json`, debe proporcionar la ruta de un archivo JSON que contiene los datos de solicitud, como se muestra en el siguiente ejemplo.

```
{
    "InputDataConfig": {
        "S3Uri": "s3://input bucket/input path",
        "InputFormat": "ONE_DOC_PER_FILE"
    },
    "OutputDataConfig": {
        "S3Uri": "s3://output bucket/output path"
    },
    "DataAccessRoleArn": "arn:aws:iam::account ID:role/data access role"
}
```

Si la solicitud para iniciar el trabajo de detección de eventos se ha realizado correctamente, recibirá la siguiente respuesta:

```
{
    "JobStatus": "SUBMITTED",
    "JobId": "job ID"
}
```

Utilice la [ListTopicsDetectionJobs](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_ListTopicsDetectionJobs.html)operación para ver una lista de los trabajos de detección de temas que ha enviado. La lista incluye información sobre las ubicaciones de entrada y salida que utilizó y el estado de cada uno de los trabajos de detección. El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

```
aws comprehend list-topics-detection-jobs \-- region
```

Obtendrá una respuesta JSON similar a la siguiente en respuesta a:

```
{
    "TopicsDetectionJobPropertiesList": [
        {
            "InputDataConfig": {
                "S3Uri": "s3://input bucket/input path",
                "InputFormat": "ONE_DOC_PER_LINE"
            },
            "NumberOfTopics": topics to return,
            "JobId": "job ID",
            "JobStatus": "COMPLETED",
            "JobName": "job name",
            "SubmitTime": timestamp,
            "OutputDataConfig": {
                "S3Uri": "s3://output bucket/output path"
            },
            "EndTime": timestamp
        },
        {
            "InputDataConfig": {
                "S3Uri": "s3://input bucket/input path",
                "InputFormat": "ONE_DOC_PER_LINE"
            },
            "NumberOfTopics": topics to return,
            "JobId": "job ID",
            "JobStatus": "RUNNING",
            "JobName": "job name",
            "SubmitTime": timestamp,
            "OutputDataConfig": {
                "S3Uri": "s3://output bucket/output path"
            }
        }
    ]
}
```

Puede utilizar la [DescribeTopicsDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeTopicsDetectionJob.html)operación para obtener el estado de un trabajo existente. El ejemplo está formateado para Unix, Linux y macOS. Para Windows, sustituya la barra diagonal invertida (\$1) utilizada como carácter de continuación de Unix al final de cada línea por el signo de intercalación (^).

```
aws comprehend describe-topics-detection-job --job-id job ID 
```

Obtendrá el siguiente JSON similar en respuesta a:

```
{
    "TopicsDetectionJobProperties": {
        "InputDataConfig": {
            "S3Uri": "s3://input bucket/input path",
            "InputFormat": "ONE_DOC_PER_LINE"
        },
        "NumberOfTopics": topics to return,
        "JobId": "job ID",
        "JobStatus": "COMPLETED",
        "JobName": "job name",
        "SubmitTime": timestamp,
        "OutputDataConfig": {
            "S3Uri": "s3://output bucket/ouput path"
        },
        "EndTime": timestamp
    }
}
```

## Uso del SDK para Python o SDK para .NET
<a name="topic-java"></a>

Para ver ejemplos del SDK sobre cómo iniciar un trabajo de modelado de temas, consulte [Úselo `StartTopicsDetectionJob` con un AWS SDK o CLI](example_comprehend_StartTopicsDetectionJob_section.md).