מעבר ל-Firebase AI Logic SDKs מגרסת GA של Vertex AI ב-Firebase SDKs


‫Firebase AI Logic וערכות ה-SDK ללקוחות נקראו בעבר Vertex AI in Firebase. כדי לשקף טוב יותר את השירותים והתכונות המורחבים שלנו (לדוגמה, עכשיו אנחנו תומכים ב-Gemini Developer API!), שינינו את השם של השירותים שלנו ואת האופן שבו הם מסודרים, והם נקראים עכשיו Firebase AI Logic.

כדי לגשת בצורה מאובטחת למודלים של AI גנרטיבי של Google ישירות מהאפליקציות לנייד או מהאפליקציות לאינטרנט, עכשיו אתם יכולים לבחור ספק "Gemini API" – Agent Platform Gemini API (formerly Vertex AI) שזמין כבר הרבה זמן או Gemini Developer API החדש. זה אומר שעכשיו אתם יכולים להשתמש ב-Gemini Developer API, שמספק רמת שירות ללא עלות עם מכסות והגבלות סבירות על קצב יצירת הבקשות.

סקירה כללית של השלבים להעברה לערכות ה-SDK של Firebase AI Logic

  • שלב 1: בוחרים את ספק Gemini API הכי מתאים לאפליקציה ולתרחישי השימוש שלכם.

  • שלב 2: מגדירים את פרויקט Firebase כדי שתוכלו להשתמש ב-Gemini Developer API.
    רלוונטי רק אם מחליפים את Agent Platform Gemini API (formerly Vertex AI) ב-Gemini Developer API.

  • שלב 3: מעדכנים את הספרייה שבה משתמשים באפליקציה.

  • שלב 4: מעדכנים את ההפעלה באפליקציה.

  • שלב 5: מעדכנים את הקוד בהתאם לתכונות שבהן משתמשים.

שלב 1: בחירת הספק הטוב ביותר של Gemini API לאפליקציה

במסגרת ההעברה הזו, תוכלו לבחור ספק של Gemini API:

  • ערכות ה-SDK הישנות של Vertex AI in Firebase יכלו להשתמש רק ב-Agent Platform Gemini API (formerly Vertex AI).

  • ערכות ה-SDK החדשות של Firebase AI Logic מאפשרות לכם לבחור לאיזה ספק של Gemini API אתם רוצים להתקשר ישירות מהאפליקציה לנייד או מהאפליקציה לאינטרנט – Gemini Developer API או Agent Platform Gemini API (formerly Vertex AI).

חשוב לעיין בהבדלים בין השימוש בשני ספקי Gemini API, במיוחד מבחינת התכונות הנתמכות, התמחור ומגבלות הקצב. לדוגמה, Gemini Developer API לא תומך באספקת קבצים באמצעות כתובות URL של Cloud Storage, אבל הוא יכול להיות בחירה טובה אם רוצים ליהנות מהתוכנית שלו ללא עלות וממכסת השימוש הסבירה.

שלב 2: מגדירים את הפרויקט ב-Firebase כדי שתוכלו להשתמש ב-Gemini Developer API

השלב הזה נדרש רק אם רוצים לעבור לשימוש ב-Gemini Developer API עם ערכות ה-SDK של הלקוח ב-Firebase AI Logic. אבל אם אתם רוצים להמשיך להשתמש ב-Agent Platform Gemini API (formerly Vertex AI), דלגו לשלב הבא.

שימו לב שאפשר להפעיל בפרויקט את שני הספקים של Gemini API בו-זמנית.

  1. במסוף Firebase, נכנסים אל AI Services (שירותי AI) >‏ AI Logic (לוגיקת AI).

  2. עוברים לכרטיסייה הגדרות ולוחצים על Gemini Developer API.

  3. מפעילים את Gemini Developer API.

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

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

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

מעדכנים את בסיס הקוד של האפליקציה כדי להשתמש בספריית Firebase AI Logic.

