Menambahkan Cloud Firestore dan Authentication ke aplikasi Google AI Studio Anda

Mode Build di Google AI Studio dapat otomatis menyiapkan dan mengintegrasikan Cloud Firestore dan Firebase Authentication ke dalam aplikasi web, sehingga mempermudah pembuatan aplikasi dengan penyimpanan data persisten dan alur login yang aman. Hanya dengan satu perintah dan beberapa kali klik, Anda dapat mendukung agen Google AI Studio menyiapkan project Firebase, menghubungkan aplikasi Anda ke project tersebut, dan membuat semua kode Cloud Firestore dan Authentication langsung di aplikasi Anda.

Ringkasan: Menambahkan backend ke aplikasi Google AI Studio Anda

  1. Jelaskan ide Anda: Buat aplikasi baru di Google AI Studio dan jelaskan fitur yang memerlukan database atau autentikasi. Misalnya, Anda dapat memasukkan perintah: Build a shared to-do list app using Firebase as a backend.

  2. Aktifkan integrasi Firebase: Saat diminta oleh agen, aktifkan Firebase, pilih lokasi untuk project Anda, dan setujui Persyaratan Firebase. Kemudian, agen akan otomatis menghubungkan aplikasi Anda ke project Firebase dan membuat kode Cloud Firestore dan Authentication yang diperlukan untuk aplikasi Anda, termasuk file /src/lib/firebase.ts dan file firestore.rules.

  3. Deploy: Setelah siap, gunakan opsi Share > Publish untuk men-deploy aplikasi web Anda ke Cloud Run.

Memahami kuota bersama untuk Cloud Firestore

Semua database Cloud Firestore yang disediakan oleh agen Google AI Studio ditempatkan dalam "grup" database yang sama di project Firebase Anda. Semua database tersebut memiliki karakteristik berikut:

  • Kuota bersama: Semua database dalam grup berbagi kuota penggunaan (lihat detail di bawah).
  • Tidak memerlukan akun Cloud Billing: Anda dapat membangun dan menguji aplikasi tanpa menambahkan penagihan. Lihat detail di bawah tentang opsi menambahkan penagihan.
  • Reset harian: Jika Anda mencapai batas kuota harian (misalnya, 50 ribu pembacaan/hari), layanan akan dijeda untuk semua database dalam grup dan dilanjutkan pada hari berikutnya sekitar tengah malam Waktu Pasifik.

Database Cloud Firestore dalam grup kuota bersama memiliki batas berikut:

Metrik Quota
Data tersimpan 1 GiB total
Traffic keluar jaringan 10 GiB per bulan
Unit operasi tulis 40.000 penulisan per hari
Unit operasi baca 50.000 pembacaan per hari
Unit operasi update real-time 50.000 pembaruan per hari

(Opsional) Menambahkan penagihan untuk mendapatkan kuota Cloud Firestore ekstra

Jika aplikasi Anda mendapatkan atensi dan Anda perlu melampaui batas tanpa biaya untuk Cloud Firestore, Anda dapat mengupgrade project ke paket harga Blaze bayar sesuai penggunaan.

  1. Tambahkan penagihan (jika belum): Buka Firebase console dan tautkan akun penagihan ke project Anda.

  2. Mengupgrade database: Secara default, database Cloud Firestore yang dibuat oleh agen Google AI Studio terus menggunakan kuota bersama bahkan setelah Anda mengupgrade paket harga. Untuk mengaktifkan penskalaan berbayar penuh untuk database tertentu, Anda harus memindahkannya secara manual dari grup menggunakan perintah curl.

    • PROJECT_ID: Project ID Firebase; temukan ID ini di Setelan Project di Firebase console.

    • DATABASE_ID: ID database Cloud Firestore, yang akan cocok dengan ID applet Anda; temukan ID database ini di kolom Name di halaman database Cloud Firestore di Firebase console.

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://firestore.googleapis.com/v1/projects/PROJECT_ID/databases/DATABASE_ID?updateMask=free_tier_limited" \
    -d '{"free_tier_limited": false}'
    

Pembuatan Security Rules

Agen Google AI Studio otomatis membuat Firebase Security Rules berdasarkan logika aplikasi Anda. Security Rules ini dirancang dengan "penolakan default", artinya pengguna akhir aplikasi Anda hanya dapat mengakses data yang mereka miliki.

Perhatikan bahwa jika Anda menyesuaikan Security Rules secara manual langsung di Firebase console, agen Google AI Studio tidak akan mengetahui perubahan tersebut, dan perubahan tersebut akan ditimpa selama iterasi aplikasi berikutnya. Sebaiknya gunakan agen Google AI Studio untuk menyesuaikan Firebase Security Rules guna memastikan perubahan Anda dipertahankan dan selaras dengan logika aplikasi Anda.

