בדף הזה נתאר את אפשרויות ההגדרה הבאות של חוויות היברידיות:
חשוב לוודא שסיימתם את מדריך תחילת העבודה ליצירת חוויות היברידיות.
הגדרת מצב הסקה
הדוגמאות במדריך לתחילת העבודה משתמשות במצב PREFER_ON_DEVICE, אבל זה רק אחד מארבעת מצבי ההסקה הזמינים.
אלה מצבי ההסקה שזמינים:
PREFER_ON_DEVICE: ניסיון להשתמש במודל במכשיר אם הוא זמין ותומך בסוג הבקשה. אחרת, תירשם שגיאה במכשיר ואז תתבצע חזרה אוטומטית למודל שמתארח בענן.Kotlin
val config = OnDeviceConfig(mode = InferenceMode.PREFER_ON_DEVICE)Java
InferenceMode mode = InferenceMode.PREFER_ON_DEVICE; OnDeviceConfig config = new OnDeviceConfig(mode);
ONLY_ON_DEVICE: ניסיון להשתמש במודל במכשיר אם הוא זמין ותומך בסוג הבקשה. אחרת, מוצג חריג.Kotlin
val config = OnDeviceConfig(mode = InferenceMode.ONLY_ON_DEVICE)Java
InferenceMode mode = InferenceMode.ONLY_ON_DEVICE; OnDeviceConfig config = new OnDeviceConfig(mode);
PREFER_IN_CLOUD: ניסיון להשתמש במודל שמתארח בענן אם המכשיר מחובר לאינטרנט והמודל זמין. אם המכשיר אופליין, המודל במכשיר יופעל. בכל שאר המקרים של כשל, מופעלת חריגה.Kotlin
val config = OnDeviceConfig(mode = InferenceMode.PREFER_IN_CLOUD)Java
InferenceMode mode = InferenceMode.PREFER_IN_CLOUD; OnDeviceConfig config = new OnDeviceConfig(mode);
ONLY_IN_CLOUD: ניסיון להשתמש במודל שמתארח בענן אם המכשיר מחובר לאינטרנט והמודל זמין. אחרת, מוצג חריג.Kotlin
val config = OnDeviceConfig(mode = InferenceMode.ONLY_IN_CLOUD)Java
InferenceMode mode = InferenceMode.ONLY_IN_CLOUD; OnDeviceConfig config = new OnDeviceConfig(mode);
איך בודקים אם נעשה שימוש בהסקת מסקנות במכשיר או בענן
אם אתם משתמשים במצבי ההסקה PREFER_ON_DEVICE או PREFER_IN_CLOUD, יכול להיות שיהיה לכם שימושי לדעת באיזה מצב נעשה שימוש עבור בקשות מסוימות. המידע הזה מופיע במאפיין inferenceSource של כל תשובה.
כשניגשים למאפיין הזה, הערך שמוחזר יהיה ON_DEVICE או IN_CLOUD.
Kotlin
// ...
print("You used: ${result.response.inferenceSource}")
print(result.response.text)
Java
// ...
System.out.println("You used: " + result.getResponse().getInferenceSource());
System.out.println(result.getResponse().getText());
ציון מודל שמתארח בענן לשימוש
|
לוחצים על הספק Gemini API כדי לראות את התוכן והקוד הספציפיים לספק בדף הזה. |
אם יכול להיות שההסקה הראשית או ההסקה של הגיבוי תתבצע על ידי מודל שמתארח בענן, צריך לציין במפורש מודל בענן לשימוש כשיוצרים את מופע generativeModel.
Kotlin
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
.generativeModel(
modelName = "MODEL_NAME",
onDeviceConfig = OnDeviceConfig(mode = InferenceMode.PREFER_ON_DEVICE)
)
Java
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
"MODEL_NAME",
new OnDeviceConfig(InferenceMode.PREFER_ON_DEVICE)
);
GenerativeModelFutures model = GenerativeModelFutures.from(ai);
שמות המודלים של Gemini שנתמכים
שימוש בהגדרות המודל כדי לשלוט בתשובות
|
לוחצים על הספק Gemini API כדי לראות את התוכן והקוד הספציפיים לספק בדף הזה. |
בכל בקשה למודל, אפשר לשלוח הגדרת מודל כדי לשלוט באופן שבו המודל יוצר תשובה. מודלים שמתארחים בענן ומודלים במכשיר מציעים אפשרויות הגדרה שונות (פרמטרים של cloud לעומת on-device).
במודלים שמארחים בענן, מגדירים את ההגדרה שלהם ישירות בהגדרה של המודל. עם זאת, במודלים במכשיר, צריך להגדיר את התצורה שלהם בתוך onDeviceConfig.
ההגדרה נשמרת למשך כל חיי המופע. אם רוצים להשתמש בהגדרה אחרת, צריך ליצור מופע GenerativeModel חדש עם ההגדרה הזו.
הנה דוגמה להגדרות של מודלים שמתארחים בענן ומודלים שפועלים במכשיר, שאפשר להשתמש בהם אם מוגדר מצב ההסקה PREFER_ON_DEVICE:
Kotlin
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
.generativeModel("MODEL_NAME",
// Config for cloud-hosted model
generationConfig = generationConfig {
temperature = 0.8f,
topK = 10
},
// Config for on-device model
onDeviceConfig = onDeviceConfig {
mode = InferenceMode.PREFER_ON_DEVICE,
temperature = 0.8f,
topK = 5
})
Java
// Config for cloud-hosted model
GenerationConfig generationConfig = new GenerationConfig.Builder()
.setTemperature(0.8f)
.setTopK(10)
.build();
// Config for on-device model
OnDeviceConfig onDeviceConfig = new OnDeviceConfig.Builder()
.setMode(InferenceMode.PREFER_ON_DEVICE)
.setTemperature(0.8f)
.setTopK(5)
.build();
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
"MODEL_NAME",
generationConfig,
onDeviceConfig
);
GenerativeModelFutures model = GenerativeModelFutures.from(ai);