Cloud Firestore و احراز هویت را به برنامه Google AI Studio خود اضافه کنید

حالت ساخت (Build mode) در Google AI Studio می‌تواند به طور خودکار Cloud Firestore و Firebase Authentication در برنامه‌های وب راه‌اندازی و ادغام کند، که ساخت برنامه‌هایی با ذخیره‌سازی داده‌های پایدار و جریان‌های ورود امن را آسان‌تر می‌کند. تنها با یک درخواست و چند کلیک، شما به عامل Google AI Studio این امکان را می‌دهید که یک پروژه Firebase راه‌اندازی کند، برنامه شما را به آن پروژه متصل کند و تمام کدهای Cloud Firestore و Authentication را مستقیماً در برنامه شما تولید کند.

مرور کلی: یک بک‌اند به برنامه Google AI Studio خود اضافه کنید

  1. ایده خود را شرح دهید : یک برنامه جدید در Google AI Studio ایجاد کنید و یک ویژگی را که نیاز به پایگاه داده یا احراز هویت دارد شرح دهید. برای مثال، می‌توانید عبارت زیر را وارد کنید: Build a shared to-do list app using Firebase as a backend.

  2. فعال کردن ادغام Firebase : وقتی از طرف عامل (agent) از شما خواسته شد، Firebase را فعال کنید، مکانی را برای پروژه خود انتخاب کنید و شرایط Firebase را بپذیرید. سپس عامل به طور خودکار برنامه شما را به پروژه Firebase شما متصل می‌کند و کد Cloud Firestore و Authentication لازم را برای برنامه شما، از جمله فایل /src/lib/firebase.ts و فایل firestore.rules تولید می‌کند.

  3. استقرار : پس از آماده شدن، از گزینه اشتراک‌گذاری > انتشار برای استقرار برنامه وب خود در Cloud Run استفاده کنید.

سهمیه مشترک برای Cloud Firestore را درک کنید

تمام پایگاه‌های داده Cloud Firestore که توسط عامل Google AI Studio ارائه می‌شوند، در همان "گروه" پایگاه‌های داده در پروژه Firebase شما قرار می‌گیرند. همه آنها این ویژگی‌ها را دارند:

  • سهمیه مشترک : همه پایگاه‌های داده در گروه، سهمیه استفاده مشترکی دارند ( جزئیات بیشتر را در زیر ببینید ).
  • بدون نیاز به حساب Cloud Billing : می‌توانید برنامه خود را بدون اضافه کردن پرداخت بسازید و آزمایش کنید. جزئیات مربوط به اضافه کردن اختیاری پرداخت را در زیر مشاهده کنید.
  • بازنشانی‌های روزانه : اگر به محدودیت سهمیه روزانه (مثلاً ۵۰ هزار خواندن در روز) برسید، سرویس برای تمام پایگاه‌های داده درون گروه متوقف می‌شود و روز بعد حدود نیمه‌شب به وقت اقیانوس آرام از سر گرفته می‌شود.

پایگاه‌های داده Cloud Firestore در گروه سهمیه مشترک، محدودیت‌های زیر را دارند:

متریک سهمیه
داده‌های ذخیره شده مجموع ۱ گیگابایت
خروجی شبکه ۱۰ گیگابایت در ماه
واحدها را بنویسید ۴۰،۰۰۰ نوشته در روز
واحدها را بخوانید ۵۰،۰۰۰ بازدید در روز
واحدهای به‌روزرسانی بلادرنگ ۵۰،۰۰۰ به‌روزرسانی در روز

(اختیاری) برای دریافت سهمیه بیشتر Cloud Firestore صورتحساب را اضافه کنید