Menggunakan project yang sudah ada

Anda juga dapat meminta agen Google AI Studio menyediakan Cloud Firestore ke project Google Cloud yang sudah ada dan Anda miliki. Instruksikan agen untuk menggunakan project yang sudah ada dengan perintah seperti:

Add Firestore to this app using project PROJECT_ID.
  • Database Cloud Firestore baru akan disediakan ke dalam project tersebut menggunakan kuota bersama.
  • Firebase Authentication yang menggunakan Login dengan Google akan dikonfigurasi.
  • Akun layanan akan diberi akses ke database Cloud Firestore Anda. Untuk mengizinkan akses administrator dari Google AI Studio, akun layanan baru bernama ais-sandbox@PROJECT_ID.iam.gservice.com akan diberi izin untuk mengakses database Cloud Firestore Anda. Akun ini hanya dikaitkan dengan aplikasi Google AI Studio Anda.
  • Batasan: Jika project Firebase sudah memiliki database Cloud Firestore, agen tidak akan dapat menambahkan database lain. Anda harus membuat project baru yang kosong untuk digunakan.

Menggunakan Firebase console

Anda dapat melihat data dan setelan aplikasi di Firebase console. Untuk mengakses project Anda yang terkait dengan Google AI Studio, ikuti langkah-langkah berikut:

  1. Buka Firebase console dan pilih project berlabel AI Studio.

  2. Di panel navigasi sebelah kiri, klik Build > Cloud Firestore Database untuk melihat dan mengedit data Anda di Cloud Firestore atau klik Build > Authentication untuk mengonfigurasi setelan dan data Authentication Anda.

Pemecahan masalah dan pertanyaan umum (FAQ)

Temukan jawaban atas pertanyaan umum dan pelajari cara menyelesaikan masalah saat mengintegrasikan Firebase dengan aplikasi Google AI Studio Anda.

Bagaimana cara memilih project Google Cloud/Firebase saya?

Saat Anda menggunakan fitur Add Firebase backend, agen Google AI Studio akan otomatis memilih project Firebase yang akan digunakan untuk layanan backend aplikasi Anda (Cloud Firestore dan Firebase Authentication).

Jika ingin menggunakan project tertentu, Anda dapat meminta agen untuk melakukannya dengan perintah seperti:

Use project PROJECT_ID for the Firebase backend.

Jika Anda kemudian memutuskan untuk memublikasikan aplikasi ke Cloud Run, penting untuk terus menggunakan project yang sama ini. Memilih project yang berbeda akan menyebabkan error karena tidak akan cocok dengan project yang digunakan untuk backend Anda.

Metode autentikasi apa yang didukung?

Agen Google AI Studio menyiapkan Login dengan Google saat Anda menggunakan fitur Add Firebase backend. Untuk menyiapkan metode tambahan, aktifkan metode tersebut di Firebase console dan minta bantuan agen Google AI Studio untuk memperbarui codebase Anda.

Dapatkah saya membuat aplikasi seluler (seperti Android atau iOS) dengan Google AI Studio?

Saat ini, agen Google AI Studio hanya dapat membuat aplikasi web. Pelajari lebih lanjut fitur yang didukung di dokumentasi agen Google AI Studio.

Namun, perhatikan bahwa seperti semua aplikasi web, aplikasi yang dibuat oleh Google AI Studio dapat diakses sebagai aplikasi web seluler dari browser yang diinstal di perangkat seluler.

Apa itu file firebase-blueprint.json?

File ini merupakan perantara yang digunakan oleh agen Google AI Studio untuk memahami codebase aplikasi Anda. Jangan mengubah file ini secara manual karena dapat menyebabkan agen membuat kode yang salah atau Security Rules yang tidak aman.

Apa yang harus saya lakukan jika saya mendapatkan error "Kuota terlampaui"?

Mencapai batas kuota Cloud Firestore berarti aplikasi Anda telah mencapai batas penggunaan harian untuk grup kuota bersama database Cloud Firestore. Ada dua cara untuk mengatasi masalah ini:

  • Opsi 1: Tunggu: Kuota direset setiap hari sekitar tengah malam Waktu Pasifik.
  • Opsi 2: Upgrade: Upgrade ke paket harga Blaze bayar sesuai penggunaan.

Apa yang harus saya lakukan jika saya mendapatkan error "Izin tidak ada atau tidak memadai"?

