מעבר לשימוש בגרסה של Vertex AI ב-GA ב-Firebase


Vertex AI in Firebase הושק כגרסה זמינה לכולם (GA) ב-21 באוקטובר 2024.

אם השתמשתם בגרסה הבטא של ספריית Vertex AI in Firebase (firebase-vertexai:16.0.0-betaXX), תצטרכו לבצע את השינויים הבאים כדי לשדרג לשימוש בגרסה GA של הספרייה (firebase-vertexai:16.0.0 ואילך).

לפניכם רשימה כללית של השינויים הנדרשים כדי לבצע את ההעברה:

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

צריך להפעיל את Vertex AI in Firebase API בפרויקט Firebase ולהוסיף אותו לרשימת ההיתרים של מפתח ה-API של Firebase. זהו ממשק API חדש שנדרש כדי להשתמש בגרסה של Vertex AI in Firebase ב-GA.

  1. במסוף Firebase, עוברים לדף Build with Gemini.

  2. בכרטיס Vertex AI in Firebase, לוחצים על תחילת העבודה כדי להפעיל תהליך עבודה שיעזור לכם להפעיל את ה-API הזה ולהוסיף אותו לרשימת ההיתרים של מפתח ה-API של Firebase.

  3. אפשר לדלג על שאר תהליך העבודה במסוף.

מעדכנים את הספרייה לגרסה GA (חובה לכולם)

פועלים לפי ההוראות הבאות כדי לעדכן את יחסי התלות כך שישתמשו בגרסה האחרונה של Firebase Android BoM. השימוש ב-BoM לא נדרש, אבל מומלץ מאוד להשתמש בו כי הוא עוזר לוודא שבאפליקציה נעשה שימוש בגרסאות תואמות של כל ספריית Firebase.

  1. בקובץ Gradle של המודול (ברמת האפליקציה) (בדרך כלל <project>/<app-module>/build.gradle.kts או <project>/<app-module>/build.gradle), מחליפים את התלות ב-Vertex AI in Firebase בקוד הבא:

    // BEFORE
    dependencies {
      implementation("com.google.firebase:firebase-vertexai:16.0.0-betaXX")
    }
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:33.10.0"))
    
      // Add the dependency for the Vertex AI in Firebase library
      // When using the BoM, you don't specify versions in Firebase library dependencies
      implementation("com.google.firebase:firebase-vertexai")
    }
  2. סנכרון הפרויקט ב-Android עם קובצי Gradle.

הערה: אם בוחרים לא להשתמש ב-Firebase BoM, צריך פשוט לאשר את הגרסה האחרונה של firebase-vertexai שמציע Android Studio.

שינויים נוספים (נדרשים בהתאם לתכונות שבהן אתם משתמשים)

הוחלו כמה שינויים בגרסאות GA של ערכות ה-SDK. כדאי לעיין ברשימות הבאות כדי לבדוק אילו שינויים ייתכן שתצטרכו לבצע בקוד כדי להשתמש בגרסת GA של ה-SDK באפליקציה.

  • קריאה לפונקציה
    אם הטמעתם את התכונה הזו לפני GA, תצטרכו לבצע עדכונים באופן שבו אתם מגדירים את הסכימה. מומלץ לעיין במדריך העדכני לקריאה לפונקציות כדי ללמוד איך לכתוב את הצהרות הפונקציות.

  • יצירת פלט מובנה (כמו JSON) באמצעות responseSchema
    אם הטמעתם את התכונה הזו לפני GA, תצטרכו לבצע עדכונים באופן שבו אתם מגדירים את הסכימה. מומלץ לעיין במדריך החדש בנושא פלט מובנה כדי ללמוד איך לכתוב סכימות JSON.

  • Timeout

    • שינינו את הזמן הקצוב לתפוגה של בקשות ל-180 שניות.
  • רשימות ערכים

    • כיתות enum וכיתות sealed הוחלפו בכיתות רגילות. השינוי הזה מאפשר גמישות רבה יותר בהתפתחות ה-API באופן תואם לאחור.

    • שינית את השם של המנייה BlockThreshold ל-HarmBlockThreshold.

    • הוסרו ערכים מהרשימות הבאות: HarmBlockThreshold,‏ HarmProbability,‏ HarmSeverity,‏ BlockReason ו-FinishReason.

  • שיטות Blob

    • שינינו את השם של כל השיטות שכללו את Blob כחלק מהשם שלהן, והחלפנו אותו ב-InlineData.
  • הגדרות בטיחות

    • השדה method השתנה לאפשרות nullable.
  • סיווג משך הזמן

    • הוסרו כל השימושים בכיתה Duration של Kotlin והיא הוחלפה ב-long. השינוי הזה מספק יכולת פעולה הדדית טובה יותר עם Java.
  • מטא-נתונים של הפניות

    • ארזנו את כל השדות שהוצהרו בעבר ב-CitationMetadata לכיתה חדשה בשם Citation. ההפניות מופיעות ברשימה citations ב-CitationMetadata. השינוי הזה מאפשר התאמה טובה יותר של הסוגים בפלטפורמות השונות.
  • ספירת אסימונים

    • השדה totalBillableCharacters השתנה לאפשרות nullable.
  • סה"כ תווים לחיוב

    • שינינו את המאפיין totalBillableCharacters ב-CountTokensResponse לאפשרות אופציונלית, כדי לשקף מצבים שבהם לא נשלחים תווים.
  • יצירת מודל

    • הפרמטר requestOptions הועבר לסוף רשימת הפרמטרים כדי להתאים לפלטפורמות אחרות.

שגיאות אפשריות שקשורות להעברה

במהלך המעבר לשימוש בגרסה של Vertex AI in Firebase ב-GA, יכול להיות שתבחינו בשגיאות אם לא השלמתם את כל השינויים הנדרשים כפי שמתואר במדריך הזה.

שגיאה 403: Requests to this API firebasevertexai.googleapis.com ... are blocked.

אם מופיעה שגיאת 403 עם הטקסט Requests to this API firebasevertexai.googleapis.com ... are blocked., בדרך כלל המשמעות היא שמפתח ה-API בקובץ או באובייקט התצורה של Firebase לא מכיל ממשק API נדרש ברשימת ההיתרים של המוצר שבו אתם מנסים להשתמש.

חשוב לוודא שמפתח ה-API שבו משתמשת האפליקציה כולל את כל ממשקי ה-API הנדרשים שכלולים ברשימת ההיתרים 'הגבלות API' של המפתח. ב-Vertex AI in Firebase, מפתח ה-API צריך לכלול לפחות את API ‏Vertex AI in Firebase ברשימת ההיתרים שלו. ה-API הזה אמור להתווסף באופן אוטומטי לרשימת ההיתרים של מפתח ה-API כשמפעילים את ה-API החדש דרך מסוף Firebase.

אפשר לראות את כל מפתחות ה-API בחלונית APIs & Services > Credentials במסוף Google Cloud.