Get model metadata
This page shows you how to get information or metadata about BigQuery ML models. You can get model metadata by:
- Using the Google Cloud console
- Using the
bq show
CLI command - Calling the
models.get
API method directly or by using the client libraries
Required permissions
To get model metadata, you must be assigned the READER
role on the dataset, or you must be assigned a project-level Identity and Access Management (IAM) role that
includes bigquery.models.getMetadata
permissions. If you are granted bigquery.models.getMetadata
permissions at the project level, you can get
metadata on models in any dataset in the project. The following predefined,
project-level IAM roles include bigquery.models.getMetadata
permissions:
-
bigquery.dataViewer
-
bigquery.dataEditor
-
bigquery.dataOwner
-
bigquery.metadataViewer
-
bigquery.admin
For more information on IAM roles and permissions in BigQuery ML, see Access control .
Get model metadata
To get metadata about models:
Console
-
In the Explorerpane, expand your project and then expand a dataset.
-
Expand the Modelsfolder in the dataset, and then click a model name to select the model.
-
Click the Detailstab. This tab displays the model's metadata, including the description, labels, model type, and training options.
bq
Issue the bq show
command with the --model
or -m
flag to display
model metadata. The --format
flag can be used to control the output.
To see only the feature columns for your model, use the --schema
flag
with the --model
flag. When you use the --schema
flag, --format
must
be set to either json
or prettyjson
.
If you are getting information about a model in a project other than
your default project, add the project ID to the dataset in the following
format: [PROJECT_ID]:[DATASET]
.
bq show --model --format=prettyjson PROJECT_ID : DATASET . MODEL
Replace the following:
-
PROJECT_ID
is your project ID. -
DATASET
is the name of the dataset. -
MODEL
is the name of the model.
The command output looks like the following when the --format=pretty
flag is used. To see full details, use the --format=prettyjson
format. The
sample output shows metadata for a logistic regression model.
+--------------+---------------------+---------------------+---------------------------+--------+-----------------+-----------------+ | Id | Model Type | Feature Columns | Label Columns | Labels | Creation Time | Expiration Time | +--------------+---------------------+---------------------+---------------------------+--------+-----------------+-----------------+ | sample_model | LOGISTIC_REGRESSION | |- column1: string | |- label_column: int64 | | 03 May 23:14:42 | | | | | |- column2: bool | | | | | | | | |- column3: string | | | | | | | | |- column4: int64 | | | | | +--------------+---------------------+---------------------+---------------------------+--------+-----------------+-----------------+
Examples:
Enter the following command to display all information about mymodel
in mydataset
. mydataset
is in your default project.
bq show --model --format=prettyjson mydataset.mymodel
Enter the following command to display all information about mymodel
in mydataset
. mydataset
is in myotherproject
, not your default project.
bq show --model --format=prettyjson myotherproject:mydataset.mymodel
Enter the following command to display only the feature columns for mymodel
in mydataset
. mydataset
is in myotherproject
, not your
default project.
bq show --model --schema --format=prettyjson \
myotherproject:mydataset.mymodel
API
To get model metadata by using the API, call the models.get
method and provide the projectId
, datasetId
, and modelId
.
Go
Before trying this sample, follow the Go setup instructions in the BigQuery quickstart using client libraries . For more information, see the BigQuery Go API reference documentation .
To authenticate to BigQuery, set up Application Default Credentials. For more information, see Set up authentication for client libraries .