Membangun aplikasi meja bantuan karyawan universal tanpa kode dengan Vertex AI Search

1. Pengantar

Dalam codelab ini, Anda akan mem-build aplikasi helpdesk karyawan universal tanpa kode menggunakan Vertex AI Search.

Anggaplah Anda bekerja di Cymbal, sebuah perusahaan retail global. Karyawan sering kali memiliki pertanyaan seperti "Apa kebijakan untuk memesan perjalanan bisnis?" atau "Berapa banyak unit sepatu kets yang kita miliki?".

Biasanya, Anda harus login ke sistem yang sama sekali berbeda untuk menemukan jawaban atas pertanyaan ini. Selain berurusan dengan sistem yang berbeda, Anda juga harus membaca sejumlah besar data SDM yang tidak terstruktur atau menjalankan perintah SQL yang kompleks pada data keuangan terstruktur untuk mendapatkan jawaban atas pertanyaan Anda.

Dalam codelab ini, Anda akan mem-build satu aplikasi terpadu yang terhubung ke set data ini, sehingga karyawan dapat memperoleh jawaban percakapan yang mendasar atas pertanyaan mereka menggunakan kemampuan Retrieval Augmented Generation (RAG) Vertex AI.

Yang akan Anda lakukan

Dalam codelab ini, Anda akan menyelesaikan langkah-langkah berikut:

  • Menyiapkan sumber data. Buat bucket Cloud Storage untuk dokumen SDM yang tidak terstruktur dan set data BigQuery untuk data keuangan terstruktur.
  • Mengonfigurasi penyimpanan data. Buat penyimpanan data Vertex AI Search yang terhubung ke sumber data Cloud Storage dan BigQuery Anda.
  • Menghubungkan aplikasi. Buat aplikasi Vertex AI Search dan tautkan kedua penyimpanan data ke aplikasi tersebut.
  • Menguji aplikasi. Berinteraksi dengan antarmuka penelusuran terpadu untuk memverifikasi jawaban mendasar yang mensintesis informasi dari kedua penyimpanan data.
  • Mempelajari langkah berikutnya. Tinjau opsi untuk melakukan tuning model AI generatif dan men-deploy aplikasi penelusuran Anda.

Diagram arsitektur aplikasi yang menampilkan Vertex AI Search

Yang akan Anda butuhkan

  • Browser web seperti Chrome.
  • Project Google Cloud yang mengaktifkan penagihan.
  • Git diinstal di komputer lokal Anda.

Codelab ini ditujukan untuk developer dari semua level.

2. Sebelum memulai

Buat project Google Cloud dan aktifkan API yang diperlukan.

  1. Di Konsol Google Cloud, di halaman pemilih project, pilih atau buat project Google Cloud .
  2. Pastikan penagihan diaktifkan untuk project Cloud Anda. Pelajari cara memeriksa apakah penagihan diaktifkan di project.

Peran IAM yang diperlukan

Codelab ini mengasumsikan bahwa Anda memiliki peran Pemilik Project untuk project Google Cloud Anda.

Mengaktifkan API

  1. Di konsol Google Cloud, klik Aktifkan Cloud Shell: Jika Anda belum pernah menggunakan Cloud Shell sebelumnya, panel akan muncul dan memberi Anda pilihan untuk memulai Cloud Shell di lingkungan tepercaya dengan atau tanpa peningkatan. Jika Anda diminta untuk memberikan otorisasi pada Cloud Shell, klik Authorize.
  2. Di Cloud Shell, aktifkan semua API yang diperlukan:
    gcloud services enable \
      discoveryengine.googleapis.com \
      aiplatform.googleapis.com \
      bigquery.googleapis.com \
      storage.googleapis.com
    

3. Meng-clone repositori GitHub

Untuk menunjukkan cara kerja penelusuran di aplikasi helpdesk karyawan Cymbal, Anda memerlukan beberapa file tiruan. Di bagian ini, Anda akan meng-clone repositori GitHub ke komputer lokal untuk mendapatkan file ini. Anda akan mengupload file ini ke Google Cloud pada langkah berikutnya menggunakan antarmuka Konsol Cloud.

  1. Di terminal di komputer lokal Anda, clone repositori next-26-sessions:
    git clone https://github.com/GoogleCloudPlatform/next-26-sessions.git
    
  2. Buka direktori repositori yang didownload:
    cd next-26-sessions/BRK1-063-the-knowledge-source/cymbal-employee-helpdesk
    
  3. Jelajahi file yang didownload di direktori ini. Anda akan melihat bahwa ada dua folder: HR dan Finance.
    • HR. Folder ini berisi sejumlah file yang tidak terstruktur, seperti file .doc, .txt, dan .html. Anda akan mengupload file SDM ke bucket Cloud Storage.
    • Finance. Folder ini berisi dua file .jsonl. Anda akan mengupload file ini ke set data BigQuery.