اگر برنامه شما مورد توجه قرار گرفت و نیاز داشتید که از محدودیت‌های رایگان Cloud Firestore فراتر بروید، می‌توانید پروژه خود را به طرح قیمت‌گذاری Pay-as-you-go Blaze ارتقا دهید.

  1. افزودن صورتحساب (اگر قبلاً این کار را نکرده‌اید) : به کنسول Firebase بروید و یک حساب صورتحساب را به پروژه خود پیوند دهید .

  2. ارتقاء پایگاه داده : به طور پیش‌فرض، پایگاه‌های داده Cloud Firestore که توسط نماینده Google AI Studio ایجاد شده‌اند ، حتی پس از ارتقاء طرح قیمت‌گذاری شما ، همچنان از سهمیه مشترک استفاده می‌کنند. برای فعال کردن مقیاس‌پذیری کامل پولی برای یک پایگاه داده خاص، باید آن را به صورت دستی با استفاده از دستور curl از گروه خارج کنید.

    • PROJECT_ID : شناسه پروژه Firebase؛ این شناسه را در تنظیمات پروژه کنسول Firebase پیدا کنید.

    • DATABASE_ID : شناسه پایگاه داده Cloud Firestore ، که با شناسه اپلت شما مطابقت دارد؛ این شناسه پایگاه داده را در ستون نام در صفحه پایگاه‌های داده Cloud Firestore در کنسول Firebase پیدا کنید.

    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}'
    

تولید Security Rules

عامل Google AI Studio به طور خودکار Firebase Security Rules بر اساس منطق برنامه شما تولید می‌کند. این Security Rules به گونه‌ای طراحی شده‌اند که "به طور پیش‌فرض قابل رد کردن" باشند، به این معنی که کاربران نهایی برنامه شما فقط می‌توانند به داده‌هایی که متعلق به خودشان است دسترسی داشته باشند.

توجه داشته باشید که اگر Security Rules خود را مستقیماً در کنسول Firebase به صورت دستی تنظیم کنید، عامل Google AI Studio از تغییرات مطلع نخواهد شد و در طول تکرارهای بعدی برنامه بازنویسی می‌شوند. توصیه می‌کنیم از عامل Google AI Studio برای تنظیم Firebase Security Rules خود استفاده کنید تا مطمئن شوید که تغییرات شما حفظ شده و با منطق برنامه شما همسو هستند.

استفاده از یک پروژه موجود

همچنین می‌توانید از نماینده Google AI Studio بخواهید که Cloud Firestore در یک پروژه Google Cloud موجود که متعلق به شماست، ارائه دهد. با یک درخواست مانند زیر، به نماینده دستور دهید که از پروژه موجود شما استفاده کند:

Add Firestore to this app using project PROJECT_ID.
  • یک پایگاه داده جدید Cloud Firestore با استفاده از سهمیه مشترک به آن پروژه اختصاص داده خواهد شد .
  • Firebase Authentication با ورود به سیستم گوگل پیکربندی خواهد شد.
  • به یک حساب کاربری سرویس، دسترسی به پایگاه داده Cloud Firestore شما اعطا خواهد شد. برای دسترسی مدیر از Google AI Studio ، به یک حساب کاربری سرویس جدید با نام ais-sandbox@ PROJECT_ID .iam.gservice.com اجازه دسترسی به پایگاه داده Cloud Firestore شما داده می‌شود. این حساب فقط با برنامه‌های Google AI Studio شما مرتبط است.
  • محدودیت‌ها : اگر پروژه Firebase از قبل دارای پایگاه داده Cloud Firestore باشد، عامل نمی‌تواند پایگاه داده دیگری اضافه کند. برای استفاده باید یک پروژه جدید و خالی ایجاد کنید.

استفاده از کنسول Firebase

شما می‌توانید داده‌ها و تنظیمات برنامه خود را در کنسول Firebase مشاهده کنید. برای دسترسی به پروژه‌های مرتبط با Google AI Studio ، این مراحل را دنبال کنید:

  1. به کنسول Firebase بروید و پروژه‌ای با عنوان AI Studio را انتخاب کنید.

  2. در پنل ناوبری سمت چپ، برای مشاهده و ویرایش داده‌های خود در Cloud Firestore ، روی Build > Cloud Firestore Database کلیک کنید، یا برای پیکربندی تنظیمات و داده‌های Authentication خود، روی Build > Authentication کلیک کنید.

عیب‌یابی و سوالات متداول

پاسخ سوالات متداول را بیابید و یاد بگیرید که چگونه هنگام ادغام Firebase با برنامه Google AI Studio خود، مشکلات را حل کنید.

پروژه Google Cloud / Firebase من چگونه انتخاب می‌شود؟

