מעבר ל-Firebase AI Logic SDKs מגרסת הטרום-השקה של Vertex AI in 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: מפעילים את ממשקי ה-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: הפעלת ממשקי ה-API הנדרשים

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

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

  1. נכנסים למסוף Firebase ובוחרים את הפרויקט ב-Firebase.

  2. במסוף Firebase, נכנסים לדף AI Services ‏ > AI Logic.

  3. לוחצים על Get started כדי להפעיל תהליך עבודה מודרך שיעזור לכם להגדיר את ממשקי ה-API הנדרשים ואת המשאבים לפרויקט.

  4. בוחרים את ספק Gemini API שרוצים להשתמש בו עם ערכות ה-SDK של Firebase AI Logic. תמיד אפשר להגדיר את ספק ה-API השני ולהשתמש בו מאוחר יותר.

    • ‫Gemini Developer API – החיוב אופציונלי (זמין בתוכנית התמחור Spark ללא עלות)
      תהליך העבודה במסוף יפעיל את ממשקי ה-API הנדרשים וייצור מפתח API של Gemini בפרויקט.
      אל תוסיפו את מפתח ה-API של Gemini לבסיס הקוד של האפליקציה. מידע נוסף

    • ‫Agent Platform Gemini API (formerly Vertex AI) – נדרש חיוב (נדרש מינוי Blaze בתשלום לפי שימוש)
      תהליך העבודה במסוף יפעיל את ממשקי ה-API הנדרשים בפרויקט.

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

שלב 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-Preview ולוחצים על הכפתור —.

Kotlin

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

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

    // 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: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("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: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-preview";
    
    
    // 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: מעדכנים את הקוד בהתאם לתכונות שבהן משתמשים

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

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

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

חובה בכל השפות והפלטפורמות

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

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

  • פסק זמן

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

נדרש בהתאם לפלטפורמה או לשפה

Swift

  • ספירות

    • החלפנו את רוב הסוגים של enum ב-struct עם משתנים סטטיים. השינוי הזה מאפשר גמישות רבה יותר בפיתוח ה-API באופן שתואם לדורות קודמים. כשמשתמשים בהצהרות switch, צריך לכלול עכשיו מקרה default: כדי לכסות ערכים לא ידועים או לא מטופלים, כולל ערכים חדשים שיתווספו ל-SDK בעתיד.

    • השם של המאפיין BlockThreshold שונה ל-HarmBlockThreshold, והסוג שלו הוא עכשיו struct.

    • הוסרו המקרים unknown ו-unspecified מהרשימות הבאות (עכשיו struct): HarmCategory,‏ HarmBlockThreshold,‏ HarmProbability,‏ BlockReason ו-FinishReason.

    • החלפנו את המאפיין ModelContent.Part בפרוטוקול בשם Part כדי לאפשר הוספה של סוגים חדשים באופן שתואם לדורות קודמים. השינוי הזה מתואר בפירוט רב יותר בקטע חלקי תוכן.

  • חלקי תוכן

    • הסרנו את הפרוטוקול ThrowingPartsRepresentable ופישטנו את המאתחלים של ModelContent כדי למנוע שגיאות קומפיילר מדי פעם. תמונות שלא מקודדות כמו שצריך עדיין יגרמו לשגיאות כשמשתמשים בהן ב-generateContent.

    • החלפנו את המקרים של ModelContent.Part בסוגים הבאים של struct, בהתאם לפרוטוקול Part:

      • .text עד TextPart
      • .data עד InlineDataPart
      • .fileData עד FileDataPart
      • .functionCall עד FunctionCallPart
      • .functionResponse עד FunctionResponsePart
  • קטגוריית הנזק

    • שינינו את HarmCategory כך שהוא לא יהיה יותר מקונן בסוג SafetySetting. אם אתם מתייחסים אליו בתור SafetySetting.HarmCategory, אפשר להחליף אותו ב-HarmCategory.
  • משוב בנושא בטיחות

    • הסרנו את הסוג SafetyFeedback כי לא השתמשנו בו באף אחת מהתשובות.
  • מטא-נתונים של ציטוטים

    • השם של המאפיין citationSources שונה ל-citations ב-CitationMetadata.
  • סה"כ תווים לחיוב

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

    • שינינו את השם של CandidateResponse ל-Candidate כדי להתאים אותו לפלטפורמות אחרות.
  • הגדרות ליצירת תוכן

    • המאפיינים הציבוריים של GenerationConfig השתנו ל-internal. אפשר להגדיר את כולם במאתחל.

