借助 Vision Warehouse API,您可以使用命令行管理 Vision Warehouse 资源。
数据提取已部署应用中的关联仓库 (corpus
) 包含一个或多个媒体对象(例如视频资源)。这些媒体对象(asset
资源)包含元数据和资源注释。使用以下命令管理这些媒体对象。
创建素材资源
REST
如需创建资产资源,请使用 projects.locations.corpora.assets.create
方法发送 POST 请求。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:(可选)用户提供的资源 ID 值。在此请求中,该值以以下形式添加到请求网址中:
- https://ENDPOINT/v1/[...]/corpora/CORPUS_ID/assets?asset_id=ASSET_ID
- TIME_TO_LIVE:语料库下所有资源的存留时间 (TTL),或特定资源的 TTL。例如,对于 TTL 为 100 天的语料库,请提供值
8640000
(以秒为单位)。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets
请求 JSON 正文:
{ }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" }
更新资源资源
更新素材资源仅适用于流式视频素材资源。
REST
如需更新资产资源,请使用 projects.locations.corpora.assets.patch
方法发送 PATCH 请求。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:目标素材资源的 ID。
?updateMask=fieldToUpdate
:您可以将updateMask
应用到的可用字段之一。可用字段:- 存留时间 (TTL):
?updateMask=ttl
- 更新所有字段:
?updateMask=*
- 存留时间 (TTL):
HTTP 方法和网址:
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl
请求 JSON 正文:
{ "ttl": { "seconds": "1" } }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" }
列出仓库中的资源
REST
如需列出语料库中的资产,请使用 projects.locations.corpora.assets.list 方法发送 GET 请求。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
HTTP 方法和网址:
GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets
如需发送请求,请选择以下方式之一:
curl
执行以下命令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets"
PowerShell
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "assets": [ { "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID1", "ttl": "86400s" }, { "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID2", "ttl": "86400s" } ] }
获取资产
REST
如需获取有关资产的详细信息,请使用 projects.locations.corpora.assets.get 方法发送 GET 请求。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:目标素材资源的 ID。
HTTP 方法和网址:
GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID
如需发送请求,请选择以下方式之一:
curl
执行以下命令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID"
PowerShell
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID", "ttl": "86400s" }
删除媒体资源
以下示例会删除仓库资源,导致与该资源相关的所有注释无法访问,并从搜索结果中移除。
REST 和命令行
以下代码示例使用 projects.locations.corpora.assets.delete
方法删除仓库中的资源。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:目标素材资源的 ID。
HTTP 方法和网址:
DELETE https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID
如需发送请求,请选择以下方式之一:
curl
执行以下命令:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID"
PowerShell
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" | Select-Object -Expand Content
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/operations/OPERATION_ID" }
获取操作状态
如需获取长时间运行的操作的状态,请调用 projects.locations.operations.get
方法。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - OPERATION_ID:启动长时间运行的操作时返回的操作 ID。例如:
- projects/123456/locations/us-central1/[...]/operations/OPERATION_ID
HTTP 方法和网址:
GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/warehouseoperations/OPERATION_ID
如需发送请求,请选择以下方式之一:
curl
执行以下命令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/warehouseoperations/OPERATION_ID"
PowerShell
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/warehouseoperations/OPERATION_ID" | Select-Object -Expand Content
GetAsset
或 ListAssets
,该资源不会显示。
素材资源媒体数据管理
可以通过不同的 API 将资源的媒体内容提取到 Vision Warehouse 中。
流式视频素材资源
如需管理流式视频素材资源的媒体内容,请参阅以下说明。
使用时间分区获取视频片段素材资源
创建仓库并将视频 asset
资源存储在仓库中后,您可以获取特定的视频片段。您可以发送 ClipAssetRequest
,以获取您定义的时间范围内的媒体数据。
发送 ClipAssetRequest
时,您必须定义以下内容:
temporal_partition
- 所需剪辑的日期范围。
以下示例考虑了一个仓库,其中包含一段 2021 年 9 月初的资产(安全摄像头拍摄的视频),该资产尚未超过其存留时间 (TTL)。
若要获取从 2021 年 9 月 1 日 2:51:59(格林威治标准时间)到 2021 年 9 月 1 日 2:52:30(格林威治标准时间)这一时间段的剪辑,您首先需要将开始时间和结束时间转换为 google.protobuf.Timestamp,该时间以自 Unix 纪元以来的时长表示。转换开始时间和结束时间后,您可以发送类似于以下内容的请求:
REST
如需获取视频片段的相关详情,请使用 projects.locations.corpora.assets.clip 方法发送 GET 请求。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:目标素材资源的 ID。
- START_TIME:分区的开始时间,以自 Unix 纪元以来的时长表示(例如
1630464719
)。 - END_TIME:分区结束时间,以自 Unix 纪元以来的时长表示(例如,
1630464750
)。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:clip
请求 JSON 正文:
{ "temporal_partition": { "start_time": { "seconds": START_TIME }, "end_time": { "seconds": END_TIME } } }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:clip"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:clip" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "time_indexed_uris" : { "temporal_partition" : { "start_time" : { "seconds": 1630464719 }, "end_time" : { "seconds": 1630464729 } }, "uri": "[...]" } }
time_indexed_uris
包含指向检索到的剪辑的 URI,以及详细说明剪辑开始时间和结束时间的 temporal_partition
。
您可以在最多 12 小时内访问 uri
字段中提供的链接。
返回的剪辑将仅显示 start_time
之后但 end_time
之前可用的第一个内容的短剪辑。此内容可能会超出请求中的时间范围。例如,在示例请求中,返回的剪辑仅涵盖 1630464719
之后的 10 秒剪辑,即使在 1630464729
之后和 end_time
(1630464750
)之前可能还有更多内容。
返回的剪辑时长可能与您请求的时长不完全一致。此行为是预期行为,可能是由多种原因造成的:
- 请求的时间范围超出了 100MB 的数据大小上限。
- 所请求的时间范围内包含的数据已超过其存留时间 (TTL)。
- 所请求的时间范围内没有数据。
使用 HTTP 直播获取视频片段素材资源
创建数据仓库并提取视频数据(数据仓库 assets
)后,您可以请求获取 HTTP Live Streaming (HLS) 视频流清单的 URI,以获取一系列特定时间段的视频片段。您可以发送 GenerateHlsUriRequest
,以获取一系列指定时间范围内的媒体数据。
发送 GenerateHlsUriRequest
时,您必须定义以下内容:
temporal_partitions
- 您想要播放的内容的日期范围集合。总时长应小于 24 小时。
以下示例使用了一个仓库资产,其中包含 2021 年 9 月的监控摄像头拍摄的视频,该视频尚未超过其存留时间 (TTL)。示例请求正文指定了两个视频时间段:
- 2021 年 9 月 1 日 2:51:59(格林尼治标准时间)至 2021 年 9 月 1 日 2:52:30(格林尼治标准时间)
- 2021 年 9 月 1 日 4:59:00(格林尼治标准时间)至 2021 年 9 月 1 日 5:05:30(格林尼治标准时间)
您首先需要将开始时间和结束时间转换为 google.protobuf.Timestamp 格式,该格式以自 Unix 纪元以来的时长表示。将这些时间转换为 Unix 时间后,您可以发送类似于以下内容的请求:
REST 和命令行
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:目标素材资源的 ID。
- START_TIME:分区的开始时间,以自 Unix 纪元以来的时长表示(例如
1630464719
)。 - END_TIME:分区结束时间,以自 Unix 纪元以来的时长表示(例如,
1630464750
)。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:generateHlsUri
请求 JSON 正文:
{ "temporal_partitions": { "start_time": { "seconds": 1630464719 }, "end_time": { "seconds": 1630464750 } }, "temporal_partitions": { "start_time": { "seconds": 1630472340 }, "end_time": { "seconds": 1630472730 } } }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:generateHlsUri"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:generateHlsUri" | Select-Object -Expand Content
响应中的 uri
包含一个链接,用于下载与所请求时间对应的 HLS 清单,而每个 temporal_partitions
详细说明了相应视频流中包含的片段的开始时间和结束时间。uri
字段中提供的链接最多可访问 12 小时。
一个响应可能包含多个 temporal_partitions
对象。每个 temporal_partitions
对象都表示所请求时间范围内的单个剪辑。如果源媒体在所请求的时间范围内不包含任何数据,或者请求包含不连续的日期范围,则剪辑会被拆分。在此示例中,系统返回了多个 temporal_partitions
,因为请求要求提供 2021 年 9 月 1 日两个不同时间的数据。
返回的流可能不具有您请求的确切长度。这是正常现象,原因可能如下:
- 所请求的时间范围包含已超过其存留时间的数据
- 所请求的时间范围内没有数据
{ "uri": "[...]", "temporal_partitions": { "start_time": { "seconds": 1630464719 }, "end_time": { "seconds": 1630464750 } }, "temporal_partitions": { "start_time": { "seconds": 1630472340 }, "end_time": { "seconds": 1630472730 } } }
通过 HLS 观看直播
您可以访问当前正在提取的内容的 HTTP 直播 (HLS)。
发送 GenerateHlsUriRequest
以获取指向此 HLS 视频流清单的 URI,该 URI 会随着新内容的提取而更新。直播包含三分钟之前显示的内容,在接收停止时停止,并在新内容开始时重新开始。发送 GenerateHlsUriRequest
时,请定义 live_view_enabled
。此选项用于专门显示资产的直播,最多包含 3 分钟的积压数据。将其设置为 true。
您可以发送类似于以下内容的请求:
REST 和命令行
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:目标素材资源的 ID。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:generateHlsUri
请求 JSON 正文:
{ "live_view_enabled": true }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:generateHlsUri"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:generateHlsUri" | Select-Object -Expand Content
响应中的 uri
包含指向 HLS 清单的链接,该清单对应于一个内容列表,该列表会随着新视频数据的提取而不断更新。uri
字段中提供的链接最多可访问 12 小时。
{ "uri": "[...]" }
图片素材资源
您可以使用 UploadAsset API 将图片上传到素材资源,以便稍后进行处理。
REST 和命令行
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:目标素材资源的 ID。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:upload
请求 JSON 正文:
{ "asset_source": { "asset_gcs_source": { "gcs_uri": "GCS_URI" } } }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:upload"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:upload" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/operations/OPERATION_ID", }
您可以使用 ImportAssets API 将一批图片及其注释导入到语料库中。
ImportAsset 请求的 Cloud Storage 文件需要采用 JSONL 格式。在该文件中,每一行对应一个素材资源,并将转换为 InputImageAsset
proto。例如,
{"gcsUri":"gs://test/test1.png","assetId":"asset1","annotations":[{"key":"title","value":{"strValue":"cat"}}]}
{"gcsUri":"gs://test/test2.png","assetId":"asset2","annotations":[{"key":"title","value":{"strValue":"dog"}}]}
{"gcsUri":"gs://test/test3.png","assetId":"asset3","annotations":[{"key":"title","value":{"strValue":"rabbit"}}]}
在给定时间,一个语料库只能执行一项 ImportAsset 操作。同一项目内一次只能进行 5 项 ImportAsset 操作。
REST 和命令行
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets:import
请求 JSON 正文:
{ "parent": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID, "assets_gcs_uri": GCS_URI }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets:import"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets:import" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/operations/OPERATION_ID", }
上传包含图片的素材资源或导入包含图片和注释的素材资源后,您可以分析整个语料库,以便日后搜索所有图片内容。
REST 和命令行
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID:analyze
请求 JSON 正文:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID:analyze"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID:analyze" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/operations/OPERATION_ID", }
批量视频素材资源
您可以使用 UploadAsset API 将视频上传到资源,以便稍后进行处理。UploadAsset API 支持常见的视频格式,包括 MP4、AVI、FLV、MKV、MOV、MXF、WMV 以及可由 FFmpeg 解码的格式。
REST 和命令行
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:目标素材资源的 ID。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:upload
请求 JSON 正文:
{ "asset_source": { "asset_gcs_source": { "gcs_uri": "GCS_URI" } } }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:upload"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:upload" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/operations/OPERATION_ID", }
在上传包含视频的资产后,您可以通过调用 GenerateRetrievalUrl API 来检索 URI。如果上传的视频位于单独的项目中,您需要向 Vertex AI Vision 服务账号授予权限。(前往 IAM,勾选“包括 Google 提供的角色授权”复选框,然后搜索“Cloud Vision AI 服务代理”)才能访问该服务代理。
REST 和命令行
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:目标素材资源的 ID。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:generateHlsUri
请求 JSON 正文:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:generateHlsUri"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:generateHlsUri" | Select-Object -Expand Content
响应中的 uri
包含指向 HLS 清单的链接,该清单对应于一个内容列表,该列表会随着新视频数据的提取而不断更新。uri
字段中提供的链接最多可访问 12 小时。
{ "uri": "[...]" }
将资产与视频一起上传后,您可以分析该资产,以便日后搜索视频内容。
REST 和命令行
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:目标素材资源的 ID。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:analyze
请求 JSON 正文:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:analyze"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID:analyze" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID/operations/OPERATION_ID" }
素材资源集合管理
集合是原始资源的引用 (CollectionItems) 的容器。您可以向集合中添加素材资源,也可以在集合中进行搜索。
创建集合资源
REST
如需创建资产资源,请使用 projects.locations.corpora.collections.create
方法发送 POST 请求。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- COLLECTION_ID:目标集合的 ID。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections
请求 JSON 正文:
{ "collection": { "display_name": "DISPLAY_NAME", "description": "COLLECTION_DESCRIPTION" } }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.visionai.v1.CreateCollectionMetadata" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.visionai.v1.Collection", "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID", "displayName": "DISPLAY_NAME", "description": "COLLECTION_DESCRIPTION" } }
更新集合资源
REST
如需更新资产资源,请使用 projects.locations.corpora.collections.patch
方法发送 PATCH 请求。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- COLLECTION_ID:目标集合的 ID。
?updateMask=fieldToUpdate
:您可以将updateMask
应用到的可用字段之一。可用字段:- 显示名:
?updateMask=display_name
- 说明:
?updateMask=description
- 更新所有字段:
?updateMask=*
- 显示名:
- UPDATED_FIELD_VALUE:指定字段的新值。在此示例中,集合资源的新显示名称由用户提供。
HTTP 方法和网址:
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID?update_mask=display_name
请求 JSON 正文:
{ "displayName": "UPDATED_FIELD_VALUE", "description": "Original description" }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID?update_mask=display_name"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID?update_mask=display_name" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/corpora/CORPORA_ID/collections/COLLECTION_ID", "displayName": "UPDATED_FIELD_VALUE", "description": "Original description" }
列出数据仓库中的集合
REST
如需列出语料库中的集合,请使用 projects.locations.corpora.collections.list
方法发送 GET 请求。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - COLLECTION_ID:目标集合的 ID。
HTTP 方法和网址:
GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections
如需发送请求,请选择以下方式之一:
curl
执行以下命令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections"
PowerShell
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "corpora": [ { "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID1", "displayName": "COLLECTION_DISPLAYNAME1", "description": "COLLECTION_DESCRIPTION1" }, { "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID2", "displayName": "COLLECTION_DISPLAYNAME2", "description": "COLLECTION_DESCRIPTION2" }, ], "nextPageToken": "ChM3MDk3NTk3Nzc2OTk3NDA3OTkzEAo" }
获取集合
REST
如需获取有关集合的详细信息,请使用 projects.locations.corpora.collections.get
方法发送 GET 请求。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- COLLECTION_ID:目标集合的 ID。
HTTP 方法和网址:
GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID
如需发送请求,请选择以下方式之一:
curl
执行以下命令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID"
PowerShell
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID", "displayName": "CCOLLECTION_DISPLAYNAME", "description": "CCOLLECTION__DESCRIPTION" }
删除收藏集
使用以下代码示例删除集合。如需删除集合,必须先移除其中的所有项目。
REST 和命令行
以下代码示例使用 projects.locations.corpora.collections.delete
方法删除 collection
资源。
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- COLLECTION_ID:目标集合的 ID。
HTTP 方法和网址:
DELETE https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID
如需发送请求,请选择以下方式之一:
curl
执行以下命令:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID"
PowerShell
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID" | Select-Object -Expand Content
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID/operations/OPERATION_ID" }
将内容添加到集合中
您可以向集合添加素材资源项。
REST 和命令行
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- ASSET_ID:目标素材资源的 ID。
- COLLECTION_ID:目标集合的 ID。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID:addCollectionItem
请求 JSON 正文:
{ "item": { "collection": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID, "type": "ASSET", "item_resource": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" } }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID:addCollectionItem"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID:addCollectionItem" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "item": { "collection": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID, "type": "ASSET", "item_resource": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" } }
从合集中移除内容
您可以从集合中移除素材资源项。
REST 和命令行
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- COLLECTION_ID:目标集合的 ID。
- ASSET_ID:目标素材资源的 ID。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID:removeCollectionItem
请求 JSON 正文:
{ "item": { "collection": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID, "type": "ASSET", "item_resource": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" } }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID:removeCollectionItem"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID:removeCollectionItem" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "item": { "collection": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID, "type": "ASSET", "item_resource": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" } }
查看集合中的所有内容
您可以查看集合中的所有内容。
REST 和命令行
在使用任何请求数据之前,请先进行以下替换:
- REGIONALIZED_ENDPOINT:端点可能包含与
LOCATION_ID
匹配的前缀,例如europe-west4-
。详细了解 区域化端点。 - PROJECT_NUMBER:您的 Google Cloud 项目编号。
- LOCATION_ID:您使用 Vertex AI Vision 的区域。例如:
us-central1
、europe-west4
。请参阅可用区域。 - CORPUS_ID:目标语料库的 ID。
- COLLECTION_ID:目标集合的 ID。
- ASSET_ID:目标素材资源的 ID。
HTTP 方法和网址:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID:viewCollectionItems
请求 JSON 正文:
{ "collection": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID, "page_size": "50" }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID:viewCollectionItems"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID:viewCollectionItems" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "next_page_token": "jfyq45", "items": { "collection": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID, "type": "ASSET", "item_resource": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" }, "items": { "collection": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/collections/COLLECTION_ID, "type": "ASSET", "item_resource": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" } }