وقتی از ویژگی Add Firebase backend استفاده می‌کنید، عامل Google AI Studio به طور خودکار یک پروژه Firebase را برای استفاده در سرویس‌های backend برنامه شما ( Cloud Firestore و Firebase Authentication ) انتخاب می‌کند.

اگر می‌خواهید از یک پروژه خاص استفاده کنید، می‌توانید با استفاده از یک دستور مانند زیر به عامل دستور دهید که این کار را انجام دهد:

Use project PROJECT_ID for the Firebase backend.

اگر بعداً تصمیم گرفتید برنامه خود را در Cloud Run منتشر کنید، مهم است که به استفاده از همین پروژه ادامه دهید. انتخاب یک پروژه متفاوت منجر به خطا خواهد شد زیرا با پروژه مورد استفاده برای backend شما مطابقت نخواهد داشت.

چه روش‌های احراز هویتی پشتیبانی می‌شوند؟

وقتی از ویژگی Add Firebase backend استفاده می‌کنید، Google AI Studio agent، ورود به سیستم گوگل (Google Sign-In) را تنظیم می‌کند. برای تنظیم متدهای اضافی، آنها را در کنسول Firebase فعال کنید و از Google AI Studio agent برای به‌روزرسانی کدبیس خود کمک بگیرید.

آیا می‌توانم با Google AI Studio یک اپلیکیشن موبایل (مثل اندروید یا iOS) بسازم؟

در حال حاضر، عامل Google AI Studio فقط می‌تواند برنامه‌های وب ایجاد کند. برای اطلاعات بیشتر در مورد موارد پشتیبانی شده، به مستندات عامل Google AI Studio مراجعه کنید.

البته توجه داشته باشید که درست مانند همه برنامه‌های وب، برنامه‌های ایجاد شده توسط Google AI Studio می‌توانند به عنوان برنامه‌های وب موبایل از مرورگرهای نصب شده روی دستگاه‌های تلفن همراه قابل دسترسی باشند.

فایل firebase-blueprint.json چیست؟

این یک فایل واسطه است که توسط عامل Google AI Studio برای درک کدبیس برنامه شما استفاده می‌شود. این فایل را به صورت دستی تغییر ندهید، زیرا ممکن است باعث شود عامل کد نادرست یا Security Rules ناامن تولید کند.

اگر با خطای «سهمیه از حد مجاز تجاوز کرده است» مواجه شدم، چه کاری باید انجام دهم؟

رسیدن به سقف سهمیه Cloud Firestore به این معنی است که برنامه شما به سقف استفاده روزانه خود برای گروه سهمیه مشترک پایگاه داده Cloud Firestore شما رسیده است. دو راه برای حل این مشکل وجود دارد:

  • گزینه ۱: صبر کنید : سهمیه‌ها روزانه حدود نیمه‌شب به وقت اقیانوس آرام بازنشانی می‌شوند.
  • گزینه ۲: ارتقا : به طرح قیمت‌گذاری Blaze که در آن پرداخت در حین استفاده انجام می‌شود، ارتقا دهید.

اگر خطای «مجوزهای موجود یا ناکافی» دریافت کنم، چه کاری باید انجام دهم؟

این خطا زمانی رخ می‌دهد که برنامه شما سعی در خواندن یا نوشتن داده‌ها در پایگاه داده Cloud Firestore شما دارد، اما درخواست توسط Security Rules شما رد می‌شود. این نشان می‌دهد که Security Rules بر اساس وضعیت احراز هویت فعلی یا مسیر داده، اجازه انجام عملیات را نمی‌دهند. روی دکمه رفع خطا کلیک کنید تا از نماینده Google AI Studio بخواهید که Security Rules اصلاح کند.

وقتی برنامه Google AI Studio خود را حذف می‌کنم، چه اتفاقی برای backend فایربیس من می‌افتد؟

حذف برنامه شما در Google AI Studio به طور خودکار پروژه Firebase متصل، پایگاه داده Cloud Firestore یا پیکربندی‌های Firebase Authentication را حذف نمی‌کند.

