إضافة Firebase إلى تطبيق Google AI Studio

يمكن لوضع الإنشاء في 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: في البطاقة التي تظهر، اضبط إعداداتك على النحو التالي:

    1. تخصيص المشروع أو الموقع الجغرافي (اختياري): انقر على رمز الإعدادات ، ثم اختَر موقعًا جغرافيًا أو المشروع Google Cloud الذي تريد استخدامه.

    2. تأكيد اختيارك: للمتابعة، انقر على الزر تفعيل Firebase.

    بعد ذلك، يضبط الوكيل تلقائيًا خدمات Firebase المناسبة في مشروعك على Firebase، ويربط تطبيقك بمشروعك على Firebase، وينشئ رمز Firebase وملفات الإعداد المناسبة:

    • تطبيقات الويب:

      • الخدمات المحتملة: Cloud Firestore وAuthentication وFirebase Security Rules
      • تشمل الملفات /src/lib/firebase.ts وfirestore.rules
  3. النشر: بعد أن يصبح تطبيق الويب جاهزًا، استخدِم الخيار مشاركة > نشر لنشر تطبيق الويب الخاص بك إلى Cloud Run. سيتم نشر تطبيقك تلقائيًا في المشروع نفسه الذي اخترته أثناء عملية الإعداد.

    قبل مشاركة تطبيقك أو نشره أو طرحه، احرص أيضًا على مراجعة Firebase Security Rules من إنشاء الذكاء الاصطناعي.

إضافة Firebase إلى تطبيق أثناء التطوير

إذا أردت إضافة عملية دمج Firebase إلى تطبيق تعمل عليه في Google AI Studio، يمكنك إجراء ذلك في أي وقت خلال مرحلة التكرار باستخدام أحد الخيارَين التاليَين:

  • التحدّث إلى الوكيل: اطلب من الوكيل إضافة ميزة تتطلّب قاعدة بيانات أو مصادقة (مثل Add a Firestore database to this app).
  • استخدام قائمة الإعدادات: انتقِل إلى الإعدادات > عمليات الدمج وانقر على مربّع Firebase Firestore & Auth.

سيؤدي كلا الخيارَين إلى بدء عملية إعداد دمج Firebase، ما يتيح لك اختيار مشروع وتحديد موقع الخلفية وتفعيل عملية الدمج لتطبيقك كما هو موضّح في النظرة العامة.

بعد تفعيل عملية الدمج، يمكنك مراجعة إعداداتها، بما في ذلك المشروع والموقع الجغرافي والبريد الإلكتروني المخصّص للدعم في التطبيق ومعرّف قاعدة البيانات، في أي وقت من خلال الانتقال إلى الإعدادات > عمليات الدمج والنقر على مربّع Firebase Firestore & Auth.

التعرّف على الحصة المشترَكة في Cloud Firestore

استنادًا إلى تاريخ إنشاء تطبيقك وأهليّة حسابك، قد تتم استضافة قواعد البيانات في مشروع مستوى المبتدئين في Google Cloud أو في مشروع عادي. ومع ذلك، في كلتا الحالتين، يتم وضع جميع Cloud Firestore قواعد البيانات التي يوفّرها وكيل Google AI Studio في مجموعة قواعد البيانات نفسها ضمن "الحصة المشتركة للذكاء الاصطناعي" في مشروعك. وتشترك جميعها في الخصائص التالية:

  • الحصة المشترَكة: تشترك جميع قواعد البيانات في المجموعة في حصة استخدام (اطّلِع على التفاصيل أدناه).
  • لا يلزم توفّر حساب Cloud Billing: يمكنك إنشاء تطبيقك واختباره بدون إضافة معلومات الفوترة. يمكنك الاطّلاع على التفاصيل أدناه حول إضافة معلومات الفوترة بشكل اختياري.
  • عمليات إعادة الضبط اليومية: إذا بلغت الحدّ الأقصى للحصة اليومية (على سبيل المثال، 50 ألف عملية قراءة في اليوم)، سيتوقف تشغيل الخدمة مؤقتًا لجميع قواعد البيانات ضمن المجموعة، وسيتم استئنافه في اليوم التالي في منتصف الليل تقريبًا بتوقيت المحيط الهادئ.

تتشارك قواعد بيانات Cloud Firestore في مجموعة الحصص المشتركة الحدود التالية:

المقياس الحصة
البيانات المخزّنة إجمالي 1 غيبي بايت
خروج البيانات من الشبكة ‫10 غيغابايت في الشهر
كتابة الوحدات ‫40,000 عملية كتابة في اليوم
وحدات القراءة ‫50,000 قراءة في اليوم
وحدات التعديل في الوقت الفعلي ‫50,000 تعديل في اليوم

