数据类

Agent Platform SDK 包含一些类可用来存储和读取用于训练模型的数据。每个数据相关类都表示一个 Gemini Enterprise Agent Platform 代管式数据集,该数据集可包含结构化数据、非结构化数据或 Gemini Enterprise Agent Platform Feature Store 数据。创建数据集后,您便可以使用它来训练模型。

以下主题简要介绍了 Agent Platform SDK 中的每个数据相关类。每个类对应的主题部分都包含一个代码示例,展示如何创建该类的实例。创建数据集后,您便可以使用其 ID 来对其进行检索:

dataset = aiplatform.ImageDataset('projects/my-project/location/my-region/datasets/{DATASET_ID}')

结构化数据类

以下类适用于按行和列组织的结构化数据。结构化数据通常用于存储数字、日期、值和字符串。

TabularDataset

使用此类可以处理表格数据集。您可以使用 CSV 文件、BigQuery 或 Pandas DataFrame 来创建表式数据集。如需详细了解如何对 BigQuery 数据进行分页,请参阅使用分页功能通过 BigQuery API 读取数据。如需详细了解表格数据,请参阅表格数据

以下代码展示了如何通过导入 CSV 文件来创建表格数据集。

my_dataset = aiplatform.TabularDataset.create(
    display_name="my-dataset", gcs_source=['gs://path/to/my/dataset.csv'])

以下代码展示了如何分两个不同的步骤来创建和导入表格数据集。

my_dataset = aiplatform.TextDataset.create(
    display_name="my-dataset")

my_dataset.import(
    gcs_source=['gs://path/to/my/dataset.csv'],
    import_schema_uri=aiplatform.schema.dataset.ioformat.text.multi_label_classification
)

如果您要使用 Pandas DataFrame创建表格数据集,则需要使用 BigQuery 表来暂存 Gemini Enterprise Agent Platform 数据:

my_dataset = aiplatform.TabularDataset.create_from_dataframe(
    df_source=my_pandas_dataframe,
    staging_path=f"bq://{bq_dataset_id}.table-unique"
)

TimeSeriesDataset

可使用此类来处理时序数据集。时序是一个数据集,其中包含以不同时间间隔记录的数据。该数据集包含时间以及至少一个随时间变化的变量。您可以使用时序数据集来进行预测。如需了解详情,请参阅预测概览

您可以通过 Cloud Storage 存储桶中的 CSV 文件或通过 BigQuery 表来创建代管式时序数据集。

以下代码展示了如何通过导入包含时序数据集的 CSV 数据源文件来创建 TimeSeriesDataset

my_dataset = aiplatform.TimeSeriesDataset.create(
    display_name="my-dataset", gcs_source=['gs://path/to/my/dataset.csv'])

以下代码展示了如何通过导入包含时序数据集的 BigQuery 表文件来创建 TimeSeriesDataset

my_dataset = aiplatform.TimeSeriesDataset.create(
    display_name="my-dataset", bq_source=['bq://path/to/my/bigquerydataset.train'])

非结构化数据类

以下类适用于非结构化数据,此类数据无法存储在传统的关系型数据库中。它们通常以音频、文本、视频文件的形式或作为 NoSQL 数据库进行存储。

ImageDataset

可使用此类来处理代管式图片数据集。如需创建代管式图片数据集,您需要一个 CSV 格式的数据源文件和一个 YAML 格式的架构文件。对于自定义模型,不必非提供架构。您可以在 Cloud Storage 存储桶中访问该 CSV 文件和架构。

使用图片数据实现以下目标:

以下代码展示了如何通过导入 CSV 数据源文件和 YAML 架构文件来创建图片数据集。您使用的架构文件取决于图片数据集是用于单标签分类、多标签分类还是对象检测。

my_dataset = aiplatform.ImageDataset.create(
    display_name="my-image-dataset",
    gcs_source=['gs://path/to/my/image-dataset.csv'],
    import_schema_uri=['gs://path/to/my/schema.yaml']
    )

Gemini Enterprise Agent Platform Feature Store 数据类

Gemini Enterprise Agent Platform Feature Store 是一项代管式服务,用于大规模存储、传送、管理和共享机器学习特征。

Gemini Enterprise Agent Platform Feature Store 使用由三个类组成的时序数据模型,能够记录特征随时间变化的情况。这三个类按以下层次结构顺序进行组织:

Gemini Enterprise Agent Platform Feature Store 类层次结构

如需详细了解 Gemini Enterprise Agent Platform Feature Store 数据模型, 请参阅 数据模型和资源。如需了解 Gemini Enterprise Agent Platform Feature Store 数据源要求,请参阅源数据 要求

以下类可以用于 Gemini Enterprise Agent Platform Feature Store 数据:

Featurestore

Featurestore 类表示的特征存储区资源是 Gemini Enterprise Agent Platform Feature Store 数据模型层次结构中的顶级类。 数据模型中的下一级资源是实体类型,即您创建的语义相关特征的集合。以下是一些可以对实体类型使用的 Featurestore 方法:

创建实体类型

使用 Featurestore.create_entity_type 方法和 entity_type_id 来创建实体类型资源。实体类型资源由 EntityType 类表示。entity_type_id 是字母数字,在特征存储区中必须是唯一的。以下示例展示了如何创建实体类型:

entity_type = aiplatform.featurestore.create_entity_type(
        entity_type_id=my_entity_type_name, description=my_entity_type_description
        )

传送实体类型

使用以下三种 Featurestore 方法之一传送实体数据项:

EntityType

EntityType 类表示实体类型资源,即您定义的语义相关特征的集合。例如,一个音乐类服务可能具有实体类型 musical_artistuser。您可以使用 FeatureStore.create_entity_type 方法或 EntityType.create 方法创建实体类型。以下代码展示了如何使用 EntityType.create 方法创建实体类型:

entity_type = aiplatform.EntityType.create(
        entity_type_id=my_entity_type_name, featurestore_name=featurestore_name
    )

Feature

Feature 类表示特征资源,它是某一实体类型的可衡量属性或特性。例如,musical_artist 实体类型可能具有 date_of_birthlast_name 这样的特征,用于跟踪音乐人的各种属性。特征对于某一特定实体类型必须是唯一的,但不必是全局唯一的。

创建 Feature 时,您必须指定其值类型(例如 BOOL_ARRAYDOUBLEDOUBLE_ARRAYSTRING)。以下代码示例展示了如何创建特征:

my_feature = aiplatform.Feature.create(
    feature_id='my_feature_id',
    value_type='INT64',
    entity_type_name='my_entity_type_id',
    featurestore_id='my_featurestore_id',
)

后续步骤