מעבר מ-SDK של לקוח Google AI ל-SDK של Firebase AI Logic


מעבר ישירות להוראות להעברת נתונים

למה כדאי לעבור לשימוש ב-Firebase AI Logic SDKs?

יכול להיות שניסיתם להשתמש בערכת SDK חלופית ללקוחות בנייד או באינטרנט שנתנה לכם גישה אל Gemini Developer API.

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

תכונות אבטחה לאפליקציות לנייד ולאינטרנט

האבטחה באפליקציות לנייד ובאפליקציות לאינטרנט היא קריטית, וצריך להתייחס אליה באופן מיוחד כי הקוד שלכם – כולל קריאות ל-Gemini API – פועל בסביבה לא מוגנת. אתם יכולים להשתמש ב-Firebase App Check כדי להגן על ממשקי API מפני ניצול לרעה על ידי לקוחות לא מורשים.

כשמשתמשים ב-Firebase App Check עם Firebase AI Logic, אף פעם לא מוסיפים את מפתח ה-API של Gemini ל-Gemini Developer API ישירות לבסיס הקוד של האפליקציה לנייד או לאפליקציית האינטרנט. במקום זאת, מפתח ה-API‏ Gemini נשאר בשרת ולא נחשף לגורמים זדוניים.

מערכת אקולוגית שנוצרה עבור אפליקציות לנייד ולאינטרנט

‫Firebase היא הפלטפורמה של Google לפיתוח אפליקציות לנייד ולאינטרנט. השימוש ב-Firebase AI Logic מאפשר לאפליקציות שלכם לפעול בסביבה שמתמקדת בצרכים של אפליקציות ומפתחים של full-stack. לדוגמה:

  • אפשר להגדיר באופן דינמי תצורות של זמן ריצה או להחליף ערכים באפליקציה (כמו שם וגרסה של מודל) בלי לפרסם גרסה חדשה של האפליקציה באמצעות Firebase Remote Config.

  • אפשר להשתמש ב-Cloud Storage for Firebase כדי לכלול קבצים גדולים בבקשות מרובות-אופנים (אם משתמשים ב-Vertex AI Gemini API). ערכות ה-SDK של לקוח Cloud Storage עוזרות לכם לטפל בהעלאות ובהורדות של קבצים (גם בתנאי רשת גרועים) ומציעות אבטחה משופרת לנתונים של משתמשי הקצה. מידע נוסף זמין במדריך הפתרונות שלנו בנושא השימוש ב-Cloud Storage for Firebase.

  • ניהול נתונים מובנים באמצעות ערכות SDK של מסדי נתונים שנוצרו עבור אפליקציות לנייד ואפליקציות לאינטרנט (כמו Cloud Firestore).

מעבר לערכות SDK של Firebase AI Logic

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

  • שלב 1: מגדירים פרויקט חדש או קיים ב-Firebase ומקשרים את האפליקציה ל-Firebase.

  • שלב 2: מוסיפים את ערכות ה-SDK של Firebase AI Logic לאפליקציה.

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

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

שלב 1: הגדרת פרויקט ב-Firebase וקישור האפליקציה

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

  2. במסוף Firebase, עוברים לדף Firebase AI Logic.

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

  4. לוחצים על Gemini Developer API. תמיד אפשר להגדיר ולהשתמש בספק API אחר מאוחר יותר, אם רוצים.

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

  5. אם מופיעה בקשה בתהליך העבודה של המסוף, פועלים לפי ההוראות במסך כדי לרשום את האפליקציה ולחבר אותה ל-Firebase.

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

שלב 2: מוסיפים את Firebase AI Logic SDK לאפליקציה

אחרי שמגדירים את פרויקט Firebase ומקשרים את האפליקציה ל-Firebase (ראו שלב קודם), אפשר להוסיף את ה-SDK לאפליקציה.Firebase AI Logic

Swift

משתמשים ב-Swift Package Manager כדי להתקין ולנהל יחסי תלות ב-Firebase.

הספרייה Firebase AI Logic מספקת גישה לממשקי ה-API לאינטראקציה עם מודלים של Gemini ו-Imagen. הספרייה כלולה כחלק מ-Firebase SDK לפלטפורמות של אפל (firebase-ios-sdk).

