מעבר ל-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 Logic.

  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.1.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.1.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 Agent Platform Gemini API backend service (fomerly Vertex AI).
let ai = FirebaseAI.firebaseAI(backend: .agentPlatform())

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

Kotlin


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

Java


// Initialize the Agent Platform Gemini API backend service (formerly Vertex AI).
// Create a `GenerativeModel` instance with a model that supports your use case.
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.agentPlatform())
        .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, AgentPlatformBackend } 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 Agent Platform Gemini API backend service (formerly Vertex AI).
const ai = getAI(firebaseApp, { backend: new AgentPlatformBackend() });

// 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 Agent Platform Gemini API backend service (formerly Vertex AI).
// Create a `GenerativeModel` instance with a model that supports your use case.
final model =
      FirebaseAI.agentPlatform().generativeModel(model: 'gemini-3.8-flash');

Unity

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

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

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

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

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

  • אם אתם משתמשים בכתובות URL של Cloud Storage וגם עברתם להשתמש ב-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".

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


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