اگر یک backend فایربیس اضافه کرده‌اید، باید به صورت دستی به کنسول Firebase بروید و پروژه را حذف کنید یا منابع جداگانه (مانند نمونه پایگاه داده Cloud Firestore و ارائه دهندگان Authentication ) را پاک کنید تا مطمئن شوید که تمام داده‌ها و پیکربندی‌ها حذف شده‌اند.

آیا عامل Google AI Studio می‌تواند داده‌ها را در پایگاه داده Cloud Firestore من حذف یا ویرایش کند؟

عامل Google AI Studio به گونه‌ای طراحی شده است که به تأمین منابع لازم برای backend و تولید کد و Security Rules کمک کند. اگرچه خود عامل نمی‌تواند مستقیماً ورودی‌های داده را در پایگاه داده Cloud Firestore شما حذف، ویرایش یا دستکاری کند، اما می‌تواند کدی را در اپلت شما بنویسد که برای انجام این اقدامات طراحی شده است. برای انجام وظایف مدیریت داده‌ها، مانند حذف ورودی‌ها، به صفحه پایگاه داده Cloud Firestore در کنسول Firebase بروید.

من عضو سازمانی هستم که از Google Cloud استفاده می‌کند؛ آیا می‌توانم برنامه گوگل هوش مصنوعی استودیو خود را به یک پروژه موجود در محیط Google Cloud سازمانم متصل کنم؟

مطمئن شوید که پروژه Firebase شما در یک پوشه سازماندهی خاص Google Cloud قرار دارد:

  1. پروژه Firebase خود را از قبل به صورت دستی ایجاد کنید.

  2. هنگام تنظیم backend فایربیس خود در Google AI Studio ، به agent دستور دهید که از پروژه موجود شما استفاده کند:

    Add Firestore to this app using project PROJECT_ID.
    

چرا نمی‌توانم اسناد خاصی را در کنسول Firebase پیدا کنم؟

وقتی عامل AI Studio داده‌ها را در یک مسیر تو در تو (مانند /users/user1/messages/msg1 ) ذخیره می‌کند، بدون اینکه ابتدا سند والد ( user1 ) را ایجاد کند، چیزی ایجاد می‌کند که به عنوان یک سند والد ناموجود شناخته می‌شود. این اسناد در کنسول Firebase نمایش داده نمی‌شوند، که می‌تواند پیدا کردن آنها را هنگام مرور پایگاه داده Cloud Firestore شما دشوار کند. اگرچه این موضوع بر نحوه اجرای برنامه شما تأثیری ندارد، اما اغلب می‌توانید مشکل را برای عامل AI Studio شرح دهید تا از آن بخواهد اسناد والد مفقود شده را ایجاد کند.

برای جزئیات بیشتر، به بخش «اسناد والد ناموجود» مراجعه کنید.

گوگل چگونه از داده‌های من (مثلاً کد و دستورالعمل‌ها) در Google AI Studio استفاده می‌کند؟

برای جزئیات بیشتر در مورد نحوه استفاده از داده‌های شما، به شرایط خدمات تکمیلی Gemini API مراجعه کنید.

من ایمیلی از Google Cloud در مورد «کلید API گوگل برای پروژه Google Cloud شما که برای عموم قابل دسترسی است» دریافت کردم. چه کاری باید انجام دهم؟

اگر ایمیلی از Google Cloud در مورد «کلید API گوگل قابل دسترس برای پروژه Google Cloud شما» دریافت کرده‌اید و کلید API ذکر شده در ایمیل، کلید API فایربیس شماست ، مطمئن شوید که کلید API الزامات زیر را برآورده می‌کند تا بتوانید آن را با خیال راحت در کد یا فایل‌های پیکربندی خود قرار دهید. می‌توانید موارد زیر را در پنل APIها و خدمات > اعتبارنامه‌ها در کنسول Google Cloud تأیید کنید.

همچنین، مطمئن شوید که Firebase Security Rules و App Check ، همانطور که برای محصولات Firebase مورد استفاده شما توصیه شده است، استفاده می‌کنید.

می‌توانید جزئیات مربوط به کلیدهای API برای Firebase را بیاموزید و فهرستی از سوالات متداول را در «درباره استفاده و مدیریت کلیدهای API برای Firebase بیاموزید» بیابید.