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, אבל הוא יכול להיות בחירה טובה אם רוצים ליהנות מהתוכנית שלו ללא עלות וממכסת השימוש הסבירה.
אם אתם רוצים להמשיך להשתמש ב-Agent Platform Gemini API (formerly Vertex AI):
דלגו על השלב הבא ועברו ישירות אל עדכון הספרייה באפליקציה, ואז לשאר השלבים במדריך הזה.אם אתם רוצים לעבור אל Gemini Developer API:
המשיכו לשלב הבא כדי להגדיר את הפרויקט ב-Firebase לשימוש ב-API הזה, ואז לשאר השלבים במדריך הזה.
שלב 2: מגדירים את הפרויקט ב-Firebase כדי שתוכלו להשתמש ב-Gemini Developer API
השלב הזה נדרש רק אם רוצים לעבור לשימוש ב-Gemini Developer API עם ערכות ה-SDK של הלקוח ב-Firebase AI Logic. אבל אם אתם רוצים להמשיך להשתמש ב-Agent Platform Gemini API (formerly Vertex AI), דלגו לשלב הבא.
שימו לב שאפשר להפעיל בפרויקט את שני הספקים של Gemini API בו-זמנית.
במסוף Firebase, נכנסים אל AI Services (שירותי AI) > AI Logic (לוגיקת AI).
עוברים לכרטיסייה הגדרות ולוחצים על Gemini Developer API.
מפעילים את Gemini Developer API.
במסוף תתבצע בדיקה שממשקי ה-API הנדרשים מופעלים, ויווצר מפתח API של Gemini בפרויקט Firebase.
אל תוסיפו את מפתח ה-API של Gemini לבסיס הקוד של האפליקציה. מידע נוסףכדי לעדכן את הספרייה ואת ההפעלה באפליקציה, צריך להמשיך לקרוא את המדריך הזה להעברת נתונים.
שלב 3: מעדכנים את הספרייה שבה משתמשים באפליקציה
מעדכנים את בסיס הקוד של האפליקציה כדי להשתמש בספריית Firebase AI Logic.
Swift
ב-Xcode, כשהפרויקט של האפליקציה פתוח, מעדכנים את חבילת Firebase לגרסה 12.5.0 ואילך באמצעות אחת מהאפשרויות הבאות:
אפשרות 1: עדכון כל החבילות: עוברים אל File (קובץ) > Packages (חבילות) > Update to Latest Package Versions (עדכון לגרסאות החבילות הכי עדכניות).
אפשרות 2: עדכון Firebase בנפרד: עוברים לחבילת Firebase בקטע Package Dependencies (יחסי תלות בין חבילות). לוחצים לחיצה ימנית על חבילת Firebase ובוחרים באפשרות Update Package (עדכון החבילה).
מוודאים שחבילת Firebase היא עכשיו מגרסה 12.5.0 ואילך. אם לא, צריך לוודא שדרישות החבילה שצוינו מאפשרות עדכון לגרסה 12.5.0 ואילך.
בוחרים את היעד של האפליקציה ב-Project Editor, ואז עוברים לקטע Frameworks, Libraries, and Embedded Content.
מוסיפים את הספרייה החדשה: לוחצים על הכפתור + ומוסיפים את FirebaseAILogic מחבילת 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: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") }מסנכרנים את פרויקט 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: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") }מסנכרנים את פרויקט 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 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".
הערה: יכול להיות שלא תמיד תיצרו מופע של GenerativeModel, בהתאם ליכולת שבה אתם משתמשים. כדי להעביר קלט ופלט בסטרימינג באמצעות Gemini Live API, צריך ליצור מכונה של LiveModel.
שלב 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 (במקום ב-Agent Platform Gemini API (formerly Vertex AI)):
הגדרות בטיחות
- הסרנו את השימושים ב-
SafetySetting.methodשלא נתמך.
- הסרנו את השימושים ב-
נתונים מוטבעים
- הסרנו את השימושים ב-
InlineDataPart.videoMetadataשלא נתמך.
- הסרנו את השימושים ב-
Dart
אין שינויים נוספים.
Unity
התמיכה ב-Unity לא הייתה זמינה מ-'Vertex AI in Firebase'.
רוצה לתת משוב על חוויית השימוש ב-Firebase AI Logic?