הוספת Cloud Firestore ואימות לאפליקציית 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: בכרטיס שמופיע, מגדירים את ההגדרה:

    • התאמה אישית של פרויקט או מיקום (אופציונלי): לוחצים על סמל ההגדרות , ואז בוחרים מיקום או את הפרויקט Google Cloud שרוצים להשתמש בו.
    • מאשרים את הבחירה: כדי להמשיך, לוחצים על הלחצן הפעלת Firebase.

    הסוכן מקשר באופן אוטומטי את האפליקציה לפרויקט Firebase ויוצר את הקודים הנדרשים Cloud Firestore ו-Authentication, כולל קובץ /src/lib/firebase.ts וקובץ firestore.rules.

  3. פריסה: כשמוכנים, משתמשים באפשרות שיתוף > פרסום כדי לפרוס את אפליקציית האינטרנט ב-Cloud Run. האפליקציה תיפרס אוטומטית לאותו פרויקט שבחרתם במהלך ההגדרה.

    לפני שמשתפים או פורסים את האפליקציה, חשוב גם לעיין בתוכן שנוצר על ידי AI Firebase Security Rules.

הוספת Firebase לאפליקציה במהלך הפיתוח

אם רוצים להוסיף את השילוב עם Firebase לאפליקציה שעובדים עליה ב-Google AI Studio, אפשר לעשות זאת בכל שלב במהלך שלב האיטרציה באמצעות אחת מהאפשרויות הבאות:

  • לדבר עם הסוכן: להנחות את הסוכן להוסיף תכונה שדורשת מסד נתונים או אימות (לדוגמה, Add a Firestore database to this app).
  • שימוש בתפריט ההגדרות: עוברים אל הגדרות > שילובים ולוחצים על האריח Firebase Firestore & Auth.

שתי האפשרויות יפעילו את תהליך ההגדרה של השילוב עם Firebase, ויאפשרו לכם לבחור פרויקט, להגדיר את מיקום ה-Backend ולהפעיל את השילוב באפליקציה, כמו שמתואר בסקירה הכללית.

אחרי שמפעילים את השילוב, אפשר לבדוק את ההגדרה שלו – כולל הפרויקט, המיקום, כתובת האימייל לתמיכה באפליקציה ומזהה מסד הנתונים – בכל שלב. כדי לעשות את זה, עוברים אל הגדרות > שילובים ולוחצים על האריח Firebase Firestore & Auth.

הסבר על המכסה המשותפת של Cloud Firestore

בהתאם למועד שבו יצרתם את האפליקציה ולזכאות שלכם לחשבון, יכול להיות שהמסדי נתונים שלכם מתארחים בפרויקט בתוכנית Starter של Google Cloud או בפרויקט רגיל. עם זאת, בשני המקרים, כל מסדי הנתונים Cloud Firestoreשהוקצו על ידי סוכן Google AI Studio ממוקמים באותה קבוצה של מסדי נתונים 'מכסת AI משותפת' בפרויקט. לכולם יש את המאפיינים האלה:

  • מכסה משותפת: כל מסדי הנתונים בקבוצה חולקים מכסה (פרטים בהמשך).
  • לא נדרש חשבון Cloud Billing: אתם יכולים ליצור ולבדוק את האפליקציה בלי להוסיף חיוב. בהמשך מפורטות האפשרויות להוספת חיוב.
  • איפוס יומי: אם תגיעו למגבלת מכסת השימוש היומית (לדוגמה, 50,000 קריאות ביום), השירות יושהה את כל מסדי הנתונים בקבוצה וימשיך לפעול ביום הבא בסביבות חצות לפי שעון החוף הפסיפי.

מסדי נתונים של Cloud Firestore בקבוצת מכסת האחסון המשותפת חולקים את המגבלות הבאות:

מדד מכסה
נתונים מאוחסנים ‫1GiB סה"כ
תעבורת נתונים יוצאת מהרשת ‫10GiB לחודש
יחידות כתיבה ‫40,000 כתיבות ביום
קריאת יחידות ‫50,000 קריאות ביום
יחידות עדכון בזמן אמת ‫50,000 עדכונים ביום