4. Membuat bucket Cloud Storage untuk file yang tidak terstruktur

Di bagian ini, Anda akan membuat bucket Cloud Storage dan mengupload dokumen di folder HR yang Anda download di bagian Meng-clone repositori GitHub. Data yang tidak terstruktur, seperti dokumen SDM dalam contoh ini, tidak mengikuti format yang telah ditentukan dan dapat mencakup file teks, dokumen, atau konten multimedia.

  1. Di Konsol Cloud, buka halaman Buckets.
  2. Klik Create.
  3. Di halaman Create a bucket, masukkan nama bucket. Nama ini harus unik secara global. Contoh: cymbal-app-hr-12.
  4. Pertahankan opsi default.
  5. Klik Create.Bucket akan dibuat dan halaman Bucket details akan ditampilkan. Jika Anda tidak melihat halaman Bucket details, klik bucket yang baru Anda buat.
  6. Di halaman Bucket details, klik Upload > Upload folder, lalu pilih folder HR yang Anda download di bagian Meng-clone repositori GitHub.
  7. Konfirmasi upload.Pembuatan bucket
  8. Di halaman Bucket details, klik folder HR untuk melihat daftar file.File dalam bucket

5. Membuat set data BigQuery untuk file terstruktur

Di bagian ini, Anda akan membuat set data BigQuery dan memuat dokumen di folder Finance yang Anda download di bagian Meng-clone repositori GitHub ke dalam tabel baru. Data terstruktur, seperti dokumen keuangan dalam contoh ini, mengikuti format yang telah ditentukan, seperti data dalam database.

  1. Di Konsol Cloud, buka halaman BigQuery.
  2. Di panel Explorer, klik nama project Anda, lalu klik View actions (tiga titik vertikal) > Create dataset.Pembuatan set data
  3. Di panel Create dataset, masukkan Dataset ID sebagai cymbal_finance.
  4. Untuk Data location, pilih US (multiple regions in United States).
  5. Pertahankan opsi default dan klik Create dataset.
  6. Di panel Explorer, luaskan project Anda, lalu klik set data cymbal_finance.
  7. Di panel detail set data, klik Create table.
  8. Di halaman Create table, di bagian Source, lakukan hal berikut:
    1. Untuk Create table from, pilih Upload.
    2. Untuk Select file, klik Browse, buka folder Finance yang Anda download, lalu pilih cymbal_employee_finance.jsonl.
    3. Untuk File format, pilih JSONL (Newline delimited JSON).
  9. Di bagian Destination, masukkan nama Table sebagai employee_finance.
  10. Di bagian Schema, centang kotak Auto-detect.
  11. Pertahankan setelan default lainnya dan klik Create table.
  12. Ulangi langkah 7 hingga 11 untuk memuat data ke dalam tabel baru. Pada langkah 8b, pilih product_inventory.jsonl, dan pada langkah 9, masukkan product_inventory sebagai nama Table.Jika Anda tidak melihat tabel di panel detail set data, klik Refresh.
  13. Jika Anda berhasil membuat set data dan dua tabel, tampilannya akan terlihat seperti gambar berikut:Set data keuangan Cymbal

6. Membuat aplikasi Vertex AI Search

  1. Di Konsol Cloud, buka halaman Vertex AI Search.
  2. Di kartu Custom search (general), klik Create.
  3. Di halaman Search app configuration, pastikan opsi Enterprise edition features dan Generative responses dipilih.
  4. Beri nama aplikasi Anda cymbal-employee-portal.
  5. Masukkan Company name sebagai Cymbal Corp.
  6. Pertahankan Location of your app sebagai global.
  7. Klik Continue.

7. Membuat dan menghubungkan penyimpanan data

Di halaman Data stores, Anda membuat penyimpanan data yang akan dihubungkan ke aplikasi Anda. Anda harus membuat tiga penyimpanan data: satu untuk data SDM yang tidak terstruktur, dan dua untuk data keuangan terstruktur.

