يمكن لوضع "الإنشاء" في Google AI Studio إعداد Cloud Firestore و Firebase Authentication ودمجهما تلقائيًا في تطبيقات الويب، ما يسهّل إنشاء تطبيقات تتضمّن مساحة تخزين بيانات دائمة وعمليات تسجيل دخول آمنة. من خلال طلب واحد وبعض النقرات فقط، يمكنك منح وكيل Google AI Studio إذن إعداد مشروع على Firebase وربط تطبيقك بهذا المشروع وإنشاء كل رموز Cloud Firestore و Authentication البرمجية مباشرةً في تطبيقك.
نظرة عامة: إضافة خادم خلفي إلى تطبيقك على Google AI Studio
وصف فكرتك: أنشئ تطبيقًا جديدًا في Google AI Studio واشرح ميزة تتطلّب قاعدة بيانات أو مصادقة. على سبيل المثال، يمكنك إدخال الطلب التالي:
Build a shared to-do list app using Firebase as a backend.تفعيل التكامل مع Firebase: في البطاقة التي تظهر، يمكنك تخصيص إعداداتك:
- اختيار موقع جغرافي (اختياري): اختَر الموقع الجغرافي لقاعدة البيانات وتطبيقك باستخدام القائمة المنسدلة للموقع الجغرافي.
- اختيار مشروع (اختياري): انقر على رمز الإعدادات icon ، واختَر المشروع الذي تريد استخدامه، ثم انقر على حفظ.Google Cloud
- تأكيد اختيارك: للمتابعة، انقر على الزر تفعيل Firebase.
بعد ذلك، يربط الوكيل تلقائيًا تطبيقك بمشروع Firebase و ينشئ رموز Cloud Firestore وAuthentication البرمجية اللازمة، بما في ذلك ملف
/src/lib/firebase.tsوملفfirestore.rules.النشر: بعد أن يصبح تطبيق الويب جاهزًا، استخدِم الخيار مشاركة > نشر لنشر تطبيق الويب على Cloud Run. سيتم نشر تطبيقك تلقائيًا في المشروع نفسه الذي اخترته أثناء الإعداد.
فهم الحصة المشترَكة لـ Cloud Firestore
استنادًا إلى تاريخ إنشاء تطبيقك ومدى أهليتك لاستخدام حسابك، قد تتم استضافة قواعد البيانات في مشروع ضمن طبقة Google Cloud المجانية أو مشروع عادي. ومع ذلك، في كلتا الحالتَين، يتم وضع جميع Cloud Firestore قواعد البيانات التي يوفّرها الوكيل Google AI Studio في مجموعة قواعد البيانات نفسها ضمن "الحصة المشترَكة للذكاء الاصطناعي" في مشروعك. وتشترك جميعها في الخصائص التالية:
- الحصة المشترَكة: تشترك جميع قواعد البيانات في المجموعة في حصة استخدام (راجِع التفاصيل أدناه).
- لا يلزم توفّر حسابCloud Billing: يمكنك إنشاء تطبيقك واختباره بدون إضافة الفوترة. راجِع التفاصيل أدناه حول إضافة الفوترة اختياريًا.
- إعادة الضبط اليومية: إذا وصلت إلى حدّ الحصة اليومية (على سبيل المثال، 50 ألف عملية قراءة في اليوم)، ستتوقف الخدمة لجميع قواعد البيانات ضِمن المجموعة وتستأنف في اليوم التالي في منتصف الليل تقريبًا بتوقيت المحيط الهادي.
| المقياس | الحصة |
|---|---|
| البيانات المخزَّنة | إجمالي 1 غيغابايت |
| البيانات الصادرة من الشبكة | 10 غيغابايت في الشهر |
| وحدات الكتابة | 40 ألف عملية كتابة في اليوم |
| وحدات القراءة | 50 ألف عملية قراءة في اليوم |
| وحدات التعديل في الوقت الفعلي | 50 ألف عملية تعديل في اليوم |
(اختياري) إضافة الفوترة للحصول على حصة أكبر على Cloud Firestore
إذا اكتسب تطبيقك رواجًا وكنت بحاجة إلى تجاوز الحدود المجانية لـ Cloud Firestore، يمكنك إضافة الفوترة التي ترقّي مشروعك على Firebase إلى خطة أسعار Blaze المَرِنة للدفع حسب الاستخدام.
ربما سبق لك إضافة الفوترة إلى مشروعك لأسباب مختلفة، مثل استخدام Nano Banana. في هذه الحالة، يكون مشروعك ضمن خطة أسعار Blaze، ويمكنك الانتقال مباشرةً إلى خطوة ترقية قاعدة البيانات.
الخطوة 1: إضافة الفوترة (إذا لم يسبق لك إجراء ذلك)
يمكنك إعداد الفوترة مباشرةً ضِمن Google AI Studio.
- في Google AI Studio، انتقِل إلى صفحة المشاريع.
- انقر على إعداد الفوترة بجانب المشروع الذي تريد ترقيته.
- اتّبِع التعليمات التي تظهر على الشاشة لاختيار بلدك والموافقة على البنود وإضافة طريقة دفع أو اختيار حساب فوترة حالي. قد يُطلب منك أيضًا دفعة مسبقة (لا تُطبَّق على استخدام خدمات Firebase و Google Cloud).
الخطوة 2: ترقية قاعدة البيانات
حتى بعد إضافة الفوترة، تظل قواعد بيانات Cloud Firestore التي ينشئها وكيل
Google AI Studio في مجموعة "الحصة المشترَكة". لتفعيل التوسيع المدفوع بالكامل لقاعدة بيانات معيّنة، عليك نقلها يدويًا من المجموعة باستخدام أمر curl.
PROJECT_ID : رقم تعريف مشروع Firebase يمكنك العثور على هذا المعرّف في
صفحة الإعدادات > عام ضِمن وحدة التحكّم.FirebaseDATABASE_ID : رقم تعريف قاعدة بيانات Cloud Firestore، الذي سيتطابق مع رقم تعريف تطبيقك المصغّر يمكنك العثور على رقم تعريف قاعدة البيانات هذا في وحدة تحكّم Firebase من خلال الانتقال إلى صفحة قواعد البيانات ومساحة التخزين > Firestore، ثم البحث في عمود الاسم.
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}'
التحقّق من ترقية قاعدة البيانات
من المفترض أن يسري التغيير لإيقاف "الحصة المشترَكة" وتفعيل الفوترة بنظام الدفع حسب الاستخدام لقاعدة البيانات في غضون بضع دقائق. يمكنك التحقّق من التغيير باستخدام أحد الخيارَين التاليَين:
اختبار تطبيقك (يُفضَّل): الطريقة الأكثر موثوقية لتأكيد الترقية هي استخدام تطبيقك. نفِّذ عمليات Cloud Firestore التي كانت تصل سابقًا إلى الحدود اليومية المجانية (على سبيل المثال، تجاوز عتبات Cloud Firestore Enterprise edition البالغة 50 ألف وحدة قراءة أو 40 ألف وحدة كتابة). من المفترض أن تنجح هذه العمليات الآن بدون ظهور أخطاء
RESOURCE_EXHAUSTED.التحقّق من حالة قاعدة البيانات من خلال واجهة برمجة التطبيقات: يمكنك استخدام طلب
curlGETلجلب التفاصيل الحالية لقاعدة البيانات:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://firestore.googleapis.com/v1/projects/PROJECT_ID/databases/DATABASE_ID"راجِع استجابة JSON. تكون قاعدة البيانات قد تمت ترقيتها بنجاح ولم تعُد محدودة إذا كان الحقل
بدلاً من ذلك، أرسِل طلبfreeTierLimitedغير متوفّر في الاستجابة.GETللتحقّق من ذلك.فهم الفرق بين
freeTierوfreeTierLimited: من المحتمل أن يظلّ يظهر"freeTier": trueفي استجابةGET. هذا الحقل منفصل عن إعدادfreeTierLimitedالذي غيّرته."freeTier": trueمرتبط بـ مصدر قاعدة البيانات وإمكانية استخدام الطبقة المجانية. لا يعني ذلك أنّ الحدود اليومية لا تزال مفروضة بعد ضبطfreeTierLimitedعلىfalse. يتم الإشارة إلى إيقاف الحدود بنجاح من خلال عدم توفّرfreeTierLimitedفي استجابةGET.
إذا كان تطبيقك لا يزال يواجه أخطاء في الحدّ اليومي بعد الانتظار لعدة دقائق،
وكان طلب GET يُظهر أنّ الحقل freeTierLimited غير متوفّر فعلاً، تأكَّد
من أنّ حساب الفوترة
الخاص بمشروعك في حالة جيدة.
إنشاء 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 تملكه:
- في البطاقة التي تظهر، انقر على رمز الإعدادات icon .
- اختَر مشروعك، ثم انقر على حفظ.
أثناء تكرار تطبيقك، يمكنك أيضًا توجيه الوكيل لاستخدام مشروع مختلف باستخدام طلب مثل:
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:
انتقِل إلى وحدة التحكّم Firebase و اختَر المشروع الذي يحمل تصنيف
AI Studio.من لوحة التنقّل اليمنى، استكشِف الخدمات المفعَّلة في مشروعك:
- للاطّلاع على بيانات Cloud Firestore المخزَّنة وتعديلها، انتقِل إلى قواعد البيانات ومساحة التخزين > Firestore.
- للاطّلاع على إعدادات Authentication وبياناتها أو ضبطها، انتقِل إلى الأمان > المصادقة.
تحديد المشاكل وحلّها والأسئلة الشائعة
يمكنك العثور على إجابات عن الأسئلة الشائعة والتعرّف على كيفية حلّ المشاكل عند دمج Firebase مع تطبيقك Google AI Studio.
كيف يتم اختيار مشروع Google Cloud / Firebase والموقع الجغرافي؟
عند طلب خادم خلفي على Firebase لتطبيق، يمكنك اختياريًا اختيار موقع جغرافي ومشروع في البطاقة التي تظهر:
- اختيار موقع جغرافي (اختياري): اختَر الموقع الجغرافي لقاعدة البيانات وتطبيقك باستخدام القائمة المنسدلة للموقع الجغرافي.
- اختيار مشروع (اختياري): انقر على رمز الإعدادات icon , واختَر الـ Google Cloud مشروع الذي تريد استخدامه، ثم انقر على حفظ.
يُرجى مراعاة ما يلي:
- موقع قاعدة البيانات دائم: بعد اختيار موقع جغرافي لقاعدة البيانات، لا يمكنك تغييره لهذا المشروع. سيتم استخدام هذا الخيار كإعداد تلقائي لخدمات الخادم الخلفي الأخرى.
- اتساق المشروع: لضمان تكامل سلس، Google AI Studio يستخدم تلقائيًا المشروع نفسه لكلٍّ من الخادم الخلفي وعملية النشر. لا يمكنك استخدام مشاريع مختلفة لخدمات مختلفة ضِمن التطبيق نفسه.
ما هي طرق المصادقة المتاحة؟
يُعدّ وكيل Google AI Studio ميزة "تسجيل الدخول باستخدام حساب Google" عندما تطلب إعداد Authentication أو شاشة تسجيل الدخول. إليك كيفية إضافة طرق تسجيل دخول إضافية إلى تطبيقك:
في وحدة تحكّم Firebase، انتقِل إلى صفحة الأمان > المصادقة > طريقة تسجيل الدخول، واضبط أي طرق تسجيل دخول مطلوبة.
ارجِع إلى Google AI Studio واطلب من وكيل Google AI Studio المساعدة في تعديل قاعدة الرموز البرمجية باستخدام طريقة تسجيل الدخول الجديدة.
هل يمكنني إنشاء تطبيق للأجهزة الجوّالة (مثل Android أو iOS) باستخدام Google AI Studio؟
في الوقت الحالي، لا يمكن لوكيل Google AI Studio إنشاء تطبيقات الويب إلا. يمكنك الاطّلاع على مزيد من المعلومات حول الميزات المتاحة في Google AI Studio مستندات وكيل.
يُرجى العِلم أنّه يمكن الوصول إلى التطبيقات التي تم إنشاؤها باستخدام Google AI Studio كتطبيقات ويب للأجهزة الجوّالة من المتصفّحات المثبَّتة على الأجهزة الجوّالة، تمامًا مثل جميع تطبيقات الويب.
ما هو ملف firebase-blueprint.json؟
هذا ملف وسيط يستخدمه وكيل Google AI Studio لفهم قاعدة الرموز البرمجية لتطبيقك. لا تعدِّل هذا الملف يدويًا، لأنّ ذلك قد يؤدي إلى أن ينشئ الوكيل رمزًا برمجية غير صحيحة أو Security Rules.
ماذا عليّ أن أفعل إذا ظهر لي الخطأ "تم تجاوز الحصة"؟
يعني الوصول إلى حدّ الحصة على Cloud Firestore أنّ تطبيقك قد وصل إلى الحدّ الأقصى للاستخدام اليومي لمجموعة "الحصة المشترَكة" على قاعدة بيانات Cloud Firestore. هناك طريقتان لحلّ هذه المشكلة:
- الخيار 1: الانتظار: تتم إعادة ضبط الحصص يوميًا في منتصف الليل تقريبًا بتوقيت المحيط الهادي.
- الخيار 2: الترقية: يمكنك الترقية إلى خطة أسعار Blaze المَرِنة للدفع حسب الاستخدام.
- إذا أعدّ وكيل Google AI Studio خدمة Cloud Firestore لك، عليك بعد ذلك استخدام أمر
curlالموضّح في إضافة الفوترة للحصول على حصة أكبر على Cloud Firestore لنقل قاعدة البيانات إلى حالة مدفوعة عادية. إذا أعددت Cloud Firestore يدويًا، لن يكون من الضروري تشغيل أمرcurl.
- إذا أعدّ وكيل Google AI Studio خدمة Cloud Firestore لك، عليك بعد ذلك استخدام أمر
ماذا عليّ أن أفعل إذا ظهر لي الخطأ "الأذونات غير متوفّرة أو غير كافية"؟
يحدث هذا الخطأ عندما يحاول تطبيقك قراءة البيانات أو كتابتها في قاعدة بيانات Cloud Firestore، ولكن يتم رفض الطلب من خلال Security Rules. يشير ذلك إلى أنّ Security Rules لا تسمح بالعملية التي تمّت محاولتها استنادًا إلى حالة المصادقة الحالية أو مسار البيانات. انقر على الز0}إصلاح الخطأ لتوجيه وكيل 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 Google Cloud، ثم اربط مشروعك باستخدام إحدى الطريقتَين التاليتَين:
- أثناء التفعيل: عند تفعيل التكامل مع Firebase لأول مرة في Google AI Studio، اختَر مشروعك الحالي في البطاقة التي تظهر. انقر على رمز الإعدادات icon ، واختَر مشروعك، و ثم انقر على حفظ.
أثناء التكرار: إذا سبق لك تفعيل 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 هذا. بعد ضبط هذا الموقع الجغرافي، لا يمكن تغييره لقواعد البيانات هذه.
كيف تستخدم Google بياناتي (على سبيل المثال، الرموز البرمجية والطلبات) في Google AI Studio؟
راجِع بنود الخدمة الإضافية الخاصة بـ Gemini API للحصول على تفاصيل حول كيفية استخدام بياناتك.
تلقّيتُ رسالة إلكترونية من Google Cloud حول "مفتاح Google API الذي يمكن الوصول إليه علنًا لمشروعك على Google Cloud". ما هو الإجراء المطلوب اتّخاذه؟
إذا تلقّيت رسالة إلكترونية من Google Cloud حول "مفتاح Google API الذي يمكن الوصول إليه علنًا لمشروعك على Google Cloud" وكان مفتاح واجهة برمجة التطبيقات المُدرَج في الرسالة الإلكترونية هو مفتاح Firebase API، تأكَّد من أنّ مفتاح واجهة برمجة التطبيقات يستوفي المتطلبات التالية ليكون آمنًا لتضمينه في الرمز البرمجي أو ملفات الإعدادات. يمكنك التحقّق من ما يلي في واجهات برمجة التطبيقات والخدمات > بيانات الاعتماد لوحة التحكّم Google Cloud.
-
إنّه مفتاح واجهة برمجة التطبيقات الذي تستخدمه لتطبيق Firebase و فقط لـ خدمات Firebase. عادةً ما تُسمّى هذه المفاتيح
Browser key (auto created by Firebase)أوAndroid key (auto created by Firebase)أوiOS key (auto created by Firebase). - يتضمّن جميع واجهات برمجة التطبيقات المطلوبة المرتبطة بـ Firebase في القائمة المسموح بها "قيود واجهة برمجة التطبيقات" الخاصة بالمفتاح.
-
لا يتضمّن أي واجهات برمجة تطبيقات أخرى في القائمة المسموح بها "قيود واجهة برمجة التطبيقات". على وجه الخصوص، يجب ألا
تتضمّن القائمة
Generative Language API.
تأكَّد أيضًا من أنّك تستخدم Firebase Security Rules وApp Check كما هو مقترَح لمنتجات Firebase التي تستخدمها.
يمكنك الاطّلاع على تفاصيل حول مفاتيح واجهة برمجة التطبيقات لـ Firebase والعثور على قائمة بالأسئلة الشائعة في التعرّف على استخدام مفاتيح واجهة برمجة التطبيقات لـ Firebase وإدارتها