Skip to main content

models

Creates, updates, deletes, gets or lists a models resource.

Overview​

Namemodels
TypeResource
Idgoogle.bigquery.models

Fields​

The following fields are returned by SELECT queries:

NameDatatypeDescription
bestTrialIdstring (int64)The best trial_id across all training runs.
creationTimestring (int64)Output only. The time when this model was created, in millisecs since the epoch.
defaultTrialIdstring (int64)Output only. The default trial_id to use in TVFs when the trial_id is not passed in. For single-objective hyperparameter tuning models, this is the best trial ID. For multi-objective hyperparameter tuning models, this is the smallest trial ID among all Pareto optimal trials.
descriptionstringOptional. A user-friendly description of this model.
encryptionConfigurationobjectCustom encryption configuration (e.g., Cloud KMS keys). This shows the encryption configuration of the model data while stored in BigQuery storage. This field can be used with PatchModel to update encryption key for an already encrypted model. (id: EncryptionConfiguration)
etagstringOutput only. A hash of this resource.
expirationTimestring (int64)Optional. The time when this model expires, in milliseconds since the epoch. If not present, the model will persist indefinitely. Expired models will be deleted and their storage reclaimed. The defaultTableExpirationMs property of the encapsulating dataset can be used to set a default expirationTime on newly created models.
featureColumnsarrayOutput only. Input feature columns for the model inference. If the model is trained with TRANSFORM clause, these are the input of the TRANSFORM clause.
friendlyNamestringOptional. A descriptive name for this model.
hparamSearchSpacesobjectOutput only. All hyperparameter search spaces in this model. (id: HparamSearchSpaces)
hparamTrialsarrayOutput only. Trials of a hyperparameter tuning model sorted by trial_id.
labelColumnsarrayOutput only. Label columns that were used to train this model. The output of the model will have a "predicted_" prefix to these columns.
labelsobjectThe labels associated with this model. You can use these to organize and group your models. Label keys and values can be no longer than 63 characters, can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter and each label in the list must have a different key.
lastModifiedTimestring (int64)Output only. The time when this model was last modified, in millisecs since the epoch.
locationstringOutput only. The geographic location where the model resides. This value is inherited from the dataset.
modelReferenceobjectRequired. Unique identifier for this model. (id: ModelReference)
modelTypestringOutput only. Type of the model resource. (MODEL_TYPE_UNSPECIFIED, LINEAR_REGRESSION, LOGISTIC_REGRESSION, KMEANS, MATRIX_FACTORIZATION, DNN_CLASSIFIER, TENSORFLOW, DNN_REGRESSOR, XGBOOST, BOOSTED_TREE_REGRESSOR, BOOSTED_TREE_CLASSIFIER, ARIMA, AUTOML_REGRESSOR, AUTOML_CLASSIFIER, PCA, DNN_LINEAR_COMBINED_CLASSIFIER, DNN_LINEAR_COMBINED_REGRESSOR, AUTOENCODER, ARIMA_PLUS, ARIMA_PLUS_XREG, RANDOM_FOREST_REGRESSOR, RANDOM_FOREST_CLASSIFIER, TENSORFLOW_LITE, ONNX, TRANSFORM_ONLY, CONTRIBUTION_ANALYSIS)
optimalTrialIdsarrayOutput only. For single-objective hyperparameter tuning models, it only contains the best trial. For multi-objective hyperparameter tuning models, it contains all Pareto optimal trials sorted by trial_id.
remoteModelInfoobjectOutput only. Remote model info (id: RemoteModelInfo)
trainingRunsarrayInformation for all training runs in increasing order of start_time.
transformColumnsarrayOutput only. This field will be populated if a TRANSFORM clause was used to train a model. TRANSFORM clause (if used) takes feature_columns as input and outputs transform_columns. transform_columns then are used to train the model.

Methods​

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
getselectprojectId, datasetId, modelIdGets the specified model resource by model ID. # IAM Permissions Requires the bigquery.models.getMetadata permission on the model.
listselectprojectId, datasetIdmaxResults, pageTokenLists all models in the specified dataset. Requires the READER dataset role. After retrieving the list of models, you can get information about a particular model by calling the models.get method. # IAM Permissions Requires the bigquery.models.list permission on the dataset.
patchupdateprojectId, datasetId, modelIdPatch specific fields in the specified model. # IAM Permissions Requires the bigquery.models.updateMetadata permission on the model.
deletedeleteprojectId, datasetId, modelIdDeletes the model specified by modelId from the dataset. # IAM Permissions Requires the bigquery.models.delete permission on the model.

Parameters​

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
datasetIdstring
modelIdstring
projectIdstring
maxResultsinteger (uint32)
pageTokenstring

SELECT examples​

Gets the specified model resource by model ID. # IAM Permissions Requires the bigquery.models.getMetadata permission on the model.

SELECT
bestTrialId,
creationTime,
defaultTrialId,
description,
encryptionConfiguration,
etag,
expirationTime,
featureColumns,
friendlyName,
hparamSearchSpaces,
hparamTrials,
labelColumns,
labels,
lastModifiedTime,
location,
modelReference,
modelType,
optimalTrialIds,
remoteModelInfo,
trainingRuns,
transformColumns
FROM google.bigquery.models
WHERE projectId = '{{ projectId }}' -- required
AND datasetId = '{{ datasetId }}' -- required
AND modelId = '{{ modelId }}' -- required
;

UPDATE examples​

Patch specific fields in the specified model. # IAM Permissions Requires the bigquery.models.updateMetadata permission on the model.

UPDATE google.bigquery.models
SET
data__bestTrialId = '{{ bestTrialId }}',
data__description = '{{ description }}',
data__encryptionConfiguration = '{{ encryptionConfiguration }}',
data__expirationTime = '{{ expirationTime }}',
data__friendlyName = '{{ friendlyName }}',
data__labels = '{{ labels }}',
data__modelReference = '{{ modelReference }}',
data__trainingRuns = '{{ trainingRuns }}'
WHERE
projectId = '{{ projectId }}' --required
AND datasetId = '{{ datasetId }}' --required
AND modelId = '{{ modelId }}' --required
RETURNING
bestTrialId,
creationTime,
defaultTrialId,
description,
encryptionConfiguration,
etag,
expirationTime,
featureColumns,
friendlyName,
hparamSearchSpaces,
hparamTrials,
labelColumns,
labels,
lastModifiedTime,
location,
modelReference,
modelType,
optimalTrialIds,
remoteModelInfo,
trainingRuns,
transformColumns;

DELETE examples​

Deletes the model specified by modelId from the dataset. # IAM Permissions Requires the bigquery.models.delete permission on the model.

DELETE FROM google.bigquery.models
WHERE projectId = '{{ projectId }}' --required
AND datasetId = '{{ datasetId }}' --required
AND modelId = '{{ modelId }}' --required
;