Swift

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

    • אפשרות 1: עדכון כל החבילות: עוברים אל File (קובץ) > Packages (חבילות) > Update to Latest Package Versions (עדכון לגרסאות החבילות הכי עדכניות).

    • אפשרות 2: עדכון Firebase בנפרד: עוברים לחבילת Firebase בקטע Package Dependencies (יחסי תלות בין חבילות). לוחצים לחיצה ימנית על חבילת Firebase ובוחרים באפשרות Update Package (עדכון החבילה).

  2. מוודאים שחבילת Firebase היא עכשיו מגרסה 12.5.0 ואילך. אם לא, צריך לוודא שדרישות החבילה שצוינו מאפשרות עדכון לגרסה 12.5.0 ואילך.

  3. בוחרים את היעד של האפליקציה ב-Project Editor, ואז עוברים לקטע Frameworks, Libraries, and Embedded Content.

  4. מוסיפים את הספרייה החדשה: לוחצים על הכפתור + ומוסיפים את FirebaseAILogic מחבילת Firebase.

  5. אחרי שמסיימים להעביר את האפליקציה (ראו את הקטעים הבאים במדריך הזה), חשוב להסיר את הספרייה הישנה:
    בוחרים באפשרות FirebaseVertexAI, ואז לוחצים על הלחצן —.

Kotlin

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

    שימו לב: יכול להיות שיהיה קל יותר להעביר את בסיס הקוד של האפליקציה (ראו את שאר הקטעים במדריך הזה) לפני שמוחקים את התלות הישנה.

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("com.google.firebase:firebase-vertexai:16.x.y")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:35.0.0"))
    
      // Add the dependency for the Firebase AI Logic library
      // When using the BoM, you don't specify versions in Firebase library dependencies
      implementation("com.google.firebase:firebase-ai")
    }
  2. מסנכרנים את פרויקט Android עם קובצי Gradle.

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

Java

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

    שימו לב: יכול להיות שיהיה קל יותר להעביר את בסיס הקוד של האפליקציה (ראו את שאר הקטעים במדריך הזה) לפני שמוחקים את התלות הישנה.

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("com.google.firebase:firebase-vertexai:16.x.y")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:35.0.0"))
    
      // Add the dependency for the Firebase AI Logic library
      // When using the BoM, you don't specify versions in Firebase library dependencies
      implementation("com.google.firebase:firebase-ai")
    }
  2. מסנכרנים את פרויקט Android עם קובצי Gradle.

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

Web

  1. כדי לקבל את הגרסה העדכנית של Firebase JS SDK לאינטרנט באמצעות npm:

    npm i firebase@latest

    או

    yarn add firebase@latest
  2. בכל מקום שבו ייבאתם את הספרייה, צריך לעדכן את הצהרות הייבוא כך שישתמשו ב-firebase/ai במקום זאת.

    שימו לב: יכול להיות שיהיה קל יותר להעביר את בסיס הקוד של האפליקציה (ראו את הסעיפים הבאים במדריך הזה) לפני שמוחקים את הייבוא הישן.

    // BEFORE
    import { initializeApp } from "firebase/app";
    import { getVertexAI, getGenerativeModel } from "firebase/vertexai";
    
    
    // AFTER
    import { initializeApp } from "firebase/app";
    import { getAI, getGenerativeModel } from "firebase/ai";

Dart

  1. כדי לעדכן את השימוש בחבילה firebase_ai בקובץ pubspec.yaml, מריצים את הפקודה הבאה מספריית הפרויקט ב-Flutter:

    flutter pub add firebase_ai
  2. בונים מחדש את פרויקט Flutter:

    flutter run
  3. אחרי שמסיימים להעביר את האפליקציה (ראו את הסעיפים הבאים במדריך הזה), חשוב למחוק את החבילה הישנה:

    flutter pub remove firebase_vertexai