(اختياري) إضافة معلومات الفوترة للحصول على حصة أكبر من Cloud Firestore

إذا حقّق تطبيقك رواجًا واحتجت إلى تجاوز حدود Cloud Firestore، يمكنك إضافة معلومات الفوترة التي تؤدي إلى ترقية مشروعك على Firebase إلى خطة أسعار "الفئة المَرِنة" بنظام الدفع حسب الاستخدام.

ربما سبق لك إضافة معلومات الفوترة إلى مشروعك لأسباب مختلفة، مثل استخدام Nano Banana. في هذه الحالة، يكون مشروعك مدرجًا في خطة أسعار "الفئة المَرِنة"، ويمكنك الانتقال مباشرةً إلى خطوة ترقية قاعدة البيانات.

الخطوة 1: إضافة معلومات الفوترة (إذا لم يسبق لك ذلك)

يمكنك إعداد الفوترة مباشرةً في Google AI Studio.

  1. في Google AI Studio، انتقِل إلى صفحة المشاريع.
  2. انقر على إعداد الفوترة بجانب المشروع الذي تريد ترقيته.
  3. اتّبِع التعليمات التي تظهر على الشاشة لاختيار بلدك والموافقة على البنود وإضافة طريقة دفع أو اختيار حساب فوترة حالي. قد يُطلب منك أيضًا دفع مبلغ مسبق (وهو لا ينطبق على استخدام خدمات Firebase وGoogle Cloud).

الخطوة 2: ترقية قاعدة البيانات

حتى بعد إضافة الفوترة، تظل قواعد بيانات Cloud Firestore التي أنشأها عامل Google AI Studio في مجموعة الحصص المشتركة. لتفعيل التوسيع الكامل المدفوع لقاعدة بيانات معيّنة، عليك ترقيتها يدويًا.

  1. انتقِل إلى Firebase وحدة التحكّم واختَر المشروع الذي يحتوي على قاعدة البيانات التي تريد ترقيتها.
  2. من لوحة التنقّل اليمنى، انتقِل إلى قواعد البيانات ومساحة التخزين > Firestore.
  3. إذا كان مشروعك يحتوي على عدة مثيلات لقاعدة بيانات Cloud Firestore، اختَر المثيل الذي تريد ترقيته.
  4. ابحث عن بانر بالقرب من أعلى الصفحة يشير إلى أنّ قاعدة البيانات تخضع لحدود الحصة المشتركة للذكاء الاصطناعي. لترقية قاعدة البيانات، انقر على ترقية قاعدة البيانات > الترقية إلى خطة الدفع حسب الاستخدام.إذا لم يظهر هذا البانر، يعني ذلك أنّ قاعدة البيانات لم يتم إنشاؤها بواسطة وكيل Google AI Studio، وأنّها ليست جزءًا من مجموعة الحصة المشتركة، أو أنّها تمت ترقيتها من قبل.

من المفترض أن يسري التغيير لإيقاف الحصة المشتركة وتفعيل الفوترة حسب الاستخدام لقاعدة البيانات في غضون بضع دقائق.

إنشاء المحتوى باستخدام "Security Rules"

ينشئ Google AI Studio الوكيل Firebase Security Rules تلقائيًا استنادًا إلى منطق تطبيقك. تم تصميم Security Rules هذه لتكون "رفضًا تلقائيًا"، ما يعني أنّه لا يمكن للمستخدمين النهائيين لتطبيقك الوصول إلا إلى البيانات التي يملكونها.

يُرجى العِلم أنّه في حال تعديل Security Rules يدويًا في وحدة تحكّم Firebase، لن يعلم وكيل Google AI Studio بالتغييرات، وسيتم استبدالها أثناء عمليات تكرار التطبيق اللاحقة. ننصحك باستخدام وكيل Google AI Studio لتعديل Firebase Security Rules لضمان الحفاظ على التغييرات ومواءمتها مع منطق تطبيقك.

استخدام مشروع حالي

عند تفعيل عملية الدمج مع Firebase لأول مرة، يمكنك اختياريًا اختيار مشروع Google Cloud حالي تملكه:

  1. في البطاقة التي تظهر، انقر على رمز الإعدادات .
  2. اختَر مشروعك، ثم انقر على تفعيل Firebase.

أثناء تكرار تطبيقك، يمكنك أيضًا توجيه الوكيل لاستخدام مشروع مختلف من خلال طلب مثل:

Add Firestore to this app using project PROJECT_ID.

