Setelah membuat aliran penyerapan data dan menambahkan node pemrosesan ke aplikasi, Anda harus memilih tempat untuk mengirim data yang diproses. Salah satu opsinya adalah menerima output aplikasi live stream secara langsung sehingga Anda dapat menindaklanjuti analisis real-time ini.
Secara umum, Anda mengonfigurasi aplikasi untuk menyimpan output model ke
Google Cloud data warehouse seperti Media Warehouse Gemini Enterprise Agent Platform Vision atau BigQuery.
Setelah data disimpan di salah satu gudang data ini, data tersebut dapat digunakan untuk tugas analisis offline berdasarkan grafik aplikasi Anda. Namun, Anda juga dapat menerima output model
dengan cara live streaming. Anda dapat meminta Gemini Enterprise Agent Platform Vision meneruskan output model ke resource streaming, dan Anda dapat menggunakan alat command line (vaictl) atau Gemini Enterprise Agent Platform Vision API untuk menggunakannya secara real-time.
Dengan asumsi Anda memiliki grafik aplikasi berikut yang memiliki tiga node berikut:
- Node sumber data "Input Stream" (
input-stream) - Node pemrosesan "Jumlah Hunian" (
occupancy-count) - Tujuan output aplikasi "Media Warehouse" (
warehouse)
Output aplikasi saat ini dikirim dari stream ke proses penghitungan hunian, lalu ke Media Warehouse Vision Platform Agen Gemini Enterprise tempat output tersebut disimpan.
Konfigurasi aplikasi API:
|
{
"applicationConfigs": {
"nodes": [
{
"displayName": "Input Stream",
"name": "input-stream",
"processor": "builtin:stream-input"
},
{
"displayName": "Occupancy Count",
"name": "occupancy-count",
"nodeConfig": {
"occupancyCountConfig": {
"enablePeopleCounting": true,
"enableVehicleCounting": true
}
},
"parents": [
{
"parentNode": "input-stream"
}
],
"processor": "builtin:occupancy-count"
},
{
"displayName": "Media Warehouse",
"name": "warehouse",
"nodeConfig": {
"mediaWarehouseConfig": {
"corpus": "projects/PROJECT_ID/locations/LOCATION_ID/corpora/CORPUS_ID",
"ttl": "86400s"
}
},
"parents": [
{
"parentNode": "input-stream"
},
{
"parentNode": "occupancy-count"
}
],
"processor": "builtin:media-warehouse"
}
]
}
} |
Mengaktifkan output streaming (konsolGoogle Cloud )
Anda dapat mengaktifkan output streaming di Google Cloud konsol saat pertama kali men-deploy model atau saat Anda menghentikan deployment, lalu men-deploy ulang model.
Konsol
Buka tab Aplikasi di dasbor Vision Gemini Enterprise Agent Platform.
Di samping nama aplikasi Anda dalam daftar, pilih Lihat aplikasi.
Dari halaman pembuat grafik aplikasi, klik tombol Deploy.
Di menu opsi Deploy application yang terbuka, pilih Enable output streaming.

