מעבר ישירות להוראות להעברת נתונים
למה כדאי לעבור לשימוש ב-Firebase AI Logic SDKs?
יכול להיות שניסיתם להשתמש בערכת SDK חלופית ללקוחות בנייד או באינטרנט שנתנה לכם גישה אל Gemini Developer API.
ערכות ה-SDK האלה ללקוח לא שולבו במערכת האקולוגית החזקה של Firebase, שמציעה שירותים קריטיים לאפליקציות לנייד ולאינטרנט. התמיכה בהם הופסקה ועכשיו מומלץ להשתמש בערכות ה-SDK של הלקוח, שמאפשרות גישה ל-Gemini Developer API.Firebase AI Logic
תכונות אבטחה לאפליקציות לנייד ולאינטרנט
האבטחה באפליקציות לנייד ובאפליקציות אינטרנט היא קריטית, וצריך להתייחס אליה באופן מיוחד כי הקוד שלכם – כולל קריאות ל-Gemini API – פועל בסביבה לא מוגנת. אתם יכולים להשתמש ב-Firebase App Check כדי להגן על ממשקי API מפני ניצול לרעה על ידי לקוחות לא מורשים.
כשמשתמשים ב-Firebase App Check עם Firebase AI Logic, אף פעם לא מוסיפים את מפתח ה-API של Gemini ל-Gemini Developer API ישירות לבסיס הקוד של האפליקציה לנייד או לאתר. במקום זאת, מפתח ה-API Gemini נשאר בשרת ולא נחשף לגורמים זדוניים.
מערכת אקולוגית שנוצרה עבור אפליקציות לנייד ולאינטרנט
Firebase היא הפלטפורמה של Google לפיתוח אפליקציות לנייד ולאינטרנט. השימוש ב-Firebase AI Logic מאפשר לאפליקציות שלכם לפעול בסביבה שמתמקדת בצרכים של אפליקציות ושל מפתחים עם מגוון רחב של מיומנויות. לדוגמה:
אפשר להגדיר באופן דינמי הגדרות בזמן ריצה או להחליף ערכים באפליקציה (כמו שם וגרסה של מודל) בלי לפרסם גרסה חדשה של האפליקציה באמצעות Firebase Remote Config.
אפשר להשתמש ב-Cloud Storage for Firebase כדי לכלול קבצים גדולים בבקשות מרובות-אופנים (אם משתמשים ב-Vertex AI Gemini API). ערכות ה-SDK של לקוח Cloud Storage עוזרות לכם לטפל בהעלאות ובהורדות של קבצים (גם בתנאי רשת ירודים) ומציעות אבטחה משופרת לנתונים של משתמשי הקצה. מידע נוסף זמין במדריך הפתרונות שלנו בנושא שימוש ב-Cloud Storage for Firebase.
ניהול נתונים מובנים באמצעות ערכות SDK של מסד נתונים שנוצרו לאפליקציות לנייד ולאפליקציות אינטרנט (כמו Cloud Firestore).
מעבר לערכות Firebase AI Logic SDK
סקירה כללית של השלבים להעברה לערכות ה-SDK של Firebase AI Logic:
שלב 1: מגדירים פרויקט חדש או קיים ב-Firebase ומקשרים את האפליקציה ל-Firebase.
שלב 2: מוסיפים את ה-SDKs של Firebase AI Logic לאפליקציה.
שלב 3: מעדכנים את הייבוא ואת ההפעלה הראשונית באפליקציה.
שלב 4: מעדכנים את הקוד בהתאם לתכונות שבהן משתמשים.
שלב 1: הגדרת פרויקט Firebase וקישור האפליקציה
נכנסים אל Firebaseהמסוף ובוחרים את הפרויקט ב-Firebase.
במסוף Firebase, עוברים אל AI Services (שירותי AI) > AI Logic (לוגיקת AI).
לוחצים על Get started (תחילת העבודה) כדי להפעיל תהליך עבודה מודרך שיעזור לכם להגדיר את ממשקי ה-API והמשאבים הנדרשים לפרויקט.
לוחצים על Gemini Developer API. תמיד אפשר להגדיר ולהשתמש בספק API אחר מאוחר יותר, אם רוצים.
במסוף יופעלו ממשקי ה-API הנדרשים וייווצר מפתח API חדש וייעודיGemini בפרויקט.
אל תוסיפו את מפתח ה-API החדש, Gemini, לבסיס הקוד של האפליקציה. מידע נוסףאם מופיעה בקשה בתהליך העבודה של המסוף, פועלים לפי ההוראות במסך כדי לרשום את האפליקציה ולקשר אותה ל-Firebase.
כדי לעדכן את הספרייה ואת ההפעלה באפליקציה, צריך להמשיך לקרוא את המדריך הזה להעברה.
שלב 2: מוסיפים את Firebase AI Logic SDK לאפליקציה
אחרי שמגדירים את פרויקט Firebase ומקשרים את האפליקציה ל-Firebase (ראו שלב קודם), אפשר להוסיף את ה-SDK לאפליקציה.Firebase AI Logic
Swift
משתמשים ב-Swift Package Manager כדי להתקין ולנהל יחסי תלות ב-Firebase. במקרה הצורך, אפשר לעיין באפשרויות התקנה אחרות.
הספרייה Firebase AI Logic מספקת גישה לממשקי ה-API לאינטראקציה עם מודלים של Gemini. הספרייה כלולה כחלק מ-Firebase SDK לפלטפורמות של אפל (firebase-ios-sdk).
אם אתם כבר משתמשים ב-Firebase, אתם צריכים לוודא שחבילת Firebase שלכם היא מגרסה 12.5.0 ואילך.
ב-Xcode, כשפרויקט האפליקציה פתוח, עוברים אל File > Add Package Dependencies (קובץ > הוספת תלות בחבילה).
כשמוצגת בקשה, מוסיפים את מאגר Firebase Apple platforms SDK:
https://github.com/firebase/firebase-ios-sdkבוחרים את גרסת ה-SDK העדכנית ביותר.
בוחרים בספרייה
FirebaseAILogicובספרייהFirebaseAppCheck.
אחרי שתסיימו, פלטפורמת Xcode תתחיל באופן אוטומטי לטפל ביחסי התלות ולהוריד אותם ברקע.
Kotlin
Firebase AI Logic SDK ל-Android (firebase-ai) מספק גישה לממשקי ה-API לאינטראקציה עם מודלים של Gemini.
בקובץ Gradle של המודול (ברמת האפליקציה) (למשל <project>/<app-module>/build.gradle.kts), מוסיפים את התלויות בספריות Firebase AI Logic ו-App Check ל-Android. מומלץ להשתמש ב-Firebase Android BoM כדי לשלוט בניהול הגרסאות של הספריות.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.15.0")) // Add the dependencies for the F irebase AILogic and App Check libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-ai") implementation("com.google.firebase:firebase-appcheck-debug") }
באמצעות Firebase Android BoM, האפליקציה תמיד תשתמש בגרסאות תואמות של ספריות Firebase ל-Android.
Java
Firebase AI Logic SDK ל-Android (firebase-ai) מספק גישה לממשקי ה-API לאינטראקציה עם מודלים של Gemini.
בקובץ Gradle של המודול (ברמת האפליקציה) (למשל <project>/<app-module>/build.gradle.kts), מוסיפים את התלויות בספריות Firebase AI Logic ו-App Check ל-Android. מומלץ להשתמש ב-Firebase Android BoM כדי לשלוט בניהול הגרסאות של הספריות.
ב-Java, צריך להוסיף עוד שתי ספריות.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.15.0")) // Add the dependencies for the F irebase AILogic and App Check libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-ai") implementation("com.google.firebase:firebase-appcheck-debug") // 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. הספרייה נכללת כחלק מ-Firebase JavaScript SDK לאינטרנט.
מתקינים את Firebase JS SDK לאינטרנט באמצעות npm:
npm install firebaseמפעילים את Firebase באפליקציה:
import { initializeApp } from "firebase/app"; import { initializeAppCheck, DebugProvider } from "firebase/app-check"; // 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.
מריצים את הפקודה הבאה מספריית הפרויקט של Flutter כדי להתקין את הפלאגינים Firebase AI Logic ו-App Check:
flutter pub add firebase_ai firebase_app_checkבקובץ
lib/main.dart, מייבאים את התוספים Firebase AI Logic ו-App Check:import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_ai/firebase_ai.dart'; import 'package:firebase_app_check/firebase_app_check.dart'; import 'firebase_options.dart';בנוסף, בקובץ
lib/main.dart, מוודאים שאתחלתם את Firebase באמצעות האובייקטDefaultFirebaseOptionsשיוצא מקובץ ההגדרות:await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, );בונים מחדש את אפליקציית Flutter:
flutter run
Unity
התמיכה ב-Unity לא הייתה זמינה בערכות ה-SDK של לקוחות Google AI.
הסרת ערכת ה-SDK הישנה מהאפליקציה
אחרי שמסיימים להעביר את האפליקציה (ראו את שאר הקטעים במדריך הזה), חשוב למחוק את הספרייה הישנה.
Swift
מסירים את הספרייה הישנה:
ב-Xcode, כשפרויקט האפליקציה פתוח, עוברים לחלונית Packages Dependencies.
בוחרים את חבילת
generative-ai-swiftמרשימת התלות של החבילה.לוחצים על הלחצן
-בחלק התחתון של הרשימה ואז על הסרה כדי לאשר.
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.
שלב 3: מעדכנים את הייבוא ואת ההפעלה הראשונית באפליקציה
מעדכנים את הייבוא ואת אופן ההפעלה של שירות הקצה העורפי Gemini Developer API ויוצרים מופע GenerativeModel.
ברגע שמתחילים לפתח את האפליקציה ברצינות, חשוב מאוד לשלב את Firebase App Check כדי שרק בקשות מהאפליקציה בפועל וממכשירים מאומתים יועברו אל ה-Backend.
Swift
// BEFOREimport GoogleGenerativeAI let model = GenerativeModel(name: "MODEL_NAME", apiKey: APIKey.default)"gemini-3.5-flash") 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.5-flash")
Kotlin
// BEFOREimport 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.GenerativeBac"gemini-3.5-flash") // 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.5-flash")
Java
// BEFOREimport 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.GenerativeBackerativeModelFutures.from(ai); // 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.5-flash"); // Use the GenerativeModelFutures Java compatibility layer which offers // support for ListenableFuture and Publisher APIs GenerativeModelFutures model = GenerativeModelFutures.from(ai);
Web
// BEFOREimport { 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: "odel = getGenerativeModel(ai, { model: "gemini-3.5-flash" }); 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.5-flash" });
Dart
// BEFOREimport '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&: 'global').generativeModel(model: 'gemini-3.5-flash'); 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.5-flash');
Unity
התמיכה ב-Unity לא הייתה זמינה מ-SDK של לקוח Google AI.
חשוב לזכור שיכול להיות שלא תמיד תיצרו מופע של GenerativeModel, בהתאם ליכולת שבה אתם משתמשים. כדי להזרים קלט ופלט באמצעות Gemini Live API, צריך ליצור מכונת LiveModel.
שלב 4: מעדכנים את הקוד בהתאם לתכונות שבהן משתמשים
בשלב הזה מתוארים שינויים שאולי יהיה צורך לבצע, בהתאם לתכונות שבהן אתם משתמשים.
ערכות ה-SDK של הלקוח Firebase AI Logic לא תומכות בהרצת קוד. אם אתם משתמשים בתכונה הזו, אתם צריכים להתאים את האפליקציה שלכם.
כדאי לעיין ברשימות הבאות כדי לראות אם יש שינויים שצריך לבצע בקוד כדי להתאים אותו להעברה לערכות ה-SDK של הלקוח Firebase AI Logic.
חובה לכל השפות והפלטפורמות
קריאה לפונקציות
אם הטמעתם את התכונה הזו, תצטרכו לעדכן את האופן שבו אתם מגדירים את הסכימה. מומלץ לעיין במדריך המעודכן להפעלת פונקציות כדי ללמוד איך לכתוב את הצהרות הפונקציות.יצירת פלט מובנה (למשל, JSON) באמצעות
responseSchema
אם הטמעתם את התכונה הזו, תצטרכו לעדכן את הגדרת הסכימה. מומלץ לעיין במדריך החדש ליצירת פלט מובנה כדי ללמוד איך לכתוב סכימות JSON.פסק זמן
- הזמן הקצוב לתפוגה של בקשות שונה ל-180 שניות.
נדרש בהתאם לפלטפורמה או לשפה
Swift
Enumerations
רוב הסוגים
enumהוחלפו ב-structעם משתנים סטטיים. השינוי הזה מאפשר גמישות רבה יותר בפיתוח ה-API באופן שתואם לאחור. כשמשתמשים בהצהרותswitch, צריך עכשיו לכלול מקרהdefault:כדי לכסות ערכים לא ידועים או לא מטופלים, כולל ערכים חדשים שיתווספו ל-SDK בעתיד.השם של ה-enumeration
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. אפשר להגדיר את כולם ב-initializer.
- המאפיינים הציבוריים של
Kotlin
Enumerations
החלפנו את
enumclasses ואתsealedclasses בכיתות רגילות. השינוי הזה מאפשר גמישות רבה יותר בפיתוח ה-API באופן שתואם לאחור.השם של ספירת הערכים
BlockThresholdשונה ל-HarmBlockThreshold.הוסרו ערכים מהמספורים הבאים:
HarmBlockThreshold,HarmProbability,HarmSeverity,BlockReasonו-FinishReason.
Blob methods
- שינינו את השם של כל ה-methods שכללו את
Blobכחלק מהשם שלהן, כך שישתמשו ב-InlineDataבמקום זאת.
- שינינו את השם של כל ה-methods שכללו את
הגדרות בטיחות
- השדה
methodשונה כך שניתן להזין בו ערך null.
- השדה
משך השיעור
- הסרנו את כל השימושים במחלקה
Durationשל Kotlin והחלפנו אותם ב-long. השינוי הזה מאפשר יכולת פעולה הדדית טובה יותר עם Java.
- הסרנו את כל השימושים במחלקה
מטא-נתונים של ציטוטים
- העברנו את כל השדות שהוגדרו קודם ב-
CitationMetadataלמחלקה חדשה בשםCitation. אפשר למצוא את הציטוטים ברשימה שנקראתcitationsב-CitationMetadata. השינוי הזה מאפשר התאמה טובה יותר של הסוגים בין הפלטפורמות.
- העברנו את כל השדות שהוגדרו קודם ב-
ספירת טוקנים
- השדה
totalBillableCharactersשונה כך שניתן להזין בו ערך null.
- השדה
סך התווים שניתנים לחיוב
- המאפיין
totalBillableCharactersב-CountTokensResponseשונה כך שיהיה אופציונלי, כדי לשקף מצבים שבהם לא נשלחים תווים.
- המאפיין
יצירת מופע של מודל
- העברנו את הפרמטר
requestOptionsלסוף רשימת הפרמטרים כדי להתאים אותו לפלטפורמות אחרות.
- העברנו את הפרמטר
Java
Enumerations
החלפנו את
enumclasses ואתsealedclasses בכיתות רגילות. השינוי הזה מאפשר גמישות רבה יותר בפיתוח ה-API באופן שתואם לאחור.השם של ספירת הערכים
BlockThresholdשונה ל-HarmBlockThreshold.הוסרו ערכים מהמספורים הבאים:
HarmBlockThreshold,HarmProbability,HarmSeverity,BlockReasonו-FinishReason.
Blob methods
- שינינו את השם של כל ה-methods שכללו את
Blobכחלק מהשם שלהן, כך שישתמשו ב-InlineDataבמקום זאת.
- שינינו את השם של כל ה-methods שכללו את
הגדרות בטיחות
- השדה
methodשונה כך שניתן להזין בו ערך null.
- השדה
משך השיעור
- הסרנו את כל השימושים במחלקה
Durationשל Kotlin והחלפנו אותם ב-long. השינוי הזה מאפשר יכולת פעולה הדדית טובה יותר עם Java.
- הסרנו את כל השימושים במחלקה
מטא-נתונים של ציטוטים
- העברנו את כל השדות שהוגדרו קודם ב-
CitationMetadataלמחלקה חדשה בשםCitation. אפשר למצוא את הציטוטים ברשימה שנקראתcitationsב-CitationMetadata. השינוי הזה מאפשר התאמה טובה יותר של הסוגים בין הפלטפורמות.
- העברנו את כל השדות שהוגדרו קודם ב-
ספירת טוקנים
- השדה
totalBillableCharactersשונה כך שניתן להזין בו ערך null.
- השדה
סך התווים שניתנים לחיוב
- המאפיין
totalBillableCharactersב-CountTokensResponseשונה כך שיהיה אופציונלי, כדי לשקף מצבים שבהם לא נשלחים תווים.
- המאפיין
יצירת מופע של מודל
- העברנו את הפרמטר
requestOptionsלסוף רשימת הפרמטרים כדי להתאים אותו לפלטפורמות אחרות.
- העברנו את הפרמטר
Web
חשוב לשים לב שבוצעו שינויים רבים ב-SDK של לקוח Google AI ל-JavaScript מאז ש-SDK של לקוח 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, והפונקציהstaticdataשונתה ל-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?