Stay organized with collections Save and categorize content based on your preferences.
The CREATE MODEL statement for importing XGBoost modelsThis document describes the CREATE MODEL
statement for importing XGBoost models into BigQuery by using SQL. Alternatively, you can use the Google Cloud console user interface to create a model by using a UI (Preview) instead of constructing the SQL statement yourself.
For information about the supported SQL statements and functions for each model type, see End-to-end user journey for each model.
CREATE MODEL
syntax
{CREATE MODEL | CREATE MODEL IF NOT EXISTS | CREATE OR REPLACE MODEL} model_name [INPUT(field_name field_type, …) OUTPUT(field_name field_type, …)] OPTIONS(MODEL_TYPE = 'XGBOOST', MODEL_PATH = string_value [, KMS_KEY_NAME = string_value ] );
CREATE MODEL
Creates and trains a new model in the specified dataset. If the model name exists, CREATE MODEL
returns an error.
CREATE MODEL IF NOT EXISTS
Creates and trains a new model only if the model doesn't exist in the specified dataset.
CREATE OR REPLACE MODEL
Creates and trains a model and replaces an existing model with the same name in the specified dataset.
model_name
The name of the model you're creating or replacing. The model name must be unique in the dataset: no other model or table can have the same name. The model name must follow the same naming rules as a BigQuery table. A model name can:
model_name
is not case-sensitive.
If you don't have a default project configured, then you must prepend the project ID to the model name in the following format, including backticks:
`[PROJECT_ID].[DATASET].[MODEL]`
For example, `myproject.mydataset.mymodel`.
INPUT OUTPUT
clause
The INPUT OUTPUT
clause lets you specify the model input output schema information when you create the XGBoost model.
INPUT OUTPUT
is optional only if feature_names
and feature_types
are both specified in the model file. For more information about how to store feature_names
and feature_types
in the XGBoost model file, see Introduction to Model IO.
field_name
Use field_name
to define the name of an input feature or a model output.
If the feature_names
field is populated in the XGBoost model file, the input field names must be identical to the names in the feature_names
field. For more information, see the XGBoost model JSON Schema.
field_type
Use field_type
to specify the data type of an input feature or a model output. Input data types must be one of the supported numeric types. The output data type must be FLOAT64
.
Example
INPUT(f1 INT64, f2 FLOAT64, f3 FLOAT64)
OUTPUT(predicted_label FLOAT64)
MODEL_TYPE
Syntax
MODEL_TYPE = 'XGBOOST'
Description
Specifies the model type. This option is required.
MODEL_PATH
Syntax
MODEL_PATH = string_value
Description
Specifies the Cloud Storage URI of the XGBoost model to import. This option is required.
Arguments
A STRING
value specifying the URI of a Cloud Storage bucket that contains the model to import.
BigQuery ML imports the model from Cloud Storage by using the credentials of the user who runs the CREATE MODEL
statement.
Example
MODEL_PATH = 'gs://bucket/path/to/xgboost_model/*'
KMS_KEY_NAME
Syntax
KMS_KEY_NAME = string_value
Description
The Cloud Key Management Service customer-managed encryption key (CMEK) to use to encrypt the model.
Arguments
A STRING
value containing the fully-qualified name of the CMEK. For example,
'projects/my_project/locations/my_location/keyRings/my_ring/cryptoKeys/my_key'
Locations
For information about supported locations, see Locations for non-remote models.
LimitationsImported XGBoost models have the following limitations:
BST
or JSON
format.ML.PREDICT
and ML.FEATURE_IMPORTANCE
functions.save_model
method to save the models.FLOAT64
as the output data type.The following examples show how to create different types of imported XGBoost models.
Import a model and specify input and output columnsThe following example imports a XGBoost model into BigQuery as a BigQuery model. The example assumes the following:
gs://bucket-name/xgboost-model/*
.BST format or in
JSON` format.feature_names
and feature_types
.CREATE OR REPLACE MODEL `project_id.mydataset.mymodel` INPUT(f1 float64, f2 float64, f3 float64, f4 float64) OUTPUT(predicted_label float64) OPTIONS ( MODEL_TYPE = 'XGBOOST', MODEL_PATH = 'gs://bucket-name/xgboost-model/*')Import a model that already contains input and output columns
The following example imports a XGBoost model into BigQuery as a BigQuery model. The example assumes the following:
gs://bucket-name/xgboost-model/*
.BST
format or in JSON
format.feature_names
and feature_types
.CREATE OR REPLACE MODEL `project_id.mydataset.mymodel` OPTIONS ( MODEL_TYPE = 'XGBOOST', MODEL_PATH = 'gs://bucket-name/xgboost-model/*')
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-11 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-11 UTC."],[[["The `CREATE MODEL` statement enables the import of pre-existing XGBoost models into BigQuery, using options to specify the model type, path, and input/output schema."],["You can choose between `CREATE MODEL`, `CREATE MODEL IF NOT EXISTS`, or `CREATE OR REPLACE MODEL` to manage model creation and replacement, ensuring uniqueness within the dataset."],["The `INPUT` and `OUTPUT` clauses are used to define the model's schema, but are optional if the XGBoost model file already includes `feature_names` and `feature_types`."],["Imported XGBoost models must be in `.bst` or `.json` format, stored in Cloud Storage, and have certain limitations such as a maximum size of 250 MB and constraints on input/output data types, only supporting the `ML.PREDICT` and `ML.FEATURE_IMPORTANCE` functions."],["`MODEL_PATH` and `MODEL_TYPE` options are mandatory, specifying the Cloud Storage URI of the model and defining it as an 'XGBOOST' model type, while `KMS_KEY_NAME` is optional for customer-managed encryption."]]],[]]
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4