- Pantau data model dan buat peristiwa dari data tersebut menggunakan fungsi Cloud Run.
- Kirim peristiwa yang dihasilkan fungsi Cloud Run melalui saluran peristiwa Pub/Sub.
Model yang didukung
Model berikut menawarkan pembuatan peristiwa fungsi Cloud Run dan integrasi notifikasi peristiwa Pub/Sub:
Sebelum memulai
- Buat aplikasi dengan minimal node aliran data dan node model yang didukung.
- Opsional. Instal Vertex AI Vision SDK dan serap data ke dalam aplikasi Anda. Jika Anda tidak melakukannya sebelum menyiapkan notifikasi peristiwa, Anda harus melakukannya setelahnya.
- Opsional. Buat fungsi Cloud Run yang akan digunakan. Jika tidak membuat fungsi Cloud Run sebelum mengonfigurasi fungsi Cloud Run untuk memproses output model, Anda harus membuatnya selama proses tersebut.
- Opsional. Buat topik Pub/Sub yang akan digunakan. Jika tidak membuat topik Pub/Sub sebelum mengaktifkan notifikasi peristiwa model dengan Pub/Sub, Anda harus membuatnya selama proses tersebut.
- Opsional. Pilih dan buat langganan Pub/Sub. Jika tidak membuat langganan Pub/Sub sebelum mengaktifkan notifikasi peristiwa model dengan Pub/Sub, Anda harus membuatnya setelah membaca pesan dari topik.
Mengonfigurasi fungsi Cloud Run untuk memproses output model
Untuk memicu notifikasi berbasis peristiwa, Anda harus menyiapkan fungsi Cloud Run terlebih dahulu untuk memproses output model dan membuat peristiwa.
Fungsi Cloud Run Anda terhubung ke model dan memproses outputnya
sebagai tindakan pascapemrosesan. Fungsi Cloud Run yang harus Anda tampilkan adalah AppPlatformCloudFunctionResponse
. Peristiwa (appplatformeventbody
) dikirim ke topik Pub/Sub yang Anda konfigurasikan di langkah berikutnya.
Contoh fungsi Cloud Run (model analisis jumlah tamu)
Contoh fungsi Cloud Run
/**
* Responds to any HTTP request.
*
* @param {!express:Request} req HTTP request context.
* @param {!express:Response} res HTTP response context.
*/
exports.hello_http = (req, res) => {
// Logging statement can be read with cmd `gcloud functions logs read {$functionName}`.
// For more about logging, please see https://cloud.google.com/functions/docs/monitoring
// The processor output will be stored in req.body.
const messageString = constructMessage(req.body);
// Send your message to operator output with res HTTP response context.
res.status(200).send(messageString);
};
function constructMessage(data) {
// Typically, your processor output should contains appPlatformMetadata & it's designed output.
// Here we will use the occupancy analytics model as an example.
const appPlatformMetadata = data.appPlatformMetadata;
const annotations = data.annotations;
const events = [];
for(const annotation of annotations) {
events.push({
"event_message": "Event message goes here",
"payload" : {
"attr_key_goes_here" : "val_goes_here"
},
"event_id" : "event_id_goes_here"
});
}
// Typically, your cloud function should return a string represent a JSON which has two fields:
// "annotations" must follow the specification of the target model.
// "events" should be of type "AppPlatformEventBody".
const messageJson = {
"annotations": annotations,
"events": events,
};
return JSON.stringify(messageJson);
}
Gunakan petunjuk berikut untuk mengirim streaming output model ke fungsi Cloud Run Anda:
Konsol
Buka tab Applications di dasbor Vertex AI Vision.
Pilih
Lihat aplikasi di samping nama aplikasi Anda dari daftar.Klik model yang didukung untuk membuka panel samping detail model.
Di daftar pascapemrosesan pada bagian Notifikasi peristiwa, pilih fungsi Cloud Run yang ada, atau buat yang baru.
Mengaktifkan notifikasi peristiwa model dengan Pub/Sub
Setelah menyiapkan fungsi Cloud Run untuk memproses output model dan menghasilkan peristiwa, Anda dapat menyiapkan notifikasi peristiwa dengan Pub/Sub. Untuk membaca pesan dari topik, Anda juga perlu Memilih dan membuat langganan Pub/Sub.
Konsol
Buka tab Applications di dasbor Vertex AI Vision.
Pilih
Lihat aplikasi di samping nama aplikasi Anda dari daftar.Klik model yang didukung untuk membuka panel samping detail model.
Di bagian Notifikasi acara, pilih Siapkan notifikasi acara.
Di jendela opsi Siapkan Pub/Sub untuk notifikasi peristiwa yang terbuka, pilih topik Pub/Sub yang ada, atau buat topik baru.
Di kolom Frequency, tetapkan nilai bilangan bulat untuk nilai frekuensi dalam detik saat notifikasi untuk jenis peristiwa yang sama dapat dikirim.
Klik Siapkan.
Langkah berikutnya
- Baca petunjuk tentang cara men-deploy aplikasi untuk menguji notifikasi peristiwa model di Men-deploy dan membatalkan deployment aplikasi.
- Selesaikan codelab aplikasi Analisis Tingkat Keterisian Vertex AI Vision dengan pengelolaan peristiwa.
- Pelajari lebih lanjut fungsi Pub/Sub dan Cloud Run di artikel Apa itu Pub/Sub? dan Ringkasan fungsi Cloud Run.