Getting model metadata

Overview

This page shows you how to get information or metadata about BigQuery ML models. You can get model metadata by:

  • Using the GCP 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 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. For more information on dataset-level roles, see Primitive roles for datasets in the BigQuery documentation.

Getting model metadata

To get metadata about models:

Console

  1. In the navigation panel, in the Resources section, expand your project and select a dataset.

  2. Click the model name.

  3. Below the query editor box, click Details. This page displays the model's metadata including the description, labels, details, and training options.

    Model metadata in the Google Cloud Platform Console

CLI

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]

Where:

  • [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.

What's next

หน้านี้มีประโยชน์ไหม โปรดแสดงความคิดเห็น