

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.

# Comprobación previa de la solicitud y la respuesta del punto de conexión para datos tabulares
<a name="clarify-processing-job-data-format-tabular-precheck"></a>

Le recomendamos que despliegue su modelo en un punto final de inferencia en tiempo real de la SageMaker IA y que envíe las solicitudes al punto final. Examine manualmente las solicitudes y las respuestas para asegurarse de que ambas cumplen con los requisitos de la sección [Solicitudes de punto de conexión para datos tabulares](clarify-processing-job-data-format-tabular-request.md) y de la sección [Respuesta del punto de conexión para datos tabulares](clarify-processing-job-data-format-tabular-response.md). Si el contenedor de modelos admite solicitudes por lotes, puede empezar con una sola solicitud de registro y, a continuación, probar con dos o más registros.

En los siguientes comandos se muestra cómo solicitar una respuesta mediante la AWS CLI. Viene AWS CLI preinstalado en las instancias de SageMaker Studio y SageMaker Notebook. Para instalarlo AWS CLI, siga esta [guía de instalación](https://aws.amazon.com/cli/).

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name $ENDPOINT_NAME \
  --content-type $CONTENT_TYPE \
  --accept $ACCEPT_TYPE \
  --body $REQUEST_DATA \
  $CLI_BINARY_FORMAT \
  /dev/stderr 1>/dev/null
```

Los parámetros se definen como sigue:
+ `$ENDPOINT NAME`: el nombre del punto de conexión.
+ `$CONTENT_TYPE`: el tipo MIME de la solicitud (entrada del contenedor de modelos).
+ `$ACCEPT_TYPE`: el tipo MIME de la respuesta (salida del contenedor de modelos).
+ `$REQUEST_DATA`: la cadena de carga solicitada.
+ `$CLI_BINARY_FORMAT`: el formato del parámetro de la interfaz de la línea de comandos (CLI). Para la AWS CLI versión 1, este parámetro debe permanecer en blanco. En la versión 2, este parámetro debe establecerse en `--cli-binary-format raw-in-base64-out`.

**nota**  
AWS CLI [La v2 pasa los parámetros binarios como cadenas codificadas en base64 de forma predeterminada.](https://docs.aws.amazon.com/cli/latest/userguide/cliv2-migration.html#cliv2-migration-binaryparam)

# AWS CLI ejemplos de v1
<a name="clarify-processing-job-data-format-tabular-precheck-cli-v1-examples"></a>

El ejemplo de la sección anterior era para la AWS CLI versión 2. Los siguientes ejemplos de solicitud y respuesta hacia y desde el punto de conexión utilizan la v1 de la AWS CLI .

## Solicitud y respuesta del punto de conexión en formato CSV
<a name="clarify-processing-job-data-format-tabular-precheck-csv"></a>

En el siguiente ejemplo de código, la solicitud consta de un único registro y la respuesta es su valor de probabilidad.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-sagemaker-xgboost-model \
  --content-type text/csv \
  --accept text/csv \
  --body '1,2,3,4' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
0.6
```

En el siguiente ejemplo de código, la solicitud consta de dos registros y la respuesta incluye sus probabilidades, que están separadas por una coma.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-sagemaker-xgboost-model \
  --content-type text/csv \
  --accept text/csv \
  --body $'1,2,3,4\n5,6,7,8' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, la expresión `$'content'` del comando `--body` indica al comando que interprete `'\n'` en el contenido como un salto de línea. A continuación, se muestra el resultado de respuesta.

```
0.6,0.3
```

En el siguiente ejemplo de código, la solicitud consta de dos registros y la respuesta incluye sus probabilidades, que están separadas por un salto de línea.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-csv-1 \
  --content-type text/csv \
  --accept text/csv \
  --body $'1,2,3,4\n5,6,7,8' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
0.6
0.3
```

En el siguiente ejemplo de código, la solicitud consta de un único registro y la respuesta son los valores de probabilidad de un modelo multiclase que contiene tres clases.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-csv-1 \
  --content-type text/csv \
  --accept text/csv \
  --body '1,2,3,4' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
0.1,0.6,0.3
```

En el siguiente ejemplo de código, la solicitud consta de dos registros y la respuesta son los valores de probabilidad de un modelo multiclase que contiene tres clases.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-csv-1 \
  --content-type text/csv \
  --accept text/csv \
  --body $'1,2,3,4\n5,6,7,8' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
0.1,0.6,0.3
0.2,0.5,0.3
```

En el siguiente ejemplo de código, la solicitud consta de dos registros y la respuesta incluye la probabilidad y la etiqueta predicha.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-csv-2 \
  --content-type text/csv \
  --accept text/csv \
  --body $'1,2,3,4\n5,6,7,8' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
1,0.6
0,0.3
```

En el siguiente ejemplo de código, la solicitud consta de dos registros y la respuesta incluye las probabilidades y los encabezados de etiqueta.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-csv-3 \
  --content-type text/csv \
  --accept text/csv \
  --body $'1,2,3,4\n5,6,7,8' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
"['cat','dog','fish']","[0.1,0.6,0.3]"
"['cat','dog','fish']","[0.2,0.5,0.3]"
```

## Solicitud y respuesta del punto de conexión en formato JSON Lines
<a name="clarify-processing-job-data-format-tabular-precheck-jsonlines"></a>

En el siguiente ejemplo de código, la solicitud consta de un único registro y la respuesta es su valor de probabilidad.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-jsonlines \
  --content-type application/jsonlines \
  --accept application/jsonlines \
  --body '{"features":["This is a good product",5]}' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
{"score":0.6}
```

En el siguiente ejemplo de código, la solicitud contiene dos registros y la respuesta incluye la probabilidad y la etiqueta predicha.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-jsonlines-2 \
  --content-type application/jsonlines \
  --accept application/jsonlines \
  --body $'{"features":[1,2,3,4]}\n{"features":[5,6,7,8]}' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
{"predicted_label":1,"probability":0.6}
{"predicted_label":0,"probability":0.3}
```

En el siguiente ejemplo de código, la solicitud contiene dos registros y la respuesta incluye las probabilidades y los encabezados de etiqueta.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-jsonlines-3 \
  --content-type application/jsonlines \
  --accept application/jsonlines \
  --body $'{"data":{"features":[1,2,3,4]}}\n{"data":{"features":[5,6,7,8]}}' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
{"predicted_labels":["cat","dog","fish"],"probabilities":[0.1,0.6,0.3]}
{"predicted_labels":["cat","dog","fish"],"probabilities":[0.2,0.5,0.3]}
```

## Solicitud y respuesta del punto de conexión en formatos mixtos
<a name="clarify-processing-job-data-format-tabular-precheck-diff"></a>

En el siguiente ejemplo de código, la solicitud está en formato CSV y la respuesta en formato JSON Lines.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-csv-in-jsonlines-out \
  --content-type text/csv \
  --accept application/jsonlines \
  --body $'1,2,3,4\n5,6,7,8' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
{"probability":0.6}
{"probability":0.3}
```

En el siguiente ejemplo de código, la solicitud está en formato JSON Lines y la respuesta en formato CSV.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-jsonlines-in-csv-out \
  --content-type application/jsonlines \
  --accept text/csv \
  --body $'{"features":[1,2,3,4]}\n{"features":[5,6,7,8]}' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
0.6
0.3
```

En el siguiente ejemplo de código, la solicitud está en formato CSV y la respuesta en formato JSON.

```
aws sagemaker-runtime invoke-endpoint \
  --endpoint-name test-endpoint-csv-in-jsonlines-out \
  --content-type text/csv \
  --accept application/jsonlines \
  --body $'1,2,3,4\n5,6,7,8' \
  /dev/stderr 1>/dev/null
```

En el ejemplo de código anterior, el resultado de la respuesta es el siguiente.

```
{"predictions":[{"label":1,"score":0.6},{"label":0,"score":0.3}]}
```