

 Amazon Redshift dejará de admitir la creación de nuevas UDF de Python a partir del parche 198. Las UDF de Python existentes seguirán funcionando hasta el 30 de junio de 2026. Para obtener más información, consulte la [publicación del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# CREATE EXTERNAL MODEL
<a name="r_create_external_model"></a>

**Topics**
+ [Requisitos previos para CREATE EXTERNAL MODEL](#r_create_external_model_prereqs)
+ [Privilegios necesarios](#r_simple_create_model-privileges)
+ [Control de costes](#r_create_model_cost)
+ [Sintaxis de CREATE EXTERNAL MODEL](#r_create_external_model_syntax)
+ [Parámetros y configuración de CREATE EXTERNAL MODEL](#r_create_external_model_parameters_settings)
+ [Parámetros de función de inferencia de CREATE EXTERNAL MODEL](#r_create_external_model_if_parameters)

## Requisitos previos para CREATE EXTERNAL MODEL
<a name="r_create_external_model_prereqs"></a>

Antes de utilizar la instrucción CREATE EXTERNAL MODEL, complete los requisitos previos en [Configuración del clúster para utilizar Amazon Redshift ML](getting-started-machine-learning.md#cluster-setup). A continuación, se brinda un resumen de alto nivel de los requisitos previos.
+ Cree un clúster de Amazon Redshift con la consola de administración de AWS o la AWS Command Line Interface (AWS CLI)
+ Adjunte la política de AWS Identity and Access Management (IAM) mientras crea el clúster.
+ Para permitir que Amazon Redshift y Amazon Bedrock asuman el rol a la hora de interactuar con otros servicios, agregue la política de confianza adecuada al rol de IAM.
+ Habilite el acceso a los LLM específicos que desee usar desde la consola de Amazon Bedrock.
+ (Opcional) Si encuentra excepciones que imponen limitaciones provenientes de Amazon Bedrock, por ejemplo, `Too many requests, please wait before trying again`, incluso con pequeñas cantidades de datos, compruebe las cuotas en **Service Quotas** en su cuenta de Amazon Bedrock. Compruebe que la cuota de cuenta aplicada sea como mínimo igual al valor de la cuota predeterminada de AWS para las solicitudes de **InvokeModel** para el modelo que está utilizando.

Para obtener detalles sobre el rol de IAM, la política de confianza y otros requisitos previos, consulte [Configuración del clúster para utilizar Amazon Redshift ML](getting-started-machine-learning.md#cluster-setup).

## Privilegios necesarios
<a name="r_simple_create_model-privileges"></a>

Los siguientes privilegios son necesarios para CREATE EXTERNAL MODEL:
+ Superusuario
+ Usuarios con el privilegio CREATE MODEL
+ Roles con el privilegio GRANT CREATE MODEL

## Control de costes
<a name="r_create_model_cost"></a>

 Amazon Redshift ML utiliza los recursos de clúster existentes para crear modelos de predicción, por lo que no es necesario pagar costes adicionales. Sin embargo, los cargos de AWS por el uso de Amazon Bedrock dependen del modelo que seleccione. Para obtener más información, consulte [Costes para usar Amazon Redshift ML](https://docs.aws.amazon.com/redshift/latest/dg/cost.html). 

## Sintaxis de CREATE EXTERNAL MODEL
<a name="r_create_external_model_syntax"></a>

A continuación, se muestra la sintaxis completa de la instrucción CREATE EXTERNAL MODEL.

```
CREATE EXTERNAL MODEL model_name 
FUNCTION function_name
IAM_ROLE {default/'arn:aws:iam::<account-id>:role/<role-name>'}
MODEL_TYPE BEDROCK
SETTINGS (
   MODEL_ID model_id
   [, PROMPT 'prompt prefix']
   [, SUFFIX 'prompt suffix']
   [, REQUEST_TYPE {RAW|UNIFIED}]
   [, RESPONSE_TYPE {VARCHAR|SUPER}]
);
```

El comando `CREATE EXTERNAL MODEL` crea una función de inferencia que se utiliza para generar contenido. 

A continuación, se muestra la sintaxis de una función de inferencia que `CREATE EXTERNAL MODEL` crea mediante un `REQUEST_TYPE` de `RAW`: 

```
SELECT inference_function_name(request_super) 
[FROM table];
```

A continuación, se muestra la sintaxis de una función de inferencia que `CREATE EXTERNAL MODEL` crea mediante un `REQUEST_TYPE` de `UNIFIED`: 

```
SELECT inference_function_name(input_text, [, inference_config [, additional_model_request_fields]])
[FROM table];
```

Para obtener información sobre cómo usar la función de inferencia, consulte [Uso de un modelo externo para la integración de Amazon Redshift ML con Amazon Bedrock](machine-learning-br.md#machine-learning-br-use).

## Parámetros y configuración de CREATE EXTERNAL MODEL
<a name="r_create_external_model_parameters_settings"></a>

En esta sección se describen los parámetros y la configuración del comando `CREATE EXTERNAL MODEL`.

**Topics**
+ [Parámetros de CREATE EXTERNAL MODEL](#r_create_external_model_parameters)
+ [Configuración de CREATE EXTERNAL MODEL](#r_create_external_model_settings)

### Parámetros de CREATE EXTERNAL MODEL
<a name="r_create_external_model_parameters"></a>

model\$1name  
El nombre del modelo externo. El nombre del modelo en un esquema debe ser único.

FUNCTION *function\$1name (data\$1type [,...] )*  
El nombre de la función de inferencia que `CREATE EXTERNAL MODEL` crea. La función de inferencia se utiliza para enviar solicitudes a Amazon Bedrock y recuperar el texto generado por ML.

IAM\$1ROLE * \$1 default \$1 'arn:aws:iam::<account-id>:role/<role-name>' \$1*  
El rol de IAM que Amazon Redshift utiliza para acceder a Amazon Bedrock. Para obtener información acerca del rol de IAM, consulte [Creación o actualización de un rol de IAM para la integración de Amazon Redshift ML con Amazon Bedrock](machine-learning-br.md#machine-learning-br-iam).

MODEL\$1TYPE BEDROCK  
Especifica el tipo de modelo. El único valor válido es `BEDROCK`.

SETTINGS ( MODEL\$1ID model\$1id [,...] )  
Especifica la configuración del modelo externo. Consulte la siguiente sección para obtener más información.

### Configuración de CREATE EXTERNAL MODEL
<a name="r_create_external_model_settings"></a>

MODEL\$1ID model\$1id  
El identificador del modelo externo, por ejemplo, `anthropic.claude-v2`. Para obtener información sobre los ID de modelo de Amazon Bedrock, consulte [Amazon Bedrock model IDs](https://docs.aws.amazon.com/bedrock/latest/userguide/model-ids.html).

PROMPT “prefijo de petición”  
Especifica una petición estática que Amazon Redshift agrega al principio de cada solicitud de inferencia. Solo se admite con un `REQUEST_TYPE` de `UNIFIED`.

SUFFIX “sufijo de petición”  
Especifica una petición estática que Amazon Redshift agrega al final de cada solicitud de inferencia. Solo se admite con un `REQUEST_TYPE` de `UNIFIED`.

REQUEST\$1TYPE \$1 RAW \$1 UNIFIED \$1  
Especifica el formato de la solicitud enviada a Amazon Bedrock. Entre los valores válidos se incluyen los siguientes:  
+ **RAW**: la función de inferencia toma la entrada como un supervalor único y siempre devuelve un supervalor. El formato del supervalor es específico del modelo de Amazon Bedrock seleccionado. Un súper es un modelo de predicción que combina varios algoritmos para producir una única predicción mejorada.
+ **UNIFIED**: la función de inferencia utiliza la API unificada. Todos los modelos tienen una interfaz unificada y coherente con Amazon Bedrock. Esto funciona para todos los modelos que admiten mensajes. Este valor es el valor predeterminado.

  Para obtener más información, consulte la [Documentación de la API de conversión](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) en la *Documentación de la API de Amazon Bedrock*.

RESPONSE\$1TYPE \$1 VARCHAR \$1 SUPER \$1  
Especifica el formato de la respuesta. Si `REQUEST_TYPE` es `RAW`, `RESPONSE_TYPE` es obligatorio y el único valor válido es `SUPER`. Para todos los demás valores `REQUEST TYPE`, el valor predeterminado es `VARCHAR` y `RESPONSE_TYPE` es opcional. Entre los valores válidos se incluyen los siguientes:  
+ **VARCHAR**: Amazon Redshift solo devuelve la respuesta de texto generada por el modelo.
+ **SUPER**: Amazon Redshift devuelve todo el JSON de respuesta generado por el modelo en forma de súper. Esto incluye la respuesta de texto e información como el motivo de la parada y el uso de los tokens de entrada y salida del modelo. Un súper es un modelo de predicción que combina varios algoritmos para producir una única predicción mejorada. 

## Parámetros de función de inferencia de CREATE EXTERNAL MODEL
<a name="r_create_external_model_if_parameters"></a>

En esta sección se describen los parámetros válidos para la función de inferencia que crea el comando `CREATE EXTERNAL MODEL`. 

### Parámetros de función de inferencia de CREATE EXTERNAL MODEL para `REQUEST_TYPE` de `RAW`
<a name="r_create_external_model_if_parameters_raw"></a>

Una función de inferencia creada con un `REQUEST_TYPE` de `RAW` tiene un argumento de superentrada y siempre devuelve un tipo de superdatos. La sintaxis de la superentrada sigue la sintaxis de la solicitud del modelo específico seleccionado de Amazon Bedrock.

### Parámetros de función de inferencia de CREATE EXTERNAL MODEL para `REQUEST_TYPE` de `UNIFIED`
<a name="r_create_external_model_if_parameters_unified"></a>

input\$1text  
El texto que Amazon Redshift envía a Amazon Bedrock.

inference\$1config  
Un supervalor que contiene parámetros opcionales que Amazon Redshift envía a Amazon Bedrock. Estos pueden incluir los siguientes:  
+ maxTokens
+ stopSequences
+ temperature
+ topP
Todos estos parámetros son opcionales y distinguen entre mayúsculas y minúsculas. Para obtener información sobre estos parámetros, consulte [InferenceConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InferenceConfiguration.html) en la *referencia de la API de Amazon Bedrock*.