Error ini terjadi saat aplikasi Anda mencoba membaca atau menulis data ke database Cloud Firestore, tetapi permintaannya ditolak oleh Security Rules Anda. Hal ini menunjukkan bahwa Security Rules tidak mengizinkan operasi yang akan dilakukan berdasarkan status autentikasi atau jalur data saat ini. Klik tombol Fix error untuk meminta agen Google AI Studio mencoba memperbaiki Security Rules.

Apa yang akan terjadi pada backend Firebase jika aplikasi Google AI Studio dihapus?

Menghapus aplikasi di Google AI Studio tidak akan otomatis menghapus project Firebase, database Cloud Firestore, atau konfigurasi Firebase Authentication yang terhubung.

Jika Anda menambahkan backend Firebase, Anda harus secara manual membuka Firebase console dan menghapus project atau mengosongkan setiap resource (seperti instance database Cloud Firestore dan penyedia Authentication) untuk memastikan semua data dan konfigurasi dihapus.

Dapatkah agen Google AI Studio menghapus atau mengedit data di database Cloud Firestore saya?

Agen Google AI Studio dirancang untuk membantu menyediakan resource backend yang diperlukan serta membuat kode dan Security Rules. Meskipun agen itu sendiri tidak dapat menghapus, mengedit, atau memanipulasi entri data secara langsung dalam database Cloud Firestore Anda, agen tersebut dapat menulis kode ke dalam applet Anda yang dirancang untuk melakukan tindakan ini. Untuk melakukan tugas pengelolaan data, seperti menghapus entri, buka halaman database Cloud Firestore di Firebase console.

Saya bergabung dengan organisasi yang menggunakan Google Cloud; dapatkah saya menghubungkan aplikasi Google AI Studio saya ke project yang sudah ada dalam lingkungan Google Cloud organisasi saya?

Pastikan project Firebase Anda ditempatkan dalam folder organisasi Google Cloud tertentu:

  1. Buat project Firebase secara manual terlebih dahulu.

  2. Saat menyiapkan backend Firebase di Google AI Studio, instruksikan agen untuk menggunakan project yang ada:

    Add Firestore to this app using project PROJECT_ID.
    

Mengapa saya tidak dapat menemukan dokumen tertentu di Firebase console?

Jika agen AI Studio menyimpan data ke jalur bertingkat (seperti /users/user1/messages/msg1) tanpa membuat dokumen induk terlebih dahulu (user1), agen tersebut akan membuat dokumen yang disebut sebagai dokumen induk yang tidak ada. Dokumen ini tidak ditampilkan di Firebase console sehingga sulit ditemukan saat menjelajahi database Cloud Firestore. Meskipun tidak memengaruhi cara aplikasi Anda berjalan, Anda sering kali dapat menjelaskan masalah tersebut kepada agen AI Studio untuk memintanya membuat dokumen induk yang tidak ada.

Untuk mengetahui detail selengkapnya, lihat Dokumen induk yang tidak ada.

Bagaimana cara Google menggunakan data saya (misalnya, kode dan perintah) di Google AI Studio?

Lihat Persyaratan Layanan Tambahan Gemini API untuk mengetahui detail tentang penggunaan data Anda.

Saya menerima email dari Google Cloud tentang "kunci API Google yang dapat diakses secara publik untuk project Google Cloud Anda". Apa yang harus saya lakukan?

Jika Anda telah menerima email dari Google Cloud tentang "kunci Google API yang dapat diakses secara publik untuk project Google Cloud Anda" dan kunci API yang tercantum dalam email adalah kunci API Firebase Anda, pastikan kunci API tersebut memenuhi persyaratan berikut agar aman untuk disertakan dalam kode atau file konfigurasi Anda. Anda dapat memverifikasi hal berikut di panel APIs & Services > Credentials di Google Cloud console.

  • Ini adalah kunci API yang Anda gunakan untuk aplikasi Firebase dan hanya untuk layanan Firebase. Kunci ini biasanya disebut Browser key (auto created by Firebase) atau Android key (auto created by Firebase) atau iOS key (auto created by Firebase).
  • Kunci API tersebut memiliki semua API terkait Firebase yang diperlukan yang disertakan dalam daftar yang diizinkan "Pembatasan API" kunci.
  • Kunci API tersebut tidak memiliki API lain dalam daftar yang diizinkan "Pembatasan API". Khususnya, daftar ini tidak boleh memiliki Generative Language API.

Selain itu, pastikan Anda menggunakan Firebase Security Rules dan App Check seperti yang direkomendasikan untuk produk Firebase yang Anda gunakan.

Anda dapat mempelajari detail tentang kunci API untuk Firebase dan menemukan daftar FAQ di Mempelajari cara menggunakan dan mengelola kunci API untuk Firebase