Gemini Enterprise Agent Platform を使用すると、メタデータとアノテーション セットを Dataset
リソースからエクスポートできます。この機能は、アノテーションの変更、追加、または削除の特定の履歴を記録として保持する場合に便利です。
Dataset をエクスポートすると、Agent Platform は Dataset のメタデータとアノテーションを含む 1 つ以上の
JSON Lines
ファイルを作成し、これらの
JSON Lines ファイルを任意の Cloud Storage ディレクトリに保存します。
画像 Dataset リソースをエクスポートできます。表形式の Dataset リソースはエクスポートできません。
Dataset をエクスポートしても、Dataset のベースとなっている画像データの追加のコピーは作成されません。エクスポート プロセスによって作成された JSON Lines ファイルには、Dataset にデータをインポートしたときに指定したデータの元の Cloud Storage URI が含まれています。
Dataset を使用して Google Cloud コンソールまたは API をエクスポートする
コンソールまたは Agent Platform API を使用して、Datasetをエクスポートできます。
Google Cloud 該当するタブの手順に沿って操作してください。
コンソール
コンソールの Agent Platform セクションで、 [データセット] ページに移動します。 Google Cloud
[リージョン] プルダウン リストで、
Datasetが保存されているロケーションを選択します。Datasetの行を探します。すべてのアノテーション セットまたは特定のアノテーション セットのメタデータとアノテーションをエクスポートできます。Datasetのすべてのアノテーション セットのメタデータとアノテーションをエクスポートする場合は、 [**View more **] をクリックします。次に、[**Export dataset**] をクリックします。これにより、Agent Platform は各アノテーション セットの JSON Lines ファイルのセットを作成します。
特定のアノテーション セットのメタデータとアノテーションをエクスポートする場合は、次の手順を行います。
[ノードを展開 ] をクリックして、
Datasetの各アノテーション セットの行を表示します。エクスポートするアノテーション セットの行で、[View more ] をクリックしてから、[Export annotation set] をクリックします。
これにより、Agent Platform は指定したアノテーション セットの JSON Lines ファイルのセットを作成します。
[データのエクスポート] ダイアログで、Agent Platform でエクスポートされた JSON Lines ファイルを保存する Cloud Storage ディレクトリを入力します。[エクスポート] をクリックします。
REST
Dataset の ID を取得する
Dataset をエクスポートするには、Dataset の数値 ID が必要です。Dataset の表示名はわかっているが ID がわからない場合は、次のセクションを展開し、API を使用して ID を取得する方法を確認します。
表示名からデータセットの ID を取得する
リクエストデータを使用する前に、 次のように置き換えます。
LOCATION:
Datasetが保存されているロケーション。例:us-central1。PROJECT_ID: [プロジェクト ID](/resource-manager/docs/creating-managing-projects#identifiers)。 。
DATASET_DISPLAY_NAME:
Datasetの表示名。
HTTP メソッドと URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_NAME
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
GOOGLE_APPLICATION_CREDENTIALS
次のコマンドを実行します。
curl -X GET \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_NAME"
PowerShell
GOOGLE_APPLICATION_CREDENTIALS
次のコマンドを実行します。
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_NAME" | Select-Object -Expand Content
次のレスポンス例は、... で省略されています。これは、
の ID を検索する場所を強調するためです。これは、
DATASET_ID の代わりとなる番号です。Dataset
{
"datasets": [
{
"name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID",
"displayName": "DATASET_DISPLAY_NAME",
...
}
]
}
または、コンソールから Dataset's の ID を取得することもできます。その場合は、Agent Platform の [データセット] ページに移動し、[ID] 列で番号を確認します。 Google Cloud
1 つ以上のアノテーション セットをエクスポートする
リクエストデータを使用する前に、 次のように置き換えます。
LOCATION:
Datasetが保存されているロケーション。例:us-central1。PROJECT_ID: [プロジェクト ID](/resource-manager/docs/creating-managing-projects#identifiers)。 。
DATASET_ID:
Datasetの数値 ID。EXPORT_DIRECTORY: Agent Platform でエクスポートされた JSON Lines ファイルを保存するディレクトリの Cloud Storage URI(
gs://で始まる)。これは、アクセスできる Cloud Storage バケットに存在している必要がありますが、ディレクトリはまだ存在していなくても構いません。FILTER: エクスポートするアノテーション セットを決定するフィルタ文字列。
Datasetのすべてのアノテーション セットのメタデータとアノテーションをエクスポートする場合は、FILTER を空の 文字列に置き換えます(または、リクエスト本文からannotationsFilterフィールド全体を省略します)。これにより、Agent Platform はアノテーション セットごとに JSON Lines ファイルのセットを作成します。特定の アノテーション セットのメタデータとアノテーションをエクスポートする場合は、FILTER を次のように置き換えます。
labels.aiplatform.googleapis.com/annotation_set_name=ANNOTATION_SET_IDこれにより、Agent Platform は 数値 ID が ANNOTATION_SET_IDのアノテーション セットに JSON Lines ファイルのセットを作成します。
指定するアノテーション セットの数値 ID を確認するには、 コンソールでアノテーション セットを表示し、URL で
annotationSetIdに続く 値を探します。 Google Cloud
HTTP メソッドと URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID:export
リクエストの本文(JSON):
{
"exportConfig": {
"gcsDestination": {
"outputUriPrefix": "EXPORT_DIRECTORY"
},
"annotationsFilter": "FILTER"
}
}
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
GOOGLE_APPLICATION_CREDENTIALS
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID:export"
PowerShell
GOOGLE_APPLICATION_CREDENTIALS
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID:export" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{
"name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID",
"metadata": {
"@type": "type.googleapis.com/google.cloud.aiplatform.v1.ExportDataOperationMetadata",
"genericMetadata": {
"createTime": "2021-02-17T00:54:58.827429Z",
"updateTime": "2021-02-17T00:54:58.827429Z"
},
"gcsOutputDirectory": "EXPORT_DIRECTORY/export-data-DATASET_DISPLAY_NAME-2021-02-17T00:54:58.734772Z"
}
}
一部のリクエストでは、完了までに長時間かかるオペレーションが実行されます。このようなリクエストではオペレーション名が返されます。そのオペレーション名を使用して、オペレーションのステータス確認やキャンセルを行うことができます。Agent Platform には、長時間実行オペレーションに対して呼び出しを行うためのヘルパー メソッドが用意されています。詳細については、 長時間実行オペレーションによる作業をご覧ください。
エクスポートされたファイルの説明
前のセクションで指定したエクスポート ディレクトリ内に、
Agent Platform は Dataset's
表示名とタイムスタンプでラベル付けされた新しいディレクトリを作成します。例:
export-data-DATASET_DISPLAY_NAME-2021-02-17T00:54:58.734772Z.
このディレクトリには、エクスポートしたアノテーション
セットごとにサブディレクトリがあります。
各アノテーション セットには、1 つ以上の JSON Lines ファイルがあります。各 JSON Lines
ファイルの各行は、アノテーション セットのデータ項目を表します。各データ項目には、データを Agent Platform
にインポートしたときに指定したメタデータとアノテーション、さらに、データをインポートした後に追加したメタデータとアノテーションが含まれている場合があります。たとえば、データのラベル付けを
リクエストした場合や、コンソールでDatasetに手動でラベルまたはアノテーションを
追加した場合は、この情報はエクスポートされたファイルに含まれます。DatasetGoogle Cloud
複数のアノテーション セットをエクスポートすると、複数の JSON Lines ファイルに同じデータ項目が表示される場合があります。たとえば、複数のアノテーション
セットを含む画像 Dataset をエクスポートする場合、1 つの JSON Lines
ファイルに単一ラベル分類アノテーションを持つデータ項目が含まれる場合があります。異なるアノテーション セットの別の JSON Lines
ファイルに、同じデータ項目が含まれていても、代わりにオブジェクト検出アノテーションが含まれている場合があります。
エクスポートされたファイルの形式は、Agent Platform へのデータのインポートに使用できる JSON Lines インポート
ファイル形式と一致します。
この形式は、データの種類(画像または表形式)と目的(オブジェクト
トラッキング、エンティティ抽出、分類など)によって異なります。
たとえば、単一ラベルの画像分類のアノテーション セットをエクスポートする場合、画像データの準備で説明されているように、各 JSON Lines ファイルの各行は gs://google-cloud-aiplatform/schema/dataset/ioformat/image_classification_single_label_io_format_1.0.0.yaml スキーマ ファイルに従ってフォーマットされます。
次のステップ
- コンソールを使用してデータにラベルを付ける方法を確認する Google Cloud 。
- Agent Platform でのデータセットの操作の詳細を確認する。