Firebase AI Logic וערכות ה-SDK ללקוחות נקראו בעבר Vertex AI in Firebase. כדי לשקף טוב יותר את השירותים והתכונות המורחבים שלנו (לדוגמה, אנחנו תומכים עכשיו ב-Gemini Developer API!), שינינו את השם של השירותים שלנו ואת האריזה שלהם ל-Firebase AI Logic.
כדי לגשת בצורה מאובטחת למודלים של AI גנרטיבי מבית Google ישירות מאפליקציות לנייד או מאפליקציות אינטרנט, אפשר עכשיו לבחור ספק של Gemini API – Vertex AI Gemini API שזמין כבר זמן רב או Gemini Developer API. המשמעות היא שעכשיו יש לכם אפשרות להשתמש ב-Gemini Developer API, שמספק רמה ללא עלות עם מכסות והגבלות סבירות על קצב יצירת הבקשות.
סקירה כללית של השלבים למעבר לשימוש בערכות ה-SDK של Firebase AI Logic
שלב 1: בוחרים את ספק Gemini API הכי מתאים לאפליקציה ולתרחישי השימוש שלכם.
שלב 2: מגדירים את פרויקט Firebase כדי שתוכלו להשתמש ב-Gemini Developer API.
רלוונטי רק אם אתם עוברים לשימוש ב-Gemini Developer API במקום ב-Vertex AI Gemini API.שלב 3: מעדכנים את הספרייה שבה נעשה שימוש באפליקציה.
שלב 4: מעדכנים את ההפעלה באפליקציה.
שלב 5: מעדכנים את הקוד בהתאם לתכונות שבהן אתם משתמשים.
שלב 1: בחירת הספק הטוב ביותר של Gemini API לאפליקציה שלכם
במסגרת ההעברה הזו, תוכלו לבחור ספק של Gemini API:
בגרסאות הקודמות של ערכות ה-SDK של Vertex AI in Firebase אפשר היה להשתמש רק ב-Vertex AI Gemini API.
ערכות ה-SDK החדשות של Firebase AI Logic מאפשרות לכם לבחור את ספק ה-Gemini API שאתם רוצים להתקשר אליו ישירות מהאפליקציה לנייד או מהאפליקציה לאינטרנט – Gemini Developer API או Vertex AI Gemini API.
חשוב לעיין בהבדלים בין השימוש בשני ספקי Gemini API, במיוחד מבחינת התכונות הנתמכות, התמחור ומגבלות הקצב. לדוגמה, Gemini Developer API לא תומך באספקת קבצים באמצעות כתובות URL של Cloud Storage, אבל הוא יכול להיות בחירה טובה אם אתם רוצים ליהנות מהתוכנית שלו ללא עלות וממכסת השימוש הסבירה.
אם רוצים להמשיך להשתמש ב-Vertex AI Gemini API:
מדלגים על השלב הבא ועוברים ישירות אל עדכון הספרייה באפליקציה, ואז אל שאר השלבים במדריך הזה.אם רוצים לעבור אל Gemini Developer API:
ממשיכים לשלב הבא כדי להגדיר את פרויקט Firebase לשימוש ב-API הזה, ואז ממשיכים לשאר השלבים במדריך הזה.
שלב 2: הגדרת פרויקט Firebase כדי שאפשר יהיה להשתמש ב-Gemini Developer API
השלב הזה נדרש רק אם רוצים לעבור לשימוש ב-Gemini Developer API עם ערכות ה-SDK של הלקוח Firebase AI Logic. לעומת זאת, אם רוצים להמשיך להשתמש ב-Vertex AI Gemini API, מדלגים לשלב הבא.
הערה: אפשר להפעיל את שני הספקים של Gemini API בפרויקט בו-זמנית.
במסוף Firebase, עוברים לדף Firebase AI Logic.
עוברים לכרטיסייה הגדרות ובוחרים באפשרות Gemini Developer API.
מפעילים את Gemini Developer API.
המסוף יוודא שממשקי ה-API הנדרשים מופעלים ויפיק מפתח API Gemini בפרויקט שלכם ב-Firebase.
אין להוסיף את Gemini מפתח ה-API הזה לבסיס הקוד של האפליקציה. מידע נוסףכדי לעדכן את הספרייה ואת ההפעלה באפליקציה, צריך להמשיך לקרוא את מדריך ההעברה הזה.
שלב 3: מעדכנים את הספרייה שבה נעשה שימוש באפליקציה
מעדכנים את בסיס הקוד של האפליקציה כדי להשתמש בספריית Firebase AI Logic.
Swift
ב-Xcode, כשהפרויקט של האפליקציה פתוח, מעדכנים את חבילת Firebase לגרסה 11.13.0 ואילך באמצעות אחת מהאפשרויות הבאות:
אפשרות 1: עדכון כל החבילות: עוברים אל File > Packages > Update to Latest Package Versions (קובץ > חבילות > עדכון לגרסאות החבילה האחרונות).
אפשרות 2: עדכון Firebase בנפרד: עוברים לחבילת Firebase בקטע Package Dependencies (תלות בחבילות). לוחצים לחיצה ימנית על חבילת Firebase ובוחרים באפשרות Update Package (עדכון החבילה).
מוודאים שחבילת Firebase מופיעה עכשיו בגרסה 11.13.0 ואילך. אם לא, צריך לוודא שדרישות החבילה שצוינו מאפשרות עדכון לגרסה v11.13.0 ואילך.
בוחרים את יעד האפליקציה בכלי לעריכת פרויקטים ועוברים לקטע Frameworks, Libraries, and Embedded Content (מסגרות, ספריות ותוכן מוטמע).
מוסיפים את הספרייה החדשה: לוחצים על הלחצן + ואז מוסיפים את FirebaseAI מהחבילה של Firebase.
אחרי שמסיימים את העברת האפליקציה (ראו את שאר הקטעים במדריך הזה), חשוב להסיר את הספרייה הישנה:
בוחרים באפשרות FirebaseVertexAI, ואז לוחצים על הלחצן —.
Kotlin
בקובץ 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 BoMimplementation("com.google.firebase:firebase-vertexai:16.x.y")} // AFTER dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.16.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") }מסנכרנים את פרויקט Android עם קובצי Gradle.
שימו לב: אם אתם בוחרים לא להשתמש ב-Firebase Android BoM, אתם צריכים רק להוסיף את התלות בספריית firebase-ai
ולאשר את הגרסה האחרונה שמוצעת על ידי Android Studio.
Java
בקובץ 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 BoMimplementation("com.google.firebase:firebase-vertexai:16.x.y")} // AFTER dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.16.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") }מסנכרנים את פרויקט Android עם קובצי Gradle.
שימו לב: אם אתם בוחרים לא להשתמש ב-Firebase Android BoM, אתם צריכים רק להוסיף את התלות בספריית firebase-ai
ולאשר את הגרסה האחרונה שמוצעת על ידי Android Studio.
Web
כדי לקבל את הגרסה העדכנית ביותר של Firebase JS SDK לאתרים באמצעות npm:
npm i firebase@latest
או
yarn add firebase@latest
בכל מקום שבו ייבאתם את הספרייה, צריך לעדכן את הצהרות הייבוא כדי להשתמש ב-
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
כדי לעדכן את השימוש בחבילה
firebase_ai
בקובץpubspec.yaml
, מריצים את הפקודה הבאה מתוך ספריית הפרויקט של Flutter:flutter pub add firebase_ai
בונים מחדש את פרויקט Flutter:
flutter run
אחרי שמסיימים להעביר את האפליקציה (ראו את שאר הקטעים במדריך הזה), חשוב למחוק את החבילה הישנה:
flutter pub remove firebase_vertexai
Unity
התמיכה ב-Unity לא הייתה זמינה מ-"Vertex AI in Firebase".
שלב 4: עדכון ההפעלה באפליקציה
לוחצים על הספק Gemini API כדי לראות בדף הזה תוכן וקוד שספציפיים לספק. |
מעדכנים את אופן ההפעלה של השירות עבור ספק ה-API שבחרתם ויוצרים מופע GenerativeModel
.
Swift
import FirebaseAI
// 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-2.5-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-2.5-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-2.5-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-2.5-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-2.5-flash');
Unity
התמיכה ב-Unity לא הייתה זמינה מ-'Vertex AI in Firebase'.
הערה: יכול להיות שלא תמיד תיצרו מופע של GenerativeModel
, בהתאם ליכולת שבה אתם משתמשים.
- כדי לגשת למודל Imagen, צריך ליצור מופע
ImagenModel
.
שלב 5: מעדכנים את הקוד בהתאם לתכונות שבהן אתם משתמשים
בשלב הזה מתוארים שינויים שאולי יהיה צורך לבצע בהתאם לתכונות שבהן אתם משתמשים.
אם אתם משתמשים בCloud Storage כתובות URL ועברתם לשימוש ב-Gemini Developer API בהעברה הזו, אתם צריכים לעדכן את הבקשות הרב-מודאליות שלכם כדי לכלול קבצים כנתונים מוטבעים (או להשתמש בכתובות URL של סרטונים ב-YouTube).
כדאי לעיין ברשימות הבאות כדי לראות אם יש שינויים שצריך לבצע בקוד כדי להתאים אותו ל-SDK של Firebase AI Logic.
Swift
אין שינויים נוספים.
Kotlin
Live API
- הערך
UNSPECIFIED
הוסר מהמחלקת enumResponseModality
. במקום זאת, צריך להשתמש ב-null
.
- הערך
Java
Live API
- הערך
UNSPECIFIED
הוסר מהמחלקת enumResponseModality
. במקום זאת, צריך להשתמש ב-null
.
- הערך
שינינו שיטות שונות של Java builder כך שהן מחזירות עכשיו את המופע של המחלקה שלהן, במקום void.
Web
השינויים נדרשים רק אם אתם מתחילים להשתמש ב-Gemini Developer API (במקום ב-Vertex AI Gemini API):
הגדרות בטיחות
- הוסרו מקרים של שימוש ב-
SafetySetting.method
שלא נתמך.
- הוסרו מקרים של שימוש ב-
נתונים מוטבעים
- הוסרו מקרים של שימוש ב-
InlineDataPart.videoMetadata
שלא נתמך.
- הוסרו מקרים של שימוש ב-
Dart
אין שינויים נוספים.
Unity
התמיכה ב-Unity לא הייתה זמינה מ-'Vertex AI in Firebase'.
רוצה לתת משוב על חוויית השימוש ב-Firebase AI Logic?