CREATE EXTERNAL MODEL - Amazon Redshift

Amazon Redshift non supporterà più la creazione di nuove UDF Python a partire dal 1º novembre 2025. Se desideri utilizzare le UDF Python, creale prima di tale data. Le UDF Python esistenti continueranno a funzionare normalmente. Per ulteriori informazioni, consulta il post del blog.

CREATE EXTERNAL MODEL

Prerequisiti per CREATE EXTERNAL MODEL

Prima di utilizzare l’istruzione CREATE MODEL, completa i prerequisiti descritti in Configurazione del cluster per l'utilizzo di Amazon Redshift ML. Di seguito è riportato un riepilogo approfondito dei prerequisiti.

  • Creazione di un cluster Amazon Redshift con la Console di gestione di AWS o l'interfaccia a riga di comando di AWS (AWS CLI).

  • Collegare la policy AWS Identity and Access Management (IAM) durante la creazione del cluster.

  • Per consentire ad Amazon Redshift e Amazon Bedrock di assumere il ruolo per interagire con altri servizi, aggiungi la seguente policy di attendibilità al ruolo IAM.

  • Abilita l’accesso ai modelli LLM specifici da utilizzare dalla console Amazon Bedrock.

  • (Facoltativo) Se riscontri eccezioni di limitazione provenienti da Amazon Bedrock, ad esempio Too many requests, please wait before trying again, anche con piccole quantità di dati, controlla le quote nella sezione Service Quotas nell’account di Amazon Bedrock. Verifica che la quota applicata a livello di account sia almeno uguale al valore di quota AWS predefinito per le richieste InvokeModel per il modello che stai utilizzando.

Per maggiori dettagli sul ruolo IAM, sulla policy di attendibilità e su altri prerequisiti, consultare Configurazione del cluster per l'utilizzo di Amazon Redshift ML.

Privilegi richiesti

Di seguito sono riportati i privilegi richiesti per CREATE EXTERNAL MODEL:

  • Superuser

  • Utenti con il privilegio CREATE MODEL

  • Ruoli con il privilegio GRANT CREATE MODEL

Controllo dei costi

Amazon Redshift ML utilizza le risorse cluster esistenti per creare modelli di previsione, quindi non sono previsti costi aggiuntivi. Tuttavia AWS addebita un costo per l’utilizzo di Amazon Bedrock in base al modello selezionato. Per ulteriori informazioni consulta Costi per l'utilizzo di Amazon Redshift ML.

Sintassi di CREATE EXTERNAL MODEL

Di seguito è riportata la sintassi completa dell’istruzione 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}] );

Il comando CREATE EXTERNAL MODEL crea una funzione di inferenza da utilizzare per generare contenuti.

Di seguito è riportata la sintassi di una funzione di inferenza che CREATE EXTERNAL MODEL crea utilizzando REQUEST_TYPE uguale a RAW:

SELECT inference_function_name(request_super) [FROM table];

Di seguito è riportata la sintassi di una funzione di inferenza che CREATE EXTERNAL MODEL crea utilizzando REQUEST_TYPE uguale a UNIFIED:

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

Per informazioni su come utilizzare una funzione di inferenza, consulta Utilizzo di un modello esterno per l’integrazione di Amazon Redshift ML con Amazon Bedrock.

Parametri e impostazioni di CREATE EXTERNAL MODEL

Questa sezione descrive i parametri e le impostazioni del comando CREATE EXTERNAL MODEL.

Parametri di CREATE EXTERNAL MODEL

model_name

Il nome del modello esterno. Il nome del modello in uno schema deve essere unico.

FUNCTION function_name (data_type [,...] )

Il nome della funzione di inferenza creata da CREATE EXTERNAL MODEL. La funzione di inferenza viene utilizzata per inviare richieste ad Amazon Bedrock e recuperare il testo generato da ML.

IAM_ROLE { default | 'arn:aws:iam::<account-id>:role/<role-name>' }

Il ruolo IAM utilizzato da Amazon Redshift per accedere ad Amazon Bedrock. Per informazioni sul ruolo IAM, consulta Creazione o aggiornamento di un ruolo IAM per l’integrazione di Amazon Redshift ML con Amazon Bedrock.