Membuat penyimpanan data untuk data yang tidak terstruktur

  1. Di halaman Data stores, klik Create data store.
  2. Untuk Select a data source, pilih Cloud storage.
  3. Di panel Import data from Cloud Storage, buka Unstructured data import (Document search and RAG), lalu pilih Documents.
  4. Pertahankan opsi Synchronization frequency sebagai One-time.
  5. Untuk Select a folder or a file that you want to import, klik Folder.
  6. Di kolom gs://..., masukkan nama bucket yang Anda buat di bagian Membuat bucket Cloud Storage untuk file yang tidak terstruktur. Misalnya, jika nama bucket-nya adalah cymbal-app-hr-12, masukkan nama sebagai cymbal-app-hr-12/HR.Penyerapan dari folder HR memastikan bahwa hanya dokumen SDM yang disertakan dalam penyimpanan data ini.
  7. Klik Continue.
  8. Masukkan nama penyimpanan data sebagai cymbal-hr.
  9. Klik Continue.
  10. Pertahankan opsi untuk General pricing.
  11. Klik Create.

Setelah Anda mengklik Create, Anda akan kembali ke halaman Data stores.

Membuat penyimpanan data untuk data terstruktur

Anda akan membuat dua penyimpanan data untuk data terstruktur dari BigQuery: satu untuk informasi keuangan karyawan dan satu lagi untuk inventaris produk.

Membuat penyimpanan data untuk data keuangan karyawan

  1. Di halaman Data stores, klik Create data store lagi.
  2. Untuk Select a data source, pilih BigQuery.
  3. Untuk Structured data import, pilih BigQuery table with your own schema.
  4. Pertahankan opsi Synchronization frequency sebagai One-time.
  5. Untuk Select a table that you want to import, klik Browse. Di dialog Select path yang terbuka, pilih tabel employee_finance dari set data cymbal_finance di project Anda. Anda mungkin melihat tabel dengan nama yang mirip dari project lain, jadi pastikan Anda memilih tabel dari project Anda.
  6. Klik Continue.
  7. Tinjau halaman Review schema and assign key properties.
  8. Klik Continue.
  9. Masukkan nama penyimpanan data sebagai cymbal-finance.
  10. Klik Continue.
  11. Pertahankan opsi untuk General pricing.
  12. Klik Create.

Setelah Anda mengklik Create, Anda akan kembali ke halaman Data stores.

Membuat penyimpanan data untuk data inventaris produk

  1. Di halaman Data stores, klik Create data store lagi.
  2. Untuk Select a data source, pilih BigQuery.
  3. Untuk Structured data import, pilih BigQuery table with your own schema.
  4. Pertahankan opsi Synchronization frequency sebagai One-time.
  5. Untuk Select a table that you want to import, klik Browse. Di dialog Select path yang terbuka, pilih tabel product_inventory dari set data cymbal_finance di project Anda.
  6. Klik Continue.
  7. Tinjau halaman Review schema and assign key properties.
  8. Klik Continue.
  9. Masukkan nama penyimpanan data sebagai cymbal-inventory.
  10. Klik Continue.
  11. Pertahankan opsi untuk General pricing.
  12. Klik Create.

Setelah Anda mengklik Create, Anda akan kembali ke halaman Data stores.

8. Menghubungkan penyimpanan data ke aplikasi Anda

Anda akan melihat tiga penyimpanan data dalam daftar di halaman Data stores: cymbal-hr (tidak terstruktur), cymbal-finance (terstruktur), dan cymbal-inventory (terstruktur). Untuk menghubungkan penyimpanan data ini ke aplikasi Anda, ikuti langkah-langkah berikut:

  1. Di halaman Data stores, pilih ketiga penyimpanan data yang baru Anda buat: cymbal-hr, cymbal-finance, dan cymbal-inventory. Pastikan Anda memilih ketiga penyimpanan data sebelum melanjutkan.
  2. Klik Continue.
  3. Pertahankan opsi untuk General pricing.
  4. Klik Create.

9. Menguji aplikasi portal karyawan Cymbal

  1. Di aplikasi cymbal-employee-portal, klik Preview.
  2. Di kotak Search here, masukkan pertanyaan berikut:
    What are the stipends that I get as an employee of Cymbal located in London?
    
  3. Masukkan pertanyaan terkait inventaris produk:
    How many units of sneakers do we have in stock?
    
  4. Masukkan pertanyaan lain:
    What is the stipend for an executive in Cymbal?
    

