Mulai menggunakan rekomendasi media
Anda dapat dengan cepat membuat aplikasi rekomendasi media yang canggih. Rekomendasi media memungkinkan audiens Anda menemukan konten yang lebih dipersonalisasi, seperti apa yang akan ditonton atau dibaca selanjutnya, dengan hasil berkualitas Google yang disesuaikan berdasarkan tujuan pengoptimalan.
Untuk informasi umum tentang Vertex AI Search untuk media, lihat Pengantar penelusuran dan rekomendasi media.Dalam tutorial memulai ini, Anda akan menggunakan set data Movielens untuk menunjukkan cara mengupload katalog konten media dan peristiwa pengguna ke Vertex AI Search serta melatih model rekomendasi film yang dipersonalisasi. Set data Movielens berisi katalog film (dokumen) dan rating film pengguna (peristiwa pengguna).
Dalam tutorial ini, Anda akan melatih model rekomendasi jenis Lainnya yang Mungkin Anda Sukai yang dioptimalkan untuk rasio klik-tayang (CTR). Setelah dilatih, model dapat merekomendasikan film berdasarkan ID pengguna dan film awal.
Untuk memenuhi persyaratan data minimum bagi model, setiap rating film positif (4 atau lebih tinggi) diperlakukan sebagai peristiwa item tampilan.
Perkiraan waktu untuk menyelesaikan tutorial ini:
- Langkah awal untuk mulai melatih model: ~1,5 jam.
- Menunggu model dilatih: ~24 jam. (Melatih model)
- Mengevaluasi prediksi model dan melakukan pembersihan: ~30 menit. (Melihat rekomendasi pratinjau)
Jika Anda telah menyelesaikan tutorial Memulai penelusuran media dan masih memiliki penyimpanan data (nama yang disarankan quickstart-media-data-store
), Anda dapat menggunakan penyimpanan data tersebut, bukan
membuat penyimpanan data lain. Dalam hal ini, Anda harus memulai tutorial di
Membuat aplikasi untuk rekomendasi media.
Tujuan
- Pelajari cara mengimpor dokumen media dan data peristiwa pengguna dari BigQuery ke Vertex AI Search.
- Melatih dan mengevaluasi model rekomendasi.
Sebelum mengikuti tutorial ini, pastikan Anda telah melakukan langkah-langkah di Sebelum memulai.
Jika ingin mengikuti panduan langkah demi langkah untuk tugas ini langsung di Konsol Google Cloud, klik Pandu saya:
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI Agent Builder, Cloud Storage, BigQuery APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI Agent Builder, Cloud Storage, BigQuery APIs.
Menyiapkan set data
Anda menggunakan Cloud Shell untuk mengimpor set data Movielens dan menyusun ulang set data untuk Vertex AI Search untuk media.
Buka Cloud Shell
- Buka konsol Google Cloud.
- Pilih project Google Cloud Anda.
- Catat project ID di kartu Project info di halaman dasbor. Anda memerlukan project ID untuk prosedur berikut.
Klik tombol Activate Cloud Shell di bagian atas konsol. Sesi Cloud Shell akan terbuka di dalam frame baru di bagian bawah Konsol Google Cloud dan menampilkan perintah command line.
Mengimpor set data
Set data Movielens tersedia di bucket Cloud Storage publik untuk mempermudah impor.
Jalankan perintah berikut menggunakan project ID Anda untuk menetapkan project default untuk command line.
gcloud config set project PROJECT_ID
Buat set data BigQuery:
bq mk movielens
Muat
movies.csv
ke tabel BigQuerymovies
baru:bq load --skip_leading_rows=1 movielens.movies \ gs://cloud-samples-data/gen-app-builder/media-recommendations/movies.csv \ movieId:integer,title,genres
Muat
ratings.csv
ke tabel BigQueryratings
baru:bq load --skip_leading_rows=1 movielens.ratings \ gs://cloud-samples-data/gen-app-builder/media-recommendations/ratings.csv \ userId:integer,movieId:integer,rating:float,time:timestamp
Membuat tampilan BigQuery
Pada langkah ini, Anda akan menyusun ulang set data Movielens agar mengikuti format yang diharapkan untuk rekomendasi
media.
Rekomendasi media memerlukan data peristiwa pengguna untuk membuat model.
Untuk panduan ini, Anda akan membuat peristiwa view-item
palsu selama 90 hari terakhir
dari rating positif (< 4
).
Buat tampilan yang mengonversi tabel film menjadi skema
Document
yang ditentukan Google:bq mk --project_id=PROJECT_ID \ --use_legacy_sql=false \ --view ' WITH t AS ( SELECT CAST(movieId AS string) AS id, SUBSTR(title, 0, 128) AS title, SPLIT(genres, "|") AS categories FROM `PROJECT_ID.movielens.movies`) SELECT id, "default_schema" as schemaId, null as parentDocumentId, TO_JSON_STRING(STRUCT(title as title, categories as categories, CONCAT("http://mytestdomain.movie/content/", id) as uri, "2023-01-01T00:00:00Z" as available_time, "2033-01-01T00:00:00Z" as expire_time, "movie" as media_type)) as jsonData FROM t;' \ movielens.movies_view
Sekarang, tampilan baru memiliki skema yang diharapkan Vertex AI Agent Builder API.
Buka halaman BigQuery di konsol Google Cloud.
Di panel Penjelajah, luaskan nama project Anda, luaskan set data
movielens
, lalu klikmovies_view
untuk membuka halaman kueri untuk tampilan ini.Buka tab Penjelajah tabel.
Di panel Kueri yang dihasilkan, klik tombol Salin ke kueri. Editor kueri akan terbuka.
Klik Jalankan untuk melihat data film dalam tampilan yang Anda buat.
Buat fictive peristiwa pengguna dari rating film dengan menjalankan perintah Cloud Shell berikut:
bq mk --project_id=PROJECT_ID \ --use_legacy_sql=false \ --view ' WITH t AS ( SELECT MIN(UNIX_SECONDS(time)) AS old_start, MAX(UNIX_SECONDS(time)) AS old_end, UNIX_SECONDS(TIMESTAMP_SUB( CURRENT_TIMESTAMP(), INTERVAL 90 DAY)) AS new_start, UNIX_SECONDS(CURRENT_TIMESTAMP()) AS new_end FROM `PROJECT_ID.movielens.ratings`) SELECT CAST(userId AS STRING) AS userPseudoId, "view-item" AS eventType, FORMAT_TIMESTAMP("%Y-%m-%dT%X%Ez", TIMESTAMP_SECONDS(CAST( (t.new_start + (UNIX_SECONDS(time) - t.old_start) * (t.new_end - t.new_start) / (t.old_end - t.old_start)) AS int64))) AS eventTime, [STRUCT(movieId AS id, null AS name)] AS documents, FROM `PROJECT_ID.movielens.ratings`, t WHERE rating >= 4;' \ movielens.user_events
Mengaktifkan Vertex AI Agent Builder
Di konsol Google Cloud, buka halaman Agent Builder.
Baca dan setujui Persyaratan Layanan, lalu klik Lanjutkan dan aktifkan API.
Membuat aplikasi untuk rekomendasi media
Prosedur di bagian ini memandu Anda membuat dan men-deploy aplikasi rekomendasi media.
Di konsol Google Cloud, buka halaman Agent Builder.
Klik
Create app .Di halaman Buat aplikasi, pada bagian Rekomendasi media, klik Buat.
Di kolom Nama aplikasi, masukkan nama untuk aplikasi Anda, seperti
quickstart-media-recommendations
. ID aplikasi Anda akan muncul di bagian nama aplikasi.Di bagian Jenis rekomendasi, pastikan Lainnya yang mungkin Anda sukai dipilih.
Di bagian Tujuan Bisnis, pastikan Rasio klik-tayang (CTR) dipilih.
Klik Lanjutkan.
Jika Anda telah menyelesaikan tutorial Memulai penelusuran media dan masih memiliki penyimpanan data (nama yang disarankan
quickstart-media-data-store
), pilih penyimpanan data tersebut, klik Buat, lalu lanjutkan ke Melatih model rekomendasi.Di halaman Data Store, klik Create data store.
Masukkan nama tampilan untuk penyimpanan data Anda, seperti
quickstart-media-data-store
, lalu klik Create.Pilih penyimpanan data yang baru saja Anda buat, lalu klik Create untuk membuat aplikasi.
Mengimpor data
Selanjutnya, impor data film dan peristiwa pengguna yang diformat sebelumnya.
Mengimpor dokumen
Di bagian Sumber native pada halaman Impor dokumen, pilih BigQuery.
Masukkan nama tampilan BigQuery
movies
yang Anda buat, lalu klik Import.PROJECT_ID.movielens.movies_view
Tunggu hingga semua dokumen diimpor, yang akan memerlukan waktu sekitar 15 menit. Setelah selesai, akan ada 86.537 dokumen.
Anda dapat memeriksa tab Aktivitas untuk mengetahui status operasi impor. Setelah impor selesai, status operasi impor akan berubah menjadi Selesai.
Mengimpor peristiwa pengguna
Pada tab Peristiwa, klik Impor Peristiwa.
Di bagian Sumber native pada halaman Impor dokumen, pilih BigQuery.
Masukkan nama tampilan BigQuery
user_events
yang Anda buat, lalu klik Import.PROJECT_ID.movielens.user_events
Tunggu hingga minimal satu juta peristiwa telah diimpor sebelum melanjutkan ke langkah berikutnya, untuk memenuhi persyaratan data guna melatih model baru.
Anda dapat memeriksa tab Aktivitas untuk mengetahui status operasi. Proses ini memerlukan waktu sekitar satu jam untuk diselesaikan karena Anda mengimpor jutaan baris.
Untuk melihat apakah persyaratan telah terpenuhi, buka tab Kualitas data > Persyaratan. Meskipun setelah peristiwa pengguna diimpor, tab Persyaratan mungkin memerlukan waktu beberapa saat untuk memperbarui statusnya menjadi Persyaratan data terpenuhi.
Melatih model rekomendasi
Buka halaman Konfigurasi.
Klik tab Penayangan. Konfigurasi penayangan telah dibuat.
Jika ingin menyesuaikan setelan Penurunan rekomendasi atau Diversifikasi hasil, Anda dapat melakukannya di halaman ini.
Klik tab Pelatihan.
Setelah persyaratan data terpenuhi, model akan mulai dilatih secara otomatis. Anda dapat melihat status pelatihan dan penyesuaian di halaman ini.
Mungkin perlu waktu beberapa hari agar model dilatih dan siap untuk mengirim kueri. Kolom Ready to query menunjukkan Yes saat proses selesai. Anda perlu memuat ulang halaman untuk melihat perubahan Tidak menjadi Ya.
Pratinjau rekomendasi
Setelah model siap untuk membuat kueri:
Di menu navigasi, klik
Pratinjau .Klik kolom Document ID. Daftar ID dokumen akan muncul.
Masukkan ID dokumen (film) seed, seperti
4993
untuk "The Lord of the Rings: The Fellowship of the Ring (2001)".Pilih nama Konfigurasi penayangan dari menu drop-down.
Klik Dapatkan rekomendasi. Daftar dokumen yang direkomendasikan akan muncul.
Men-deploy aplikasi untuk data terstruktur
Tidak ada widget rekomendasi untuk men-deploy aplikasi. Untuk menguji aplikasi sebelum deployment:
Buka halaman Data, tab Dokumen, lalu salin ID dokumen.
Buka halaman Integrasi. Halaman ini menyertakan contoh perintah untuk metode
servingConfigs.recommend
di REST API.Tempel ID dokumen yang Anda salin sebelumnya ke kolom Document ID.
Biarkan kolom User Pseudo ID apa adanya.
Salin contoh permintaan dan jalankan di Cloud Shell.
Untuk mendapatkan bantuan dalam mengintegrasikan aplikasi rekomendasi ke aplikasi web Anda, lihat contoh kode di Mendapatkan rekomendasi media.
Pembersihan
Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut.
Anda dapat menggunakan kembali penyimpanan data yang dibuat untuk penelusuran media dalam tutorial Memulai penelusuran media. Coba tutorial tersebut sebelum melakukan prosedur pembersihan ini.
- Untuk menghindari tagihan Google Cloud yang tidak perlu, gunakan Konsol Google Cloud untuk menghapus project jika Anda tidak memerlukannya.
- Jika Anda membuat project baru untuk mempelajari Vertex AI Agent Builder dan Anda tidak lagi memerlukan project tersebut, hapus project tersebut.
- Jika Anda menggunakan project Google Cloud yang sudah ada, hapus resource yang dibuat untuk menghindari tagihan pada akun Anda. Untuk mengetahui informasi selengkapnya, lihat Menghapus aplikasi.
- Ikuti langkah-langkah di Menonaktifkan Vertex AI Agent Builder.
Jika Anda membuat set data BigQuery, hapus di Cloud Shell:
bq rm --recursive --dataset movielens