אם אתם כבר משתמשים ב-Firebase, אתם צריכים לוודא שחבילת Firebase שלכם היא גרסה 11.13.0 ואילך.

  1. ב-Xcode, כשהפרויקט של האפליקציה פתוח, עוברים אל File > Add Package Dependencies (קובץ > הוספת תלות בחבילה).

  2. כשמוצגת בקשה, מוסיפים את מאגר Firebase Apple platforms SDK:

    https://github.com/firebase/firebase-ios-sdk
    
  3. בוחרים את גרסת ה-SDK העדכנית ביותר.

  4. בוחרים בספרייה FirebaseAI.

אחרי שתסיימו, פלטפורמת Xcode תתחיל אוטומטית לטפל ביחסי התלות ולהוריד אותם ברקע.

Kotlin

Firebase AI Logic SDK ל-Android‏ (firebase-ai) מספק גישה לממשקי ה-API לאינטראקציה עם מודלים של Gemini ושל Imagen.

בקובץ Gradle של המודול (ברמת האפליקציה) (למשל <project>/<app-module>/build.gradle.kts), מוסיפים את התלות בספריית Firebase AI Logic ל-Android. מומלץ להשתמש ב-Firebase Android BoM כדי לשלוט בניהול הגרסאות של הספריות.

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:33.15.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")
}

באמצעות Firebase Android BoM, האפליקציה תמיד תשתמש בגרסאות תואמות של ספריות Firebase ל-Android.

Java

Firebase AI Logic SDK ל-Android‏ (firebase-ai) מספק גישה לממשקי ה-API לאינטראקציה עם מודלים של Gemini ושל Imagen.

בקובץ Gradle של המודול (ברמת האפליקציה) (למשל <project>/<app-module>/build.gradle.kts), מוסיפים את התלות בספריית Firebase AI Logic ל-Android. מומלץ להשתמש ב-Firebase Android BoM כדי לשלוט בניהול הגרסאות של הספריות.

ב-Java, צריך להוסיף עוד שתי ספריות.

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:33.15.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")

  // Required for one-shot operations (to use `ListenableFuture` from Guava Android)
  implementation("com.google.guava:guava:31.0.1-android")

  // Required for streaming operations (to use `Publisher` from Reactive Streams)
  implementation("org.reactivestreams:reactive-streams:1.0.4")
}

באמצעות Firebase Android BoM, האפליקציה תמיד תשתמש בגרסאות תואמות של ספריות Firebase ל-Android.

Web

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

  1. מתקינים את Firebase JS SDK לאינטרנט באמצעות npm:

    npm install firebase
    
  2. מפעילים את Firebase באפליקציה:

    import { initializeApp } from "firebase/app";
    
    // 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);
    

Dart

הפלאגין Firebase AI Logic ל-Flutter‏ (firebase_ai) מספק גישה לממשקי ה-API לצורך אינטראקציה עם מודלים של Gemini ו-Imagen.

  1. מריצים את הפקודה הבאה מספריית פרויקט Flutter כדי להתקין את פלאגין הליבה ואת הפלאגין Firebase AI Logic:

    flutter pub add firebase_core && flutter pub add firebase_ai
    
  2. בקובץ lib/main.dart, מייבאים את פלאגין הליבה של Firebase, את הפלאגין Firebase AI Logic ואת קובץ ההגדרות שיצרתם קודם:

    import 'package:firebase_core/firebase_core.dart';
    import 'package:firebase_ai/firebase_ai.dart';
    import 'firebase_options.dart';
    
  3. בנוסף, בקובץ lib/main.dart, מאתחלים את Firebase באמצעות האובייקט DefaultFirebaseOptions שמיוצא מקובץ ההגדרות:

    await Firebase.initializeApp(
      options: DefaultFirebaseOptions.currentPlatform,
    );
    
  4. בונים מחדש את אפליקציית Flutter:

    flutter run
    

Unity

התמיכה ב-Unity לא הייתה זמינה בערכות ה-SDK של לקוחות Google AI.

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

הסרת ה-SDK הישן מהאפליקציה

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

Swift

מסירים את הספרייה הישנה:

  1. ב-Xcode, כשפרויקט האפליקציה פתוח, עוברים לחלונית Packages Dependencies.

  2. בוחרים את חבילת generative-ai-swift מרשימת התלויות של החבילה.

  3. לוחצים על הלחצן - בחלק התחתון של הרשימה ואז על הסרה כדי לאשר.

Kotlin

dependencies {
    implementation("com.google.ai.client.generativeai:generativeai:VERSION")
}