Perhatikan cara aplikasi penelusuran mengambil informasi dari beberapa sumber untuk merumuskan responsnya. Untuk menjawab pertanyaan ini, aplikasi menelusuri data keuangan terstruktur yang disimpan di BigQuery dan dokumen SDM yang tidak terstruktur di Cloud Storage.

Hal ini menunjukkan kemampuan Vertex AI Search untuk mensintesis jawaban di berbagai format data dan penyimpanan data yang berbeda menjadi satu pengalaman yang kohesif.

Anda juga dapat melakukan tuning model AI untuk memberikan jawaban yang lebih akurat dan spesifik untuk domain. Untuk mengetahui informasi selengkapnya tentang cara menyesuaikan pengalaman generatif, lihat dokumentasi Mendapatkan jawaban dan tindak lanjut.

10. Opsi untuk men-deploy aplikasi Anda

Meskipun men-deploy aplikasi ke pengguna akhir berada di luar cakupan codelab ini, sebaiknya Anda mengetahui bagaimana hal ini diterjemahkan ke dalam skenario dunia nyata. Anda memiliki beberapa opsi untuk mengintegrasikan aplikasi Vertex AI Search ke dalam alur kerja organisasi Anda:

  • Widget web bawaan. Anda dapat menyematkan antarmuka penelusuran atau chat siap pakai langsung ke intranet atau halaman web perusahaan yang ada menggunakan tag script HTML. Ini adalah cara tercepat untuk menampilkan aplikasi Anda kepada pengguna.
  • Integrasi API kustom. Untuk kontrol penuh atas pengalaman pengguna, Anda dapat menggunakan REST API Vertex AI Search atau library klien (seperti Python, Node.js, atau Java) untuk mem-build frontend kustom dari awal.

11. Pembersihan

Untuk menghindari biaya berkelanjutan ke akun Google Cloud Anda, hapus resource yang dibuat selama codelab ini:

  1. Di Konsol Cloud, buka halaman Vertex AI Search.
  2. Klik See existing apps.
  3. Untuk aplikasi cymbal-employee-portal, klik tiga titik vertikal untuk More, lalu klik Delete.
  4. Ikuti perintah di layar untuk mengonfirmasi penghapusan.
  5. Untuk menghapus penyimpanan data, klik Data stores di panel navigasi kiri konsol.
  6. Hapus penyimpanan data cymbal-hr, cymbal-finance, dan cymbal-inventory:
    1. Untuk penyimpanan data cymbal-hr, klik tiga titik vertikal untuk More, lalu klik Delete.
    2. Ikuti perintah di layar untuk mengonfirmasi penghapusan.
    3. Untuk penyimpanan data cymbal-finance, klik tiga titik vertikal untuk More, lalu klik Delete.
    4. Ikuti perintah di layar untuk mengonfirmasi penghapusan.
    5. Untuk penyimpanan data cymbal-inventory, klik tiga titik vertikal untuk More, lalu klik Delete.
    6. Ikuti perintah di layar untuk mengonfirmasi penghapusan.
  7. Buka halaman Buckets dan hapus bucket yang Anda buat (misalnya, cymbal-app-hr-12).
  8. Buka halaman BigQuery dan hapus set data cymbal_finance.

12. Selamat

Misi selesai! Anda telah berhasil mem-build pengalaman penelusuran perusahaan terpadu menggunakan Vertex AI Search.

Dengan menjembatani kesenjangan antara data perusahaan yang tidak terstruktur di Cloud Storage dan data terstruktur dari BigQuery, Anda telah membuat alat canggih yang mampu melakukan penalaran bisnis yang kompleks—semuanya tanpa menulis satu baris kode machine learning pun.

Yang telah Anda pelajari

  • Penyerapan: Cara menyerap dokumen yang tidak terstruktur dari Cloud Storage dan data terstruktur dari BigQuery ke Vertex AI Search.
  • Kueri penyimpanan multi-data. Cara membuat kueri aplikasi penelusuran penyimpanan multi-data untuk mensintesis jawaban terpadu dari data terstruktur dan tidak terstruktur.
  • Tuning dan penyesuaian. Cara melakukan tuning model AI generatif untuk memberikan jawaban yang lebih akurat dan spesifik untuk domain.
  • Opsi deployment. Berbagai cara untuk mengintegrasikan kemampuan penalaran ini ke dalam aplikasi dunia nyata menggunakan widget bawaan atau API kustom.

Dokumen referensi