Unity

לא הייתה תמיכה ב-Unity מ-"Vertex AI in Firebase".

איך מתחילים להשתמש ב-SDK של Firebase AI Logic ל-Unity

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

כדי לראות תוכן וקוד שספציפיים לספק, לוחצים על הספק Gemini API בדף הזה.

מעדכנים את אופן ההפעלה של השירות לספק ה-API שבחרתם ויוצרים מכונה של GenerativeModel.

Swift


import FirebaseAILogic

// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())

// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-3.8-flash")

Kotlin


// Initialize the Gemini Developer API backend service.
// Create a `GenerativeModel` instance with a model that supports your use case.
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
                        .generativeModel("gemini-3.8-flash")

Java


// Initialize the Gemini Developer API backend service.
// Create a `GenerativeModel` instance with a model that supports your use case.
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
        .generativeModel("gemini-3.8-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(ai);

Web


import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, GoogleAIBackend } from "firebase/ai";

// TODO(developer): Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);

// Initialize the Gemini Developer API backend service.
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });

// Create a `GenerativeModel` instance with a model that supports your use case.
const model = getGenerativeModel(ai, { model: "gemini-3.8-flash" });

Dart


import 'package:firebase_ai/firebase_ai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

// Initialize FirebaseApp
await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);

// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
      FirebaseAI.googleAI().generativeModel(model: 'gemini-3.8-flash');

Unity

התמיכה ב-Unity לא הייתה זמינה מ-"Vertex AI in Firebase".

איך מתחילים להשתמש ב-SDK של Firebase AI Logic ל-Unity

הערה: יכול להיות שלא תמיד תיצרו מופע של GenerativeModel, בהתאם ליכולת שבה אתם משתמשים. כדי להעביר קלט ופלט בסטרימינג באמצעות Gemini Live API, צריך ליצור מכונה של LiveModel.

שלב 5: מעדכנים את הקוד בהתאם לתכונות שבהן אתם משתמשים

בשלב הזה מתוארים השינויים שצריך לבצע בהתאם לתכונות שבהן אתם משתמשים.

  • אם אתם משתמשים בCloud Storage כתובות URL ועברתם לשימוש ב-Gemini Developer API בהעברה הזו, אתם צריכים לעדכן את הבקשות הרב-מודאליות שלכם כדי לכלול קבצים כנתונים מוטבעים (או להשתמש בכתובות URL של סרטונים ב-YouTube).

  • כדאי לעיין ברשימות הבאות כדי לראות אם יש שינויים שצריך לבצע בקוד כדי להטמיע את ה-SDK של Firebase AI Logic.

Swift

אין שינויים נוספים.

Kotlin

  • Live API

    • הערך UNSPECIFIED הוסר ממחלקת ה-enum‏ ResponseModality. במקום זאת, צריך להשתמש ב-null.

Java

  • Live API

    • הערך UNSPECIFIED הוסר מהסיווג enum‏ ResponseModality. במקום זאת, צריך להשתמש ב-null.
  • שינינו שיטות שונות של Java builder כך שהן יחזירו עכשיו את המופע של המחלקה שלהן בצורה נכונה, במקום void.

Web

השינויים הנדרשים רק אם אתם מתחילים להשתמש ב-Gemini Developer API (במקום ב-Agent Platform Gemini API (formerly Vertex AI)):

  • הגדרות בטיחות

    • הסרנו את השימושים ב-SafetySetting.method שלא נתמך.
  • נתונים מוטבעים

    • הסרנו את השימושים ב-InlineDataPart.videoMetadata שלא נתמך.

Dart

אין שינויים נוספים.

Unity

התמיכה ב-Unity לא הייתה זמינה מ-'Vertex AI in Firebase'.

איך מתחילים לעבוד עם Firebase AI Logic SDK ל-Unity


רוצה לתת משוב על חוויית השימוש ב-Firebase AI Logic?