Java

dependencies {
    implementation("com.google.ai.client.generativeai:generativeai:VERSION")
}

Web

// BEFORE
import { initializeApp } from "firebase/app";
import { GoogleGenerativeAI } from "@google/generative-ai";

Dart

מוחקים את החבילה הישנה:
flutter pub remove google_generative_ai

Unity

לא הייתה תמיכה ב-Unity מ-SDK של לקוח Google AI.

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

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

צריך לעדכן את הייבוא ואת אופן ההפעלה של שירות ה-Backend של Gemini Developer API וליצור מופע של GenerativeModel.

Swift

// BEFORE
import GoogleGenerativeAI

let model = GenerativeModel(name: "MODEL_NAME", apiKey: APIKey.default)

// AFTER
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

// BEFORE
import com.google.ai.client.generativeai.Chat
import com.google.ai.client.generativeai.type.Content
import com.google.ai.client.generativeai.java.GenerativeModuleFutures

...

val generativeModel = GenerativeModel(modelName = "MODEL_NAME",
  // Access your API key as a Build Configuration variable
  apiKey = BuildConfig.apiKey
)

// AFTER
import com.google.firebase.Firebase
import com.google.firebase.ai.ai
import com.google.firebase.ai.type.GenerativeBackend

...

// 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

// BEFORE
import com.google.ai.client.generativeai.Chat;
import com.google.ai.client.generativeai.type.Content;
import com.google.ai.client.generativeai.java.GenerativeModuleFutures;

...

GenerativeModel gm = new GenerativeModel("MODEL_NAME",
  // Access your API key as a Build Configuration variable
  BuildConfig.apiKey
);

GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// AFTER
import com.google.firebase.ai.FirebaseAI;
import com.google.firebase.ai.GenerativeModel;
import com.google.firebase.ai.java.GenerativeModelFutures;
import com.google.firebase.ai.type.GenerativeBackend;

...

// 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

// BEFORE
import { GoogleGenerativeAI } from "@google/generative-ai";

// Fetch your API_KEY and access your API
const API_KEY = "...";
const genAI = new GoogleGenerativeAI(API_KEY);

...

const model = genAI.getGenerativeModel({ model: "MODEL_NAME"});

// AFTER
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

// BEFORE
import 'package:google_generative_ai/google_generative_ai.dart';

final apiKey = Platform.environment['API_KEY'];
if (apiKey == null) {
print('No \$API_KEY environment variable');
exit(1);
}

final model = GenerativeModel(model: 'MODEL_NAME', apiKey: apiKey);

// AFTER
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 מ-SDK של לקוח Google AI.

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

הערה: יכול להיות שלא תמיד תיצרו מופע של GenerativeModel, בהתאם ליכולת שבה אתם משתמשים.

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

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

  • ערכות ה-SDK של לקוח Firebase AI Logic לא תומכות בהרצת קוד. אם אתם משתמשים בתכונה הזו, אתם צריכים להתאים את האפליקציה שלכם.

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

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

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

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

  • פסק זמן

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

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

Swift

  • Enumerations

    • החלפנו את רוב הסוגים של 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

  • Enumerations

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

    • השם של הספירה BlockThreshold שונה ל-HarmBlockThreshold.

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

  • שיטות של Blob

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

    • השדה method שונה כך שניתן להזין בו ערך null.
  • משך השיעור

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

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

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

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

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

Java

  • Enumerations

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

    • השם של הספירה BlockThreshold שונה ל-HarmBlockThreshold.

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

  • שיטות של Blob

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

    • השדה method שונה כך שניתן להזין בו ערך null.
  • משך השיעור

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

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

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

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

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

Web

חשוב לשים לב שבוצעו שינויים רבים ב-SDK של לקוח Google AI ל-JavaScript מאז שבוצע פיצול של SDKs של לקוח Firebase AI Logic ממנו. ריכזנו כאן כמה שינויים פוטנציאליים שכדאי לקחת בחשבון כשעוברים אל ערכות ה-SDK של לקוח Firebase AI Logic.

  • Enumerations

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

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

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

    • הוסרו כל השימושים ב-GoogleGenerativeAIError, ואפשרות נוספת היא מעבר אל AIError.

Dart

  • Enumerations

    • הוסרו ערכים מהמספורים הבאים: 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 מ-SDK של לקוח Google AI.

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


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