(אופציונלי) הוספת חיוב כדי לקבל מכסת Cloud Firestore גדולה יותר

אם האפליקציה שלכם צוברת פופולריות ואתם צריכים להשתמש ביותר משאבים ממה שמוקצה לכם בחינם ב-Cloud Firestore, אתם יכולים להוסיף אמצעי תשלום ולשדרג את פרויקט Firebase לתוכנית התמחור Blaze בתשלום לפי שימוש.

יכול להיות שכבר הוספתם חיוב לפרויקט מסיבות אחרות, למשל כדי להשתמש ב-Nano Banana. אם זה המצב, הפרויקט שלכם כבר נמצא במינוי Blaze בתשלום לפי שימוש, ואתם יכולים לדלג ישר אל השלב של שדרוג מסד הנתונים.

שלב 1. הוספת פרטי חיוב (אם עדיין לא עשיתם את זה)

אפשר להגדיר את החיוב ישירות ב-Google AI Studio.

  1. ב-Google AI Studio, עוברים אל דף הפרויקטים.
  2. לצד הפרויקט שרוצים לשדרג, לוחצים על הגדרת חיוב.
  3. פועלים לפי ההנחיות במסך כדי לבחור את המדינה, מאשרים את התנאים ומוסיפים אמצעי תשלום או בוחרים חשבון לחיוב קיים. יכול להיות שתידרשו לשלם מראש (תשלום לא יקוזז מהשימוש בשירותי Firebase ו-Google Cloud).

שלב 2: משדרגים את מסד הנתונים

גם אחרי הוספת פרטי חיוב, מסדי נתונים של Cloud Firestore שנוצרו על ידי סוכן Google AI Studio נשארים בקבוצת המכסה המשותפת. כדי להפעיל שדרוג מלא בתשלום למסד נתונים ספציפי, צריך לשדרג אותו ידנית.

  1. עוברים אל Firebase המסוף ובוחרים את הפרויקט שמכיל את מסד הנתונים שרוצים לשדרג.
  2. בחלונית הניווט הימנית, עוברים אל Databases & Storage (מסדי נתונים ואחסון) > Firestore.
  3. אם הפרויקט מכיל כמה מופעים של מסדי נתונים Cloud Firestore, בוחרים את המופע שרוצים לשדרג.
  4. חפשו באנר בחלק העליון של הדף שמציין שמסד הנתונים כפוף למגבלות המכסה המשותפת של AI. כדי לשדרג את מסד הנתונים, לוחצים על שדרוג מסד הנתונים > שדרוג לתשלום לפי שימוש.אם הבאנר הזה לא מופיע, יכול להיות שמסד הנתונים לא נוצר על ידי סוכן 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 console ובוחרים את הפרויקט עם התווית AI Studio.

  2. בחלונית הניווט הימנית, בודקים את השירותים המופעלים בפרויקט:

    • כדי לראות ולערוך את הנתונים המאוחסנים ב-Cloud Firestore, עוברים אל Databases & Storage > Firestore.
    • כדי להציג או להגדיר את ההגדרות והנתונים של Authentication, עוברים אל אבטחה > אימות.

פתרון בעיות ושאלות נפוצות

ריכזנו בהמשך תשובות לשאלות נפוצות ומידע על פתרון בעיות שקשורות לשילוב של Firebase עם אפליקציית Google AI Studio.

איך נבחרים המיקום והפרויקט שלי ב-Google Cloud / Firebase?

כשמבקשים ליצור קצה עורפי של Firebase לאפליקציה, אפשר לבחור מיקום ופרויקט בכרטיס שמופיע:

  • התאמה אישית של הפרויקט או המיקום (אופציונלי): לוחצים על סמל ההגדרות , בוחרים מיקום או את הפרויקט Google Cloud שרוצים להשתמש בו, ואז לוחצים על הפעלת Firebase.

זכור את הנקודות הבאות:

  • המיקום של מסד הנתונים הוא קבוע: אחרי שבוחרים מיקום למסד הנתונים, אי אפשר לשנות אותו בפרויקט הזה. הבחירה הזו תשמש כברירת מחדל לשירותי קצה עורפיים אחרים.
  • עקביות הפרויקט: כדי להבטיח שילוב חלק, Google AI Studio משתמש באופן אוטומטי באותו פרויקט גם עבור הקצה העורפי וגם עבור הפריסה. אי אפשר להשתמש בפרויקטים שונים לשירותים שונים באותה אפליקציה.