MODEL_TYPE BEDROCK

Specifica il tipo di modello. L'unico valore valido è BEDROCK.

SETTINGS ( MODEL_ID model_id [,...] )

Specifica le impostazioni del modello esterno. Per informazioni dettagliate, consulta la sezione seguente.

Impostazioni di CREATE EXTERNAL MODEL

MODEL_ID model_id

L’identificatore del modello esterno, ad esempio anthropic.claude-v2. Per informazioni sugli ID dei modelli Amazon Bedrock, consulta ID dei modelli Amazon Bedrock.

PROMPT 'prompt prefix'

Specifica un prompt statico che Amazon Redshift aggiunge all’inizio di ogni richiesta di inferenza. Supportato solo con REQUEST_TYPE uguale a UNIFIED.

SUFFIX 'prompt suffix'

Specifica un prompt statico che Amazon Redshift aggiunge alla fine di ogni richiesta di inferenza. Supportato solo con REQUEST_TYPE uguale a UNIFIED.

REQUEST_TYPE { RAW | UNIFIED }

Specifica il formato della richiesta inviata ad Amazon Bedrock. I valori validi includono i seguenti:

  • RAW: la funzione di inferenza accetta l’input come un unico valore SUPER e restituisce sempre un valore SUPER. Il formato del valore SUPER è specifico del modello Amazon Bedrock selezionato. Un valore SUPER è un modello di previsione che combina più algoritmi per produrre un’unica previsione migliorata.

  • UNIFIED: la funzione di inferenza utilizza l’API unificata. Tutti i modelli hanno un’interfaccia unificata e coerente con Amazon Bedrock. Funziona per tutti i modelli che supportano i messaggi. Questo è il valore predefinito.

    Per ulteriori informazioni, consulta la documentazione dell’API Converse nella documentazione dell’API Amazon Bedrock.

RESPONSE_TYPE { VARCHAR | SUPER }

Specifica il formato della risposta. Se il valore dell’impostazione REQUEST_TYPE è RAW, l’impostazione RESPONSE_TYPE è obbligatoria e l’unico valore valido è SUPER. Per tutti gli altri valori dell’impostazione REQUEST TYPE, il valore predefinito è VARCHAR e l’impostazione RESPONSE_TYPE è facoltativa. I valori validi includono i seguenti:

  • VARCHAR: Amazon Redshift restituisce solo la risposta testuale generata dal modello.

  • SUPER: Amazon Redshift restituisce l’intera risposta JSON generata dal modello come super. Ciò include la risposta testuale e informazioni come il motivo dell’interruzione e l’utilizzo dei token di input e output del modello. Un valore SUPER è un modello di previsione che combina più algoritmi per produrre un’unica previsione migliorata.

Parametri della funzione di inferenza CREATE EXTERNAL MODEL

In questa sezione sono descritti i parametri validi per la funzione di inferenza creata dal comando CREATE EXTERNAL MODEL.

Parametri della funzione di inferenza CREATE EXTERNAL MODEL per REQUEST_TYPE uguale a RAW

Una funzione di inferenza creata con REQUEST_TYPE uguale a RAW ha un argomento di input super e restituisce sempre un tipo di dati super. La sintassi dell’input super segue la sintassi della richiesta del modello specifico selezionato in Amazon Bedrock.

Parametri della funzione di inferenza CREATE EXTERNAL MODEL per REQUEST_TYPE uguale a UNIFIED

input_text

Il testo che Amazon Redshift invia ad Amazon Bedrock.

inference_config

Un valore super che contiene parametri facoltativi che Amazon Redshift invia ad Amazon Bedrock. Possono essere inclusi i seguenti:

  • maxTokens

  • stopSequences

  • temperature

  • topP

Questi parametri sono tutti facoltativi e fanno distinzione tra maiuscole e minuscole. Per informazioni su questi parametri, consulta InferenceConfiguration nella documentazione di riferimento dell’API Amazon Bedrock.