GSP1209

Ringkasan
Google Gen AI SDK menyediakan antarmuka terpadu untuk layanan API AI generatif Google. SDK ini dapat mempermudah proses integrasi kemampuan AI generatif ke dalam aplikasi dan layanan, sehingga developer dapat memanfaatkan model AI canggih Google untuk berbagai tugas. Di lab ini, Anda akan mempelajari Google Gen AI SDK, cara terhubung ke layanan AI, mengirim berbagai perintah, dan menyesuaikan respons dari Gemini. Anda juga akan mendapatkan pengalaman langsung dengan teknik yang lebih canggih untuk mempersiapkan Anda dalam memanfaatkan kehebatan AI generatif untuk project Anda sendiri.
Tujuan
Di lab ini, Anda akan mempelajari cara menggunakan Google Gen AI SDK for Python untuk berinteraksi dengan layanan dan model AI generatif Google, termasuk Gemini. Anda akan mempelajari hal berikut ini:
- Menginstal Gen AI SDK.
- Menghubungkan ke layanan API.
- Mengirim teks dan perintah multimodal.
- Menetapkan petunjuk sistem.
- Mengonfigurasi parameter model dan filter keamanan.
- Mengelola interaksi model (multi-turn chat, streaming konten, permintaan asinkron).
- Menggunakan fitur lanjutan (penghitungan token, caching konteks, pemanggilan fungsi, prediksi batch, embedding teks).
Prasyarat
Sebelum memulai lab ini, Anda sebaiknya sudah mengetahui:
- Pemrograman Python dasar.
- Konsep API secara umum.
- Cara menjalankan kode Python di notebook Jupyter di Vertex AI Workbench.
Penyiapan dan persyaratan
Sebelum mengklik tombol Start Lab
Baca petunjuk ini. Lab memiliki timer dan Anda tidak dapat menjedanya. Timer yang dimulai saat Anda mengklik Start Lab akan menampilkan durasi ketersediaan resource Google Cloud untuk Anda.
Lab interaktif ini dapat Anda gunakan untuk melakukan aktivitas lab di lingkungan cloud sungguhan, bukan di lingkungan demo atau simulasi. Untuk mengakses lab ini, Anda akan diberi kredensial baru yang bersifat sementara dan dapat digunakan untuk login serta mengakses Google Cloud selama durasi lab.
Untuk menyelesaikan lab ini, Anda memerlukan:
- Akses ke browser internet standar (disarankan browser Chrome).
Catatan: Gunakan jendela Samaran (direkomendasikan) atau browser pribadi untuk menjalankan lab ini. Hal ini akan mencegah konflik antara akun pribadi Anda dan akun siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
- Waktu untuk menyelesaikan lab. Ingat, setelah dimulai, lab tidak dapat dijeda.
Catatan: Hanya gunakan akun siswa untuk lab ini. Jika Anda menggunakan akun Google Cloud yang berbeda, Anda mungkin akan dikenai tagihan ke akun tersebut.
Cara memulai lab dan login ke Google Cloud Console
-
Klik tombol Start Lab. Jika Anda perlu membayar lab, dialog akan terbuka untuk memilih metode pembayaran.
Di sebelah kiri ada panel Lab Details yang berisi hal-hal berikut:
- Tombol Open Google Cloud console
- Waktu tersisa
- Kredensial sementara yang harus Anda gunakan untuk lab ini
- Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
-
Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).
Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.
Tips: Atur tab di jendela terpisah secara berdampingan.
Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account.
-
Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.
{{{user_0.username | "Username"}}}
Anda juga dapat menemukan Username di panel Lab Details.
-
Klik Next.
-
Salin Password di bawah dan tempel ke dialog Welcome.
{{{user_0.password | "Password"}}}
Anda juga dapat menemukan Password di panel Lab Details.
-
Klik Next.
Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda.
Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan.
-
Klik halaman berikutnya:
- Setujui persyaratan dan ketentuan.
- Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
- Jangan mendaftar uji coba gratis.
Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.
Catatan: Untuk mengakses produk dan layanan Google Cloud, klik Navigation menu atau ketik nama layanan atau produk di kolom Search.
Tugas 1. Membuka notebook di Vertex AI Workbench
-
Di Konsol Google Cloud, pada Navigation menu (
), klik Vertex AI > Workbench.
-
Cari instance lalu klik tombol Open JupyterLab.
Antarmuka JupyterLab untuk instance Workbench Anda akan terbuka di tab browser baru.
Tugas 2. Menyiapkan notebook
Buka file notebook, impor library, dan pilih model.
-
Buka file .
-
Pada dialog Select Kernel, pilih Python 3 dari daftar kernel yang tersedia.
-
Jalankan bagian-bagian di notebook:
- Mulai
- Menggunakan Google Gen AI SDK
- Terhubung ke layanan API AI generatif
Untuk Project ID, gunakan , sedangkan untuk Location, gunakan .
Catatan: Abaikan sel notebook yang ditandai Colab only. Jika Anda mendapatkan respons 429 dari salah satu eksekusi sel notebook, tunggu 1 menit sebelum menjalankan sel kembali untuk melanjutkan.
Klik Check my progress untuk memverifikasi tujuan.
Mengimpor library dan menyiapkan notebook
Tugas 3. Berinteraksi dengan model
Untuk mengetahui informasi selengkapnya tentang semua API dan model AI di Vertex AI, lihat Google Models dan Model Garden.
Memilih model
- Jalankan bagian Choose a model di notebook.
Mengirim perintah teks
Gunakan metode generate_content
untuk menghasilkan respons atas perintah Anda. Anda dapat meneruskan teks ke generate_content
, dan menggunakan properti .text
untuk mendapatkan konten teks respons.
- Jalankan bagian Send text prompts di notebook.
Mengirim perintah multimodal
Anda dapat menyertakan teks, dokumen PDF, gambar, audio, dan video dalam permintaan perintah dan mendapatkan respons teks atau kode.
Anda juga dapat meneruskan URL file di Part.from_uri
dalam permintaan ke model secara langsung.
- Jalankan bagian Send multimodal prompts di notebook.
Menetapkan petunjuk sistem
Petunjuk sistem memungkinkan Anda mengontrol perilaku model. Tentukan petunjuk sistem untuk memberi model konteks tambahan guna memahami tugas, memberikan respons yang lebih disesuaikan, dan mematuhi pedoman terkait interaksi pengguna.
- Jalankan bagian Set system instructions di notebook.
Klik Check my progress untuk memverifikasi tujuan.
Berinteraksi dengan model
Tugas 4. Mengonfigurasi dan mengontrol model
Mengonfigurasi parameter model
Anda dapat menyertakan nilai parameter dalam setiap panggilan yang Anda kirim ke model untuk mengontrol cara model membuat respons. Untuk mempelajari lebih lanjut, lihat bereksperimen dengan nilai parameter.
- Jalankan bagian Configure model parameters pada notebook.
Mengonfigurasi filter keamanan
Gemini API menyediakan filter keamanan yang dapat Anda sesuaikan di beberapa kategori filter untuk membatasi atau mengizinkan jenis konten tertentu. Anda dapat menggunakan filter ini untuk menyesuaikan hal yang sesuai dengan kasus penggunaan Anda. Lihat halaman Mengonfigurasi filter keamanan untuk mengetahui detailnya.
Saat Anda membuat permintaan ke model, konten akan dianalisis dan diberikan rating keamanan. Anda dapat memeriksa rating keamanan konten yang dihasilkan dengan mencetak respons model, seperti dalam contoh ini:
- Jalankan bagian Configure safety filters di notebook.
Memulai multi-turn chat
Gemini API memungkinkan Anda melakukan percakapan bebas secara bolak-balik.
- Jalankan bagian Start a multi-turn chat di notebook.
Mengontrol output yang dihasilkan
Kemampuan pembuatan terkontrol di Gemini API memungkinkan Anda untuk membatasi output model ke format terstruktur. Anda dapat memberikan skema sebagai Model Pydantic atau string JSON.
Anda juga dapat menentukan skema respons dalam kamus Python. Anda hanya dapat menggunakan kolom di bawah ini. Semua kolom lainnya diabaikan.
enum
Item
maxItem
nullable
properties
wajib ada
Dalam contoh ini, Anda menginstruksikan model untuk menganalisis data ulasan produk, mengekstrak entity utama, melakukan klasifikasi sentimen (pilihan ganda), memberikan penjelasan tambahan, dan menampilkan hasil dalam format JSON.
- Jalankan bagian Control generated output pada notebook.
Klik Check my progress untuk memverifikasi tujuan.
Mengonfigurasi dan mengontrol model
Tugas 5. Mengelola interaksi model
Membuat aliran data konten
Secara default, model akan menampilkan respons setelah menyelesaikan seluruh proses pembuatan. Anda juga dapat menggunakan metode generate_content_stream
untuk mengalirkan respons pada saat respons tersebut sedang dibuat. Model akan memberikan potongan respons saat respons tersebut dihasilkan.
- Jalankan bagian Generate content stream pada notebook.
Mengirim permintaan asinkron
Anda dapat mengirim permintaan asinkron menggunakan modul client.aio
. Modul ini mengekspos semua metode asinkron analog yang tersedia di client
.
Misalnya, client.aio.models.generate_content
adalah versi asinkron dari client.models.generate_content
.
- Jalankan bagian Send asynchronous requests pada notebook.
Menghitung token dan mengomputasi token
Anda dapat menggunakan metode count_tokens
untuk menghitung jumlah token input sebelum mengirim permintaan ke Gemini API. Lihat halaman List and count tokens untuk mengetahui detailnya.
Menjumlahkan token
- Jalankan bagian Count tokens di notebook.
Menghitung token
- Jalankan bagian Compute tokens di notebook.
Klik Check my progress untuk memverifikasi tujuan.
Mengelola interaksi model
Tugas 6. Fitur lanjutan
Pemanggilan fungsi
Pemanggilan fungsi memungkinkan Anda untuk menyediakan serangkaian alat yang dapat digunakan model untuk merespons perintah pengguna. Anda membuat deskripsi fungsi dalam kode, lalu meneruskan deskripsi tersebut ke model bahasa dalam permintaan. Respons dari model mencakup nama fungsi yang sesuai dengan deskripsi dan argumen yang digunakan untuk memanggilnya.
Untuk melihat contoh Pemanggilan Fungsi lainnya, lihat notebook ini.
- Jalankan bagian Function calling di notebook.
Klik Check my progress untuk memverifikasi tujuan.
Pemanggilan fungsi
Menggunakan context caching
Context caching memungkinkan Anda menyimpan token input yang sering digunakan di cache khusus dan merujuknya untuk permintaan berikutnya. Dengan demikian, Anda tidak perlu berulang kali meneruskan kumpulan token yang sama ke model.
Catatan: Context caching hanya tersedia untuk model stabil dengan versi tetap (misalnya, gemini-2.0-flash-001
). Anda harus menyertakan sufiks versi (misalnya, -001
).
Membuat cache
- Jalankan bagian Create a cache di notebook.
Menggunakan cache
- Jalankan bagian Use a cache di notebook.
Menghapus cache
- Jalankan bagian Delete a cache di notebook.
Klik Check my progress untuk memverifikasi tujuan.
Menggunakan context caching
Prediksi batch
Berbeda dari mendapatkan respons online (sinkron) yang hanya dapat dilakukan pada satu permintaan input dalam satu waktu, prediksi batch untuk Gemini API di Vertex AI memungkinkan Anda mengirim sejumlah besar permintaan ke Gemini dalam satu permintaan batch. Kemudian, respons model akan diisi secara asinkron ke lokasi output penyimpanan Anda di Cloud Storage atau BigQuery.
Prediksi batch umumnya lebih efisien dan hemat biaya daripada prediksi online dalam memproses sejumlah besar input yang tidak sensitif terhadap latensi.
Menyiapkan input batch
Input untuk permintaan batch menentukan item yang akan dikirim ke model Anda untuk mendapatkan prediksi.
Permintaan batch untuk Gemini menerima sumber penyimpanan BigQuery dan sumber Cloud Storage. Anda dapat mempelajari lebih lanjut format input batch di halaman Pembuatan teks batch.
Lab ini menggunakan Cloud Storage sebagai contoh. Persyaratan untuk input Cloud Storage adalah:
- Format file: JSON Lines (JSONL)
- Berlokasi di
us-central1
- Izin baca yang sesuai untuk akun layanan
Setiap permintaan yang Anda kirim ke model dapat menyertakan parameter yang mengontrol cara model menghasilkan respons. Pelajari lebih lanjut parameter Gemini di halaman Bereksperimen dengan nilai parameter.
Ini adalah salah satu contoh permintaan dalam file JSONL input batch_requests_for_multimodal_input_2.jsonl
:
{"request":{"contents": [{"role": "user", "parts": [{"text": "List objects in this image."}, {"file_data": {"file_uri": "gs://cloud-samples-data/generative-ai/image/office-desk.jpeg", "mime_type": "image/jpeg"}}]}],"generationConfig":{"temperature": 0.4}}}
- Jalankan bagian Prepare batch inputs di notebook.
Menyiapkan lokasi output batch
Ketika tugas prediksi batch selesai, output akan disimpan di lokasi yang ditentukan dalam permintaan Anda.
-
Lokasinya berupa prefiks URI Cloud Storage atau BigQuery, misalnya:
gs://path/to/output/data
atau bq://projectId.bqDatasetId
.
-
Jika tidak ditentukan, gs://STAGING_BUCKET/gen-ai-batch-prediction
digunakan untuk sumber Cloud Storage danbq://PROJECT_ID.gen_ai_batch_prediction.predictions_TIMESTAMP
digunakan untuk sumber BigQuery.
Lab ini menggunakan bucket Cloud Storage sebagai contoh untuk lokasi output.
Anda dapat menentukan URI bucket Cloud Storage di BUCKET_URI
, atau, jika tidak ditentukan, bucket Cloud Storage baru dalam format gs://PROJECT_ID-TIMESTAMP
akan dibuat untuk Anda.
- Jalankan bagian Prepare batch output location di notebook.
Mengirim permintaan prediksi batch
Untuk membuat permintaan prediksi batch, Anda harus menentukan ID model sumber, sumber input, dan lokasi output tempat Vertex AI menyimpan hasil prediksi batch.
Untuk mengetahui informasi selengkapnya, lihat halaman Batch prediction API. Anda juga dapat memeriksa status di konsol di https://console.cloud.google.com/vertex-ai/batch-predictions
- Jalankan bagian Send a batch prediction request ci notebook.
Catatan: mungkin perlu waktu beberapa menit hingga prediksi batch Anda selesai.
Mengambil hasil prediksi batch
Ketika tugas prediksi batch selesai, output prediksi akan disimpan di lokasi yang ditentukan dalam permintaan Anda. Output tersebut juga tersedia di batch_job.dest.bigquery_uri
atau batch_job.dest.gcs_uri
.
Contoh output:
{"status": "", "processed_time": "2024-11-13T14:04:28.376+00:00", "request": {"contents": [{"parts": [{"file_data": null, "text": "List objects in this image."}, {"file_data": {"file_uri": "gs://cloud-samples-data/generative-ai/image/gardening-tools.jpeg", "mime_type": "image/jpeg"}, "text": null}], "role": "user"}], "generationConfig": {"temperature": 0.4}}, "response": {"candidates": [{"avgLogprobs": -0.10394711927934126, "content": {"parts": [{"text": "Here's a list of the objects in the image:\n\n* **Watering can:** A green plastic watering can with a white rose head.\n* **Plant:** A small plant (possibly oregano) in a terracotta pot.\n* **Terracotta pots:** Two terracotta pots, one containing the plant and another empty, stacked on top of each other.\n* **Gardening gloves:** A pair of striped gardening gloves.\n* **Gardening tools:** A small trowel and a hand cultivator (hoe). Both are green with black handles."}], "role": "model"}, "finishReason": "STOP"}], "modelVersion": "gemini-2.0-flash-001@default", "usageMetadata": {"candidatesTokenCount": 110, "promptTokenCount": 264, "totalTokenCount": 374}}}
- Jalankan bagian Retrieve batch prediction results di notebook.
Klik Check my progress untuk memverifikasi tujuan.
Mengambil hasil prediksi batch
Mendapatkan embedding teks
Anda dapat mendapatkan embedding teks untuk cuplikan teks dengan menggunakan metode embed_content
. Semua model menghasilkan output dengan 768 dimensi secara default. Namun, beberapa model memberi pengguna opsi untuk memilih dimensi output antara 1
dan 768
. Lihat Vertex AI text embeddings API untuk mengetahui detailnya.
- Jalankan bagian Get text embeddings di notebook.
Klik Check my progress untuk memverifikasi tujuan.
Mendapatkan embedding teks
Selamat!
Selamat! Anda telah berhasil mempelajari Google Gen AI SDK, belajar untuk terhubung ke layanan AI, mengirim berbagai perintah, dan menyesuaikan respons dari model Gemini. Anda juga mendapatkan pengalaman langsung dengan beberapa teknik lanjutan seperti mengelola interaksi, menggunakan context caching, dan bahkan bekerja dengan embedding. Sekarang Anda sudah siap untuk memanfaatkan kecanggihan AI generatif untuk project Anda sendiri.
Langkah berikutnya/pelajari lebih lanjut
Baca referensi berikut untuk mempelajari Gemini lebih lanjut:
Sertifikasi dan pelatihan Google Cloud
...membantu Anda mengoptimalkan teknologi Google Cloud. Kelas kami mencakup keterampilan teknis dan praktik terbaik untuk membantu Anda memahami dengan cepat dan melanjutkan proses pembelajaran. Kami menawarkan pelatihan tingkat dasar hingga lanjutan dengan opsi on demand, live, dan virtual untuk menyesuaikan dengan jadwal Anda yang sibuk. Sertifikasi membantu Anda memvalidasi dan membuktikan keterampilan serta keahlian Anda dalam teknologi Google Cloud.
Manual Terakhir Diperbarui pada 5 Mei 2025
Lab Terakhir Diuji pada 5 Mei 2025
Hak cipta 2025 Google LLC. Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.