אילו שיטות אימות נתמכות?

Google AI Studioהנציג מגדיר כניסה באמצעות חשבון Google כשמבקשים להגדיר Authentication או מסך כניסה. כך מוסיפים שיטות כניסה נוספות לאפליקציה:

  1. במסוף Firebase, עוברים אל Security (אבטחה) > Authentication (אימות) > Sign-in method (שיטת כניסה) ומגדירים את שיטות הכניסה הרצויות.

  2. חוזרים אל Google AI Studio ומבקשים מנציג של Google AI Studio עזרה בעדכון בסיס הקוד בשיטת הכניסה החדשה.

האם אפשר ליצור אפליקציה לנייד (למשל ל-Android או ל-iOS) באמצעות Google AI Studio?

סוכן Google AI Studio תומך ביצירה של אפליקציות אינטרנט ושל אפליקציות ל-Android.

עם זאת, חשוב לדעת שהשילוב עם Firebase (הוספת Cloud Firestore ו-Authentication) נתמך כרגע רק באפליקציות אינטרנט, ולא באפליקציות ל-Android. אם אתם מפתחים אפליקציה ל-Android, אתם צריכים לשלב את Firebase באופן ידני אם אתם צריכים את השירותים האלה.

מידע נוסף על מה שנתמך ב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 בשבילכם את מסד הנתונים, תצטרכו ללחוץ על הלחצן שדרוג מסד הנתונים שמתואר במאמר הוספת חיוב כדי לקבל מכסת Cloud Firestore גדולה יותר כדי להעביר את מסד הנתונים למצב רגיל בתשלום. אם הגדרתם את Cloud Firestore באופן ידני, לא צריך להשתמש בלחצן שדרוג מסד הנתונים.

מה עושים אם מופיעה השגיאה 'חסרות הרשאות או שההרשאות לא מספיקות'?

השגיאה הזו מתרחשת כשהאפליקציה מנסה לקרוא נתונים ממסד הנתונים Cloud Firestore או לכתוב נתונים בו, אבל הבקשה נדחית על ידי Cloud Firestore.Security Rules השגיאה מציינת ש-Security Rules לא מאפשרים את הפעולה שניסיתם לבצע על סמך מצב האימות או נתיב הנתונים הנוכחיים. לוחצים על הלחצן תיקון השגיאה כדי להנחות את סוכן Google AI Studio לנסות לתקן את Security Rules.

מה קורה ל-backend של 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, אבל הוא יכול לכתוב קוד באפליקציה שנועד לבצע את הפעולות האלה. כדי לבצע משימות של ניהול נתונים, כמו מחיקת רשומות, עוברים אל Databases & Storage > Firestore page במסוף 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 עומד בדרישות הבאות כדי שתוכלו לכלול אותו בקוד או בקובצי ההגדרות שלכם בצורה בטוחה. בדף APIs & Services > Credentials במסוף Google Cloud אפשר לבדוק את הפרטים הבאים:

  • זהו מפתח ה-API שבו אתם משתמשים באפליקציית Firebase שלכם ורק בשירותי Firebase. המקשים האלה נקראים בדרך כלל Browser key (auto created by Firebase) או Android key (auto created by Firebase) או iOS key (auto created by Firebase).
  • המפתח כולל את כל ממשקי ה-API שקשורים ל-Firebase ונדרשים, שמופיעים ברשימת ההיתרים של 'הגבלות על API' במפתח.
  • לא מופיעים ממשקי API אחרים ברשימת ההיתרים של 'הגבלות API'. בפרט, הרשימה לא יכולה לכלול Generative Language API.

בנוסף, חשוב לוודא שאתם משתמשים ב-Firebase Security Rules וב-App Check כמומלץ במוצרי Firebase שבהם אתם משתמשים.

במאמר מידע על שימוש במפתחות API ל-Firebase וניהול שלהם אפשר לקרוא פרטים על מפתחות API ל-Firebase ולמצוא רשימה של שאלות נפוצות.