Kotlin

  • ספירות

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

    • השם של המאפיין BlockThreshold שונה ל-HarmBlockThreshold.

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

  • שיטות Blob

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

    • השדה method השתנה כך שיוכל להכיל ערך null.
  • Duration class

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

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

    • השדה totalBillableCharacters השתנה כך שיוכל להכיל ערך null.
  • סה"כ תווים לחיוב

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

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

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

    • השם של LiveGenerationConfig.setResponseModalities שונה ל-LiveGenerationConfig.setResponseModality.

    • הסרנו את המחלקה LiveContentResponse.Status, ובמקום זאת הטמענו את שדות הסטטוס כמאפיינים של LiveContentResponse.

    • הסרנו את המחלקה LiveContentResponse, ובמקומה סיפקנו מחלקות משנה של LiveServerMessage שתואמות לתשובות מהמודל.

    • הפונקציה LiveModelFutures.connect שונתה כך שתחזיר את הערך ListenableFuture<LiveSessionFutures> במקום ListenableFuture<LiveSession>.

Java

  • ספירות

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

    • השם של המאפיין BlockThreshold שונה ל-HarmBlockThreshold.

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

  • שיטות Blob

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

    • השדה method השתנה כך שיוכל להכיל ערך null.
  • Duration class

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

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

    • השדה totalBillableCharacters השתנה כך שיוכל להכיל ערך null.
  • סה"כ תווים לחיוב

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

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

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

    • השם של LiveGenerationConfig.setResponseModalities שונה ל-LiveGenerationConfig.setResponseModality.

    • הסרנו את המחלקה LiveContentResponse.Status, ובמקום זאת הטמענו את שדות הסטטוס כמאפיינים של LiveContentResponse.

    • הסרנו את המחלקה LiveContentResponse, ובמקומה סיפקנו מחלקות משנה של LiveServerMessage שתואמות לתשובות מהמודל.

    • הפונקציה LiveModelFutures.connect שונתה כך שתחזיר את הערך ListenableFuture<LiveSessionFutures> במקום ListenableFuture<LiveSession>.

  • שינינו כמה שיטות של Java builder כך שיחזירו עכשיו בצורה נכונה את המכונה של המחלקה שלהן, במקום void.

Web

  • ספירות

    • הוסרו ערכים מהמספורים הבאים: HarmCategory,‏ BlockThreshold,‏ HarmProbability,‏ HarmSeverity,‏ BlockReason ו-FinishReason.
  • סיבת החסימה

    • השדה blockReason ב-PromptFeedback השתנה לאופציונלי.

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

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

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

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

Dart

  • ספירות

    • הוסרו ערכים מהרשימות הבאות: HarmCategory,‏ HarmProbability,‏ BlockReason ו-FinishReason.
  • חלק הנתונים

    • שינינו את השם של DataPart ל-InlineDataPart, ואת השם של הפונקציה static data ל-inlineData כדי להתאים לפלטפורמות אחרות.
  • אפשרויות לבקשות

    • הסרנו את RequestOptions כי timeout לא פעל. הוא יתווסף מחדש בעתיד הקרוב, אבל יועבר לסוג GenerativeModel כדי להתאים לפלטפורמות אחרות.
  • הפסקת רצפים

    • הפרמטר stopSequences ב-GenerationConfig השתנה, ועכשיו הוא אופציונלי ומוגדר כברירת מחדל ל-null במקום למערך ריק.
  • ציטוטים

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

    • הסרנו את הסוגים, השיטות והמאפיינים הבאים שנחשפו בטעות: defaultTimeout,‏ CountTokensResponseFields,‏ parseCountTokensResponse,‏ parseEmbedContentResponse,‏ parseGenerateContentResponse,‏ parseContent,‏ BatchEmbedContentsResponse,‏ ContentEmbedding,‏ EmbedContentRequest ו-EmbedContentResponse.
  • ספירת טוקנים

    • הסרנו שדות מיותרים מהפונקציה countTokens. צריך רק contents.
  • יצירת מופע של מודל

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

    • הסרנו מהמודל פונקציונליות הטמעה שלא נתמכת (embedContent ו-batchEmbedContents).

Unity

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

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

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

במהלך המעבר לשימוש בגרסת הזמינות הכללית של Firebase AI Logic, יכול להיות שתיתקלו בשגיאות אם לא השלמתם את כל השינויים הנדרשים שמתוארים במדריך הזה להעברת נתונים.

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

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

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

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


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