Dari menu dropdown Model yang sesuai, pilih model yang ingin Anda aktifkan output streaming-nya.
Klik Deploy
Mengaktifkan output streaming (API)
Memperbarui node aplikasi
Anda dapat mengupdate konfigurasi aplikasi di command line sehingga node model secara khusus mengirimkan output ke stream.
Setelah menyelesaikan langkah ini, Anda memiliki opsi untuk memperbarui instance aplikasi guna menentukan resource aliran yang menerima data output node analisis.
REST
Contoh ini menggunakan metode projects.locations.applications.patch. Permintaan ini mengupdate konfigurasi aplikasi API dari aplikasi contoh
sebelumnya agar node occupancy-count mengirimkan anotasi
output ke aliran Vision Gemini Enterprise Agent Platform. Perilaku ini diaktifkan oleh
kolom output_all_output_channels_to_stream.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT: Project ID atau nomor project Anda. Google Cloud
- LOCATION_ID: Region tempat Anda menggunakan
Agent Platform Vision. Misalnya:
us-central1,europe-west4. Lihat wilayah yang tersedia. - APPLICATION_ID: ID aplikasi target Anda.
Metode HTTP dan URL:
PATCH https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID
Meminta isi JSON:
{
"applicationConfigs": {
"nodes": [
{
"displayName": "Input Stream",
"name": "input-stream",
"processor": "builtin:stream-input"
},
{
"displayName": "Occupancy Count",
"name": "occupancy-count",
"nodeConfig": {
"occupancyCountConfig": {
"enablePeopleCounting": true,
"enableVehicleCounting": true
}
},
"parents": [
{
"parentNode": "input-stream"
}
],
"processor": "builtin:occupancy-count",
"output_all_output_channels_to_stream": true
}
]
}
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$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://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID" | Select-Object -Expand Content
200 OK tanpa error, dan layanan akan mengupdate resource aplikasi sebagaimana mestinya.
Mengupdate instance aplikasi
Contoh sebelumnya menunjukkan cara memperbarui aplikasi, yang memungkinkan node target mengirim output ke aliran. Setelah mengaktifkan opsi ini, Anda dapat memperbarui instance aplikasi secara opsional untuk menentukan resource streaming yang menerima data output node analisis.
Jika Anda tidak menentukan stream dengan perintah ini, platform aplikasi akan terus menggunakan stream default yang dibuat saat node aplikasi di-deploy.
Anda harus membuat resource stream yang akan menerima output dari node
sebelum Anda mengirim permintaan berikut.
REST
Contoh ini menggunakan metode
projects.locations.applications.updateApplicationInstances. Permintaan ini menggunakan konfigurasi aplikasi API yang diperbarui dari aplikasi contoh sebelumnya. Perintah update sebelumnya menetapkan node occupancy-count agar dapat mengirim anotasi output ke aliran Vision Gemini Enterprise Agent Platform. Perintah ini
mengupdate instance aplikasi untuk mengirim data dari node occupancy-count
produser tersebut ke resource stream yang ada.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT: Project ID atau nomor project Anda. Google Cloud
- LOCATION_ID: Region tempat Anda menggunakan
Agent Platform Vision. Misalnya:
us-central1,europe-west4. Lihat wilayah yang tersedia. - APPLICATION_ID: ID aplikasi target Anda.
inputResources: Resource input (atau beberapa resource) untuk instance aplikasi saat ini. Ini adalah array objek yang berisi kolom berikut:consumerNode: Nama node grafik yang menerima resource input.inputResource: Nama lengkap resource input.
outputResources.outputResource: Resourcestreamuntuk menampilkan data aplikasi.outputResources.producerNode: Nama node produsen output aplikasi. Dalam contoh ini ini adalah node analisis,occupancy-count.- INSTANCE_ID: ID instance aplikasi.
Metode HTTP dan URL:
POST https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID:updateApplicationInstances
Meminta isi JSON:
{
"applicationInstances": [
{
"instance": {
"inputResources": [
{
"consumerNode": "input-stream",
"inputResource": "projects/PROJECT_NUMBER/locations/LOCATION_ID/clusters/application-cluster-0/streams/INPUT_STREAM_ID"
}
],
"outputResources":[
{
"outputResource": "projects/PROJECT_NUMBER/locations/LOCATION_ID/clusters/application-cluster-0/streams/OUTPUT_STREAM_ID",
"producerNode": "occupancy-count"
}
]
},
"instanceId": INSTANCE_ID
}
]
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID:updateApplicationInstances"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$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://visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/applications/APPLICATION_ID:updateApplicationInstances" | Select-Object -Expand Content
200 OK tanpa error, dan layanan akan mengupdate instance aplikasi
dengan tepat.