Sentencia CREATE MODEL para modelos remotos mediante los servicios de IA de Cloud
En este documento, se describe la sentencia CREATE MODEL
para crear modelos remotos en BigQuery a través de los servicios de Cloud AI. Por ejemplo, la API de Cloud Natural Language.
Sintaxis de CREATE MODEL
{CREATE MODEL | CREATE MODEL IF NOT EXISTS | CREATE OR REPLACE MODEL} `project_id.dataset.model_name` REMOTE WITH CONNECTION `project_id.region.connection_id` OPTIONS(REMOTE_SERVICE_TYPE = remote_service_type [, DOCUMENT_PROCESSOR = document_processor] [, SPEECH_RECOGNIZER = speech_recognizer] );
CREATE MODEL
Crea y entrena un modelo nuevo en el conjunto de datos especificado. Si el nombre del modelo existe, CREATE MODEL
muestra un error.
CREATE MODEL IF NOT EXISTS
Crea y entrena un modelo nuevo solo si el modelo no existe en el conjunto de datos especificado.
CREATE OR REPLACE MODEL
Crea y entrena un modelo y reemplaza el existente con el mismo nombre en el conjunto de datos especificado.
model_name
El nombre del modelo que estás creando o reemplazando. El nombre del modelo debe ser único en el conjunto de datos: ningún otro modelo o tabla puede tener el mismo nombre. El nombre del modelo debe seguir las mismas reglas de denominación que una tabla de BigQuery. Estas son las características de un nombre de modelo:
- Contiene hasta 1,024 caracteres
- Contiene letras (mayúsculas o minúsculas), números o guiones bajos.
model_name
no distingue entre mayúsculas y minúsculas.
Si no tienes un proyecto predeterminado configurado, debes anteponer el ID del proyecto al nombre del modelo en el siguiente formato, incluidos los acentos graves:
`[PROJECT_ID].[DATASET].[MODEL]`
Por ejemplo, “myproject.mydataset.mymodel”.
REMOTE WITH CONNECTION
Sintaxis
`[PROJECT_ID].[LOCATION].[CONNECTION_ID]`
BigQuery usa una conexión de recursos de Cloud para interactuar con el servicio de IA de Cloud.
Los elementos de conexión son los siguientes:
PROJECT_ID
: ID del proyecto que contiene la conexión.LOCATION
: Es la ubicación que usa la conexión. La conexión debe estar en la misma ubicación que el conjunto de datos que contiene el modelo.CONNECTION_ID
: el ID de conexión, por ejemplo,myconnection
.Para encontrar el ID de conexión, consulta los detalles de la conexión en la consola de Google Cloud. El ID de conexión es el valor de la última sección del ID de conexión completamente calificado que se muestra en el ID de conexión, por ejemplo,
projects/myproject/locations/connection_location/connections/myconnection
.
Debes otorgar el rol de usuario de Vertex AI a la cuenta de servicio de la conexión en el proyecto en el que creas el modelo.
Ejemplo
`myproject.us.my_connection`
REMOTE_SERVICE_TYPE
Sintaxis
REMOTE_SERVICE_TYPE = { 'CLOUD_AI_NATURAL_LANGUAGE_V1' | 'CLOUD_AI_TRANSLATE_V3' | 'CLOUD_AI_VISION_V1' | 'CLOUD_AI_DOCUMENT_V1' | 'CLOUD_AI_SPEECH_TO_TEXT_V2' }
Descripción
Especifica el servicio que se usará para crear el modelo:
- API de Cloud Natural Language
- API de Cloud Translation
- API de Cloud Vision
- API de Document AI (vista previa)
- API de Speech-to-Text (vista previa)
Después de crear un modelo remoto basado en un servicio de Cloud AI, puedes usar el modelo con una de las siguientes funciones de BigQuery ML para analizar tus datos de BigQuery:
- Para los modelos de la API de Cloud Natural Language, usa
ML.UNDERSTAND_TEXT
- Para los modelos de la API de Cloud Translation, usa
ML.TRANSLATE
- Para los modelos de la API de Cloud Vision, usa
ML.ANNOTATE_IMAGE
- Para los modelos de la API de Document AI, usa
ML.PROCESS_DOCUMENT
(vista previa). - Para los modelos de la API de Speech-to-Text, usa
ML.TRANSCRIBE
(vista previa)
Ejemplo
REMOTE_SERVICE_TYPE = 'CLOUD_AI_VISION_V1'
DOCUMENT_PROCESSOR
Esta opción identifica el procesador de documentos que se usará cuando el valor REMOTE_SERVICE_TYPE
sea CLOUD_AI_DOCUMENT_V1
. Debes usar esta opción cuando crees un modelo remoto en la API de Document AI. No puedes usar esta opción con ningún otro tipo de modelo remoto.
Document AI proporciona procesadores precompilados para extraer estadísticas de varios tipos de documentos, como los siguientes:
- Invoices
- Formularios fiscales
- Informes financieros
No todos los tipos de procesadores son compatibles. Los procesadores compatibles extraen estadísticas de documentos y tienen descripciones en la galería de procesadores que comienzan con Extract
. Por ejemplo, la factura, el comprobante de pago y los analizadores de estados de cuenta. La sentencia CREATE MODEL
falla si especificas un procesador no compatible.
El valor DOCUMENT_PROCESSOR
debe ser una string en el siguiente formato:
projects/PROJECT_NUMBER/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION
Reemplaza lo siguiente:
PROJECT_NUMBER
: es el número del proyecto que contiene el procesador de documentos. Para encontrar este valor, haz lo siguiente: mira los detalles del procesador, mira el Extremo de predicción , y toma el valor después del elemento de proyectos elemento, por ejemplohttps://us-documentai.googleapis.com/v1/projects/project_number/locations/processor_location/processors/processor_id:process
.LOCATION
: la ubicación que usa el procesador de documentos. Para encontrar este valor, haz lo siguiente: mira los detalles del procesador, mira el extremo de predicción , y toma el valor después del elemento ubicaciones, por ejemplohttps://us-documentai.googleapis.com/v1/projects/project_number/locations/processor_location/processors/processor_id:process
.PROCESSOR_ID
: El ID del procesador de documentos. Para encontrar este valor, haz lo siguiente: mira los detalles del procesador, mira el Extremo de predicción , y toma el valor después del elemento procesadores, por ejemplohttps://us-documentai.googleapis.com/v1/projects/project_number/locations/processor_location/processors/processor_id:process
.PROCESSOR_VERSION
: Es la versión del procesador de documentos. Puedes encontrar este valor de la siguiente manera: mira los detalles del procesador., selecciona la pestaña Administrar versiones y copia el valor del ID de versión de la versión que deseas usar.
SPEECH_RECOGNIZER
Esta opción identifica el reconocimiento de voz para usar de forma opcional cuando el valor REMOTE_SERVICE_TYPE
es CLOUD_AI_SPEECH_TO_TEXT_V2
. Si no especificas esta opción, debes especificar un valor para el argumento recognition_config
de la función ML.TRANSCRIBE
si haces referencia al modelo remoto. No puedes usar esta opción con ningún otro tipo de modelo remoto.
El valor SPEECH_RECOGNIZER
debe ser una string en el siguiente formato:
projects/PROJECT_NUMBER/locations/LOCATION/recognizers/RECOGNIZER_ID
Reemplaza lo siguiente:
PROJECT_NUMBER
: el número del proyecto que contiene el reconocedor de voz. Puedes encontrar este valor en la tarjeta Información del proyecto en la página Panel de la consola de Google Cloud.LOCATION
: la ubicación que usa el reconocedor de voz. Puedes encontrar este valor en el campo Ubicación en la página Lista de reconocimientos de la consola de Google Cloud.RECOGNIZER_ID
: el ID del reconocedor de voz. Puedes encontrar este valor en el campo ID de la página Lista de reconocimientos de la consola de Google Cloud.
Ejemplo
En el siguiente ejemplo, se crea un modelo remoto de BigQuery ML que usa la API de Cloud Vision:
CREATE MODEL `project_id.mydataset.mymodel` REMOTE WITH CONNECTION `myproject.us.test_connection` OPTIONS(REMOTE_SERVICE_TYPE = 'CLOUD_AI_VISION_V1')
¿Qué sigue?
Para obtener más información sobre el uso de los servicios de IA de Cloud con BigQuery ML, consulta Descripción general de la aplicación de IA.