عند اختيار مشروع، يتم تنفيذ الإجراءات التالية:

  • سيتم توفير قاعدة بيانات Cloud Firestore جديدة في هذا المشروع باستخدام الحصة المشترَكة.
  • سيتم إعداد Firebase Authentication باستخدام ميزة "تسجيل الدخول باستخدام حساب Google".
  • سيتم منح حساب خدمة إذن الوصول إلى قاعدة بيانات Cloud Firestore. للسماح بالوصول إلى حساب المشرف من Google AI Studio، سيتم منح حساب خدمة جديد باسم ais-sandbox@PROJECT_ID.iam.gservice.com إذن الوصول إلى قاعدة بيانات Cloud Firestore. يرتبط هذا الحساب بتطبيقاتك على Google AI Studio فقط.
  • القيود: إذا كان مشروع Firebase يتضمّن Cloud Firestore قاعدة بيانات، لن يتمكّن الوكيل من إضافة قاعدة بيانات أخرى. عليك اختيار مشروع مختلف أو إنشاء مشروع جديد فارغ لاستخدامه.

استخدام وحدة تحكّم Firebase

يمكنك الاطّلاع على بيانات تطبيقك وإعداداته في وحدة تحكّم Firebase. إليك كيفية الوصول إلى مشروع Firebase المرتبط بـ Google AI Studio:

  1. انتقِل إلى وحدة تحكّم Firebase واختَر المشروع الذي يحمل التصنيف AI Studio.

  2. من جزء التنقّل الأيمن، استكشِف الخدمات المفعَّلة في مشروعك:

    • للاطّلاع على بيانات Cloud Firestore المخزَّنة وتعديلها، انتقِل إلى قواعد البيانات والتخزين > Firestore.
    • لعرض إعدادات وبيانات Authentication أو ضبطها، انتقِل إلى الأمان > المصادقة.

تحديد المشاكل وحلّها والأسئلة الشائعة

يمكنك العثور على إجابات عن الأسئلة الشائعة والتعرّف على كيفية حلّ المشاكل عند دمج Firebase مع تطبيق Google AI Studio.

كيف يتم اختيار Google Cloud / مشروع Firebase وموقعه الجغرافي؟

عند طلب خادم خلفي على Firebase لأحد التطبيقات، يمكنك اختياريًا تحديد موقع جغرافي ومشروع في البطاقة التي تظهر:

  • تخصيص المشروع أو الموقع الجغرافي (اختياري): انقر على رمز الإعدادات ، واختَر موقعًا جغرافيًا أو مشروع Google Cloud تريد استخدامه، ثم انقر على تفعيل Firebase.

يرجى الإحاطة علمًا بالتالي:

  • موقع قاعدة البيانات دائم: بعد اختيار موقع جغرافي لقاعدة البيانات، لا يمكنك تغييره لهذا المشروع. سيتم استخدام هذا الخيار كإعداد تلقائي لخدمات الخلفية الأخرى.
  • اتّساق المشروع: لضمان عملية دمج سلسة، تستخدم Google AI Studio تلقائيًا المشروع نفسه لكل من الخلفية وعملية النشر. لا يمكنك استخدام مشاريع مختلفة لخدمات مختلفة ضمن التطبيق نفسه.

ما هي طرق المصادقة المتاحة؟

يُعدّ وكيل Google AI Studio عملية إعداد ميزة "تسجيل الدخول باستخدام حساب Google" عندما تطلب إعداد Authentication أو شاشة تسجيل دخول. في ما يلي كيفية إضافة طرق تسجيل دخول إضافية إلى تطبيقك:

  1. في وحدة تحكّم Firebase، انتقِل إلى صفحة الأمان > المصادقة > طريقة تسجيل الدخول، وأعِدّ أي طرق تسجيل دخول مطلوبة.

  2. ارجع إلى Google AI Studio واطلب من وكيل Google AI Studio المساعدة في تعديل قاعدة الرموز البرمجية باستخدام طريقة تسجيل الدخول الجديدة.

هل يمكنني إنشاء تطبيق متوافق مع الأجهزة الجوّالة (مثل Android أو iOS) باستخدام Google AI Studio؟

يتيح وكيل Google AI Studio إنشاء كل من تطبيقات الويب وتطبيقات Android.

ومع ذلك، يُرجى العِلم أنّ عملية الدمج مع Firebase (إضافة Cloud Firestore وAuthentication) متاحة حاليًا لتطبيقات الويب فقط، وليس لتطبيقات Android. إذا كنت تنشئ تطبيق Android، عليك دمج Firebase يدويًا إذا كنت بحاجة إلى هذه الخدمات.

لا يمكن إنشاء تطبيقات iOS في Google AI Studio. ومع ذلك، كما هو الحال مع جميع تطبيقات الويب، يمكن الوصول إلى تطبيقات الويب التي ينشئها Google AI Studio كتطبيقات ويب متوافقة مع الأجهزة الجوّالة من المتصفّحات المثبّتة على الأجهزة الجوّالة (بما في ذلك iOS).

يمكنك الاطّلاع على مزيد من المعلومات حول إنشاء تطبيقات Android في مستندات Google AI Studio.

ما هو ملف firebase-blueprint.json؟

هذا ملف وسيط يستخدمه الوكيل Google AI Studio لفهم قاعدة الرموز البرمجية لتطبيقك. لا تعدِّل هذا الملف يدويًا، لأنّ ذلك قد يؤدي إلى أن ينشئ الوكيل رمزًا غير صحيح أو Security Rules غير آمن.

ماذا أفعل إذا ظهرت لي رسالة الخطأ "تم تجاوز الحصة"؟

يعني بلوغ الحد الأقصى للحصة المسموح بها في Cloud Firestore أنّ تطبيقك قد وصل إلى الحد الأقصى للاستخدام اليومي لمجموعة الحصص المشتركة في قاعدة بيانات Cloud Firestore. هناك طريقتان لحلّ هذه المشكلة:

  • الخيار 1: الانتظار: تتم إعادة ضبط الحصص يوميًا في منتصف الليل بتوقيت المحيط الهادئ.
  • الخيار 2: الترقية: يمكنك الترقية إلى خطة Blaze المَرِنة التي تتيح لك الدفع حسب الاستخدام.
    • إذا قام Google AI Studio وكيل بإعداد Cloud Firestore لك، عليك بعد ذلك استخدام الزر ترقية قاعدة البيانات الموضّح في إضافة الفوترة للحصول على حصة أكبر من Cloud Firestore لنقل قاعدة البيانات إلى حالة مدفوعة عادية. إذا أعددت Cloud Firestore يدويًا، لن تحتاج إلى استخدام الزر ترقية قاعدة البيانات.

ماذا أفعل إذا ظهرت لي رسالة الخطأ "الأذونات غير متوفّرة أو غير كافية"؟

يحدث هذا الخطأ عندما يحاول تطبيقك قراءة البيانات أو كتابتها في قاعدة بيانات Cloud Firestore، ولكن يتم رفض الطلب من خلال Security Rules. يشير ذلك إلى أنّ Security Rules لا تسمح بتنفيذ العملية المطلوبة استنادًا إلى حالة المصادقة الحالية أو مسار البيانات. انقر على الزر إصلاح الخطأ لطلب أن يحاول وكيل Google AI Studio تصحيح Security Rules.

ماذا يحدث لخادم Firebase الخلفي عند حذف تطبيق Google AI Studio؟

لن يؤدي حذف تطبيقك في Google AI Studio إلى حذف مشروع Firebase المرتبط أو قاعدة بيانات Cloud Firestore أو إعدادات Firebase Authentication تلقائيًا.

إذا أضفت خلفية Firebase، عليك الانتقال يدويًا إلى وحدة تحكّم Firebase وحذف المشروع أو تنظيف الموارد الفردية (مثل مثيل قاعدة بيانات Cloud Firestore وموفّري Authentication) لضمان إزالة جميع البيانات والإعدادات.

هل يمكن لوكيل Google AI Studio حذف البيانات أو تعديلها في قاعدة بيانات Cloud Firestore؟

تم تصميم الوكيل Google AI Studio للمساعدة في توفير موارد الخلفية اللازمة وإنشاء الرموز البرمجية وSecurity Rules. مع أنّ الوكيل نفسه لا يمكنه حذف إدخالات البيانات أو تعديلها أو معالجتها مباشرةً في قاعدة بيانات Cloud Firestore، يمكنه كتابة رمز برمجي في تطبيقك مصمَّم لتنفيذ هذه الإجراءات. لتنفيذ مهام إدارة البيانات، مثل حذف الإدخالات، انتقِل إلى صفحة قواعد البيانات ومساحة التخزين > Firestore في وحدة تحكّم Firebase.

أنا أنتمي إلى مؤسسة تستخدم Google Cloud. هل يمكنني ربط تطبيق Google AI Studio بمشروع حالي ضمن بيئة Google Cloud الخاصة بمؤسستي؟

نعم. تأكَّد من وضع مشروع Firebase في مجلد Google Cloud المؤسسة، ثم اربط مشروعك باستخدام إحدى الطريقتَين التاليتَين:

  • أثناء التفعيل: عند تفعيل عملية الربط مع Firebase لأول مرة في Google AI Studio، اختَر مشروعك الحالي في البطاقة التي تظهر. انقر على رمز الإعدادات واختَر مشروعك.
  • أثناء التكرار: إذا سبق لك تفعيل Firebase أو أردت التبديل بين المشاريع لاحقًا، يمكنك توجيه العامل لاستخدام مشروعك الحالي من خلال طلب مثل:

      Add Firestore to this app using project PROJECT_ID.
    

لماذا لا يمكنني العثور على مستندات معيّنة في وحدة تحكّم Firebase؟

عندما يحفظ وكيل AI Studio البيانات في مسار متداخل (مثل /users/user1/messages/msg1) بدون إنشاء المستند الرئيسي أولاً (user1)، ينشئ ما يُعرف باسم المستند الرئيسي غير الموجود. لا يتم عرض هذه المستندات في وحدة تحكّم Firebase، ما قد يصعّب العثور عليها عند تصفّح قاعدة بيانات Cloud Firestore. على الرغم من أنّ ذلك لا يؤثّر في طريقة تشغيل تطبيقك، يمكنك غالبًا وصف المشكلة لبرنامج AI Studio لكي يطلب إنشاء المستندات الرئيسية الناقصة.

لمزيد من التفاصيل، يُرجى الاطّلاع على المستندات الرئيسية غير المتوفّرة.

هل يمكنني اختيار الموقع الجغرافي لقاعدة بيانات Cloud Firestore؟

نعم. عند تفعيل عملية الدمج مع Firebase لأول مرة في Google AI Studio، يمكنك اختيار الموقع الجغرافي Cloud Firestore لقاعدة البيانات.

يُرجى العِلم أنّ الموقع الجغرافي الذي تختاره ينطبق على جميع Cloud Firestore قواعد البيانات التي ينشئها وكيل Google AI Studio في مشروع Firebase هذا. بعد ضبط هذا الموقع الجغرافي، لا يمكن تغييره لقواعد البيانات هذه.

بعد ترقية قاعدة بيانات Cloud Firestore، هل يمكنني إرجاعها إلى مجموعة الحصص المشتركة؟

بعد نقل قاعدة بيانات من مجموعة الحصص المشتركة وتحويلها إلى مثيل عادي مدفوع، يمكنك استخدام الأمر curl لإعادتها إلى مجموعة الحصص المشتركة. يُرجى العِلم أنّه يجب أن تكون جميع قواعد البيانات ضمن مجموعة الحصة المشتركة من الإصدار نفسه وفي المنطقة نفسها.

  • ‫PROJECT_ID : رقم تعريف مشروع Firebase يمكنك العثور على رقم التعريف هذا في صفحة الإعدادات > عام في وحدة تحكّم Firebase.

  • DATABASE_ID : معرّف قاعدة بيانات Cloud Firestore، والذي سيتطابق مع معرّف التطبيق الصغير. يمكنك العثور على رقم تعريف قاعدة البيانات هذا في Google AI Studio من خلال الانتقال إلى الإعدادات > عمليات الدمج والنقر على مربّع Firebase Firestore & Auth.

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": true}'

كيف تستخدم Google بياناتي (مثل الرموز والطلبات) في Google AI Studio؟

يُرجى الرجوع إلى بنود الخدمة الإضافية الخاصة بـ Gemini API للحصول على تفاصيل حول كيفية استخدام بياناتك.

تلقّيت رسالة إلكترونية من Google Cloud بشأن "مفتاح Google API متاح للجميع لمشروعك Google Cloud". ما هو الإجراء الواجب اتّخاذه؟

إذا تلقّيت رسالة إلكترونية من Google Cloud بشأن "مفتاح Google API متاح للجميع لمشروعك Google Cloud" وكان مفتاح API المُدرَج في الرسالة الإلكترونية هو مفتاح Firebase API، تأكَّد من أنّ مفتاح API يستوفي المتطلبات التالية ليكون من الآمن تضمينه في الرموز البرمجية أو ملفات الإعداد. يمكنك التحقّق من ما يلي في صفحة واجهات برمجة التطبيقات والخدمات > بيانات الاعتماد في وحدة تحكّم Google Cloud.

تأكَّد أيضًا من استخدام Firebase Security Rules وApp Check على النحو الموصى به لمنتجات Firebase التي تستخدمها.

يمكنك الاطّلاع على تفاصيل حول مفاتيح واجهة برمجة التطبيقات في Firebase والعثور على قائمة بالأسئلة الشائعة في مزيد من المعلومات عن استخدام مفاتيح واجهة برمجة التطبيقات وإدارتها في Firebase.