במדריך הזה מוסבר איך להתחיל לבצע קריאות ל-Vertex AI Gemini API ישירות מהאפליקציה באמצעות ה-SDK של Vertex AI in Firebase לפלטפורמה שבחרתם.
הערה: אפשר להשתמש במדריך הזה גם כדי להתחיל לגשת למודלים של Imagen באמצעות ערכות ה-SDK של Vertex AI in Firebase.
דרישות מוקדמות
Swift
במדריך הזה אנו מניחים שאתם מכירים את השימוש ב-Xcode לפיתוח אפליקציות לפלטפורמות של Apple (כמו iOS).
חשוב לוודא שסביבת הפיתוח והאפליקציה לפלטפורמות של Apple עומדות בדרישות הבאות:
- Xcode מגרסה 16.2 ואילך
- האפליקציה שלכם מטרגטת ל-iOS מגרסה 15 ואילך או ל-macOS מגרסה 12 ואילך
(אופציונלי) כדאי לבדוק את האפליקציה לדוגמה.
אתם יכולים לנסות את ה-SDK במהירות, לראות הטמעה מלאה של תרחישים שונים לדוגמה או להשתמש באפליקציית הדוגמה אם אין לכם אפליקציה משלכם לפלטפורמות של Apple. כדי להשתמש באפליקציית הדוגמה, תצטרכו לקשר אותה לפרויקט ב-Firebase.
Kotlin
במדריך הזה אנחנו יוצאים מנקודת הנחה שאתם מכירים את השימוש ב-Android Studio לפיתוח אפליקציות ל-Android.
חשוב לוודא שסביבת הפיתוח והאפליקציה ל-Android עומדות בדרישות הבאות:
- Android Studio (הגרסה האחרונה)
- האפליקציה שלכם מטרגטת לרמת API 21 ואילך
(אופציונלי) כדאי לבדוק את האפליקציה לדוגמה.
אתם יכולים לנסות את ה-SDK במהירות, לראות הטמעה מלאה של תרחישים שונים לדוגמה או להשתמש באפליקציית הדוגמה אם אין לכם אפליקציה משלכם ל-Android. כדי להשתמש באפליקציית הדוגמה, תצטרכו לקשר אותה לפרויקט Firebase.
Java
במדריך הזה אנחנו יוצאים מנקודת הנחה שאתם מכירים את השימוש ב-Android Studio לפיתוח אפליקציות ל-Android.
חשוב לוודא שסביבת הפיתוח והאפליקציה ל-Android עומדות בדרישות הבאות:
- Android Studio (הגרסה האחרונה)
- האפליקציה שלכם מטרגטת לרמת API 21 ואילך
(אופציונלי) כדאי לבדוק את האפליקציה לדוגמה.
אתם יכולים לנסות את ה-SDK במהירות, לראות הטמעה מלאה של תרחישים שונים לדוגמה או להשתמש באפליקציית הדוגמה אם אין לכם אפליקציה משלכם ל-Android. כדי להשתמש באפליקציית הדוגמה, תצטרכו לקשר אותה לפרויקט Firebase.
Web
במדריך הזה אנחנו יוצאים מנקודת הנחה שאתם מכירים את השימוש ב-JavaScript לפיתוח אפליקציות אינטרנט. המדריך הזה לא תלוי בסביבה.
חשוב לוודא שסביבת הפיתוח והאפליקציה האינטרנטית עומדות בדרישות הבאות:
- (אופציונלי) Node.js
- דפדפן אינטרנט מודרני
(אופציונלי) כדאי לבדוק את האפליקציה לדוגמה.
אתם יכולים לנסות את ה-SDK במהירות, לראות הטמעה מלאה של תרחישים שונים לדוגמה או להשתמש באפליקציית הדוגמה אם אין לכם אפליקציית אינטרנט משלכם. כדי להשתמש באפליקציית הדוגמה, תצטרכו לקשר אותה לפרויקט Firebase.
Dart
במדריך הזה אנחנו יוצאים מנקודת הנחה שאתם מכירים את הפיתוח של אפליקציות באמצעות Flutter.
צריך לוודא שסביבת הפיתוח ואפליקציית Flutter עומדות בדרישות הבאות:
- Dart 3.2.0 ואילך
(אופציונלי) כדאי לבדוק את האפליקציה לדוגמה.
אתם יכולים לנסות את ה-SDK במהירות, לראות הטמעה מלאה של תרחישים שונים לדוגמה או להשתמש באפליקציית הדוגמה אם אין לכם אפליקציית Flutter משלכם. כדי להשתמש באפליקציית הדוגמה, תצטרכו לקשר אותה לפרויקט Firebase.
שלב 1: מגדירים פרויקט Firebase ומקשרים את האפליקציה ל-Firebase
אם כבר יש לכם פרויקט Firebase ואפליקציה שמחוברת ל-Firebase
במסוף Firebase, עוברים לדף Vertex AI.
לוחצים על הכרטיס Vertex AI in Firebase כדי להפעיל תהליך עבודה שיעזור לכם לבצע את המשימות הבאות:
משדרגים את הפרויקט לתוכנית התמחור Blaze 'תשלום לפי שימוש'.
מפעילים את ממשקי ה-API הנדרשים בפרויקט (Vertex AI API ו-Vertex AI in Firebase API).
עוברים לשלב הבא במדריך הזה כדי להוסיף את ה-SDK לאפליקציה.
אם עדיין אין לכם פרויקט Firebase ואפליקציה שמחוברת ל-Firebase
שלב 2: מוסיפים את ה-SDK
אחרי שמגדירים את פרויקט Firebase ומחברים את האפליקציה ל-Firebase (ראו שלב קודם), אפשר להוסיף את ה-SDK של Vertex AI in Firebase לאפליקציה.
Swift
שימוש ב-Swift Package Manager כדי להתקין ולנהל יחסי תלות ב-Firebase.
הספרייה Vertex AI in Firebase מספקת גישה לממשקי ה-API לצורך אינטראקציה עם המודלים Gemini ו-Imagen. הספרייה כלולה כחלק מ-Firebase SDK לפלטפורמות של Apple (firebase-ios-sdk
).
ב-Xcode, כשפרויקט האפליקציה פתוח, עוברים אל קובץ > הוספת חבילות.
כשמופיעה בקשה, מוסיפים את המאגר של Firebase SDK לפלטפורמות של Apple:
https://github.com/firebase/firebase-ios-sdk
בוחרים את גרסת ה-SDK העדכנית ביותר.
בוחרים את הספרייה
FirebaseVertexAI
.
בסיום, Xcode יתחיל לפתור את יחסי התלות ולהוריד אותם באופן אוטומטי ברקע.
Kotlin
Vertex AI in Firebase SDK ל-Android (firebase-vertexai
) מספק גישה לממשקי ה-API ליצירת אינטראקציה עם מודלים של Gemini ו-Imagen.
בקובץ Gradle של המודול (ברמת האפליקציה) (כמו <project>/<app-module>/build.gradle.kts
), מוסיפים את התלות בספרייה Vertex AI in Firebase ל-Android.
מומלץ להשתמש ב-Firebase Android BoM כדי לשלוט בגרסאות הספרייה.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.13.0")) // Add the dependency for the Vertex AI in Firebase library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai") }
כשמשתמשים ב-Firebase Android BoM, האפליקציה תמיד תשתמש בגרסאות תואמות של ספריות Firebase ל-Android.
Java
Vertex AI in Firebase SDK ל-Android (firebase-vertexai
) מספק גישה לממשקי ה-API ליצירת אינטראקציה עם מודלים של Gemini ו-Imagen.
בקובץ Gradle של המודול (ברמת האפליקציה) (כמו <project>/<app-module>/build.gradle.kts
), מוסיפים את התלות בספרייה Vertex AI in Firebase ל-Android.
מומלץ להשתמש ב-Firebase Android BoM כדי לשלוט בגרסאות הספרייה.
ב-Java, צריך להוסיף עוד שתי ספריות.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.13.0")) // Add the dependency for the Vertex AI in Firebase library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai") // 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
הספרייה Vertex AI in Firebase מספקת גישה לממשקי ה-API לצורך אינטראקציה עם המודלים Gemini ו-Imagen. הספרייה כלולה כחלק מ-Firebase JavaScript SDK לאינטרנט.
מתקינים את Firebase JS SDK לאינטרנט באמצעות npm:
npm install firebase
מאתחלים את 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
הפלאגין Vertex AI in Firebase ל-Flutter (firebase_vertexai
) מספק גישה לממשקי ה-API ליצירת אינטראקציה עם המודלים Gemini ו-Imagen.
כדי להתקין את הפלאגין של הליבה ואת הפלאגין Vertex AI in Firebase, מריצים את הפקודה הבאה מהספרייה של פרויקט Flutter:
flutter pub add firebase_core && flutter pub add firebase_vertexai
בקובץ
lib/main.dart
, מייבאים את הפלאגין של הליבה של Firebase, את הפלאגין Vertex AI in Firebase ואת קובץ התצורה שיצרתם מקודם:import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_vertexai/firebase_vertexai.dart'; import 'firebase_options.dart';
בקובץ
lib/main.dart
, מאתחלים את Firebase באמצעות האובייקטDefaultFirebaseOptions
שיוצאו מקובץ התצורה:await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, );
יוצרים מחדש את אפליקציית Flutter:
flutter run
שלב 3: מאתחלים את השירות Vertex AI ויוצרים מכונה של GenerativeModel
כדי שתוכלו לבצע קריאות ל-API ולשלוח הנחיה למודל Gemini, עליכם לאתחל את השירות Vertex AI וליצור מכונה של GenerativeModel
.
Swift
import FirebaseVertexAI
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-flash")
Kotlin
ב-Kotlin, השיטות ב-SDK הזה הן פונקציות השהיה (suspend) וצריך לקרוא להן מהיקף של פונקציית אירוע (coroutine).// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")
Java
ב-Java, שיטות הסטרימינג ב-SDK הזה מחזירות את הטיפוסPublisher
מספריית Reactive Streams.
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-2.0-flash");
// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
Web
import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";
// 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 Vertex AI service
const vertexAI = getVertexAI(firebaseApp);
// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(vertexAI, { model: "gemini-2.0-flash" });
Dart
import 'package:firebase_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';
// Initialize FirebaseApp
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');
אחרי שסיימתם לקרוא את המדריך למתחילים, תוכלו לקרוא איך בוחרים מודל ו (אופציונלי) מיקום שמתאימים לתרחיש לדוגמה ולאפליקציה שלכם.
שלב 4: שולחים בקשה להנחיה למודל
אחרי שמחברים את האפליקציה ל-Firebase, מוסיפים את ה-SDK ומפעילים את השירות Vertex AI ואת המודל הגנרטיבי, אפשר לשלוח בקשה להצגת הנחיה למודל Gemini.
אפשר להשתמש ב-generateContent()
כדי ליצור טקסט מבקשת הנחיה בטקסט בלבד:
Swift
import FirebaseVertexAI
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-flash")
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
let response = try await model.generateContent(prompt)
print(response.text ?? "No text in response.")
Kotlin
ב-Kotlin, השיטות ב-SDK הזה הן פונקציות השהיה (suspend) וצריך לקרוא להן מהיקף של פונקציית אירוע (coroutine).// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")
// Provide a prompt that contains text
val prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
val response = generativeModel.generateContent(prompt)
print(response.text)
Java
ב-Java, השיטות ב-SDK הזה מחזירותListenableFuture
.
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-2.0-flash");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
// Provide a prompt that contains text
Content prompt = new Content.Builder()
.addText("Write a story about a magic backpack.")
.build();
// To generate text output, call generateContent with the text input
ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
@Override
public void onSuccess(GenerateContentResponse result) {
String resultText = result.getText();
System.out.println(resultText);
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
}, executor);
Web
import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";
// 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 Vertex AI service
const vertexAI = getVertexAI(firebaseApp);
// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(vertexAI, { model: "gemini-2.0-flash" });
// Wrap in an async function so you can use await
async function run() {
// Provide a prompt that contains text
const prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
const result = await model.generateContent(prompt);
const response = result.response;
const text = response.text();
console.log(text);
}
run();
Dart
import 'package:firebase_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');
// Provide a prompt that contains text
final prompt = [Content.text('Write a story about a magic backpack.')];
// To generate text output, call generateContent with the text input
final response = await model.generateContent(prompt);
print(response.text);
מה עוד אפשר לעשות?
מידע נוסף על המודלים הנתמכים
כאן תוכלו לקרוא מידע נוסף על המודלים הזמינים לתרחישי שימוש שונים, על המכסות ועל התמחור שלהם.
לנסות יכולות אחרות
- מידע נוסף על יצירת טקסט מאותות 'טקסט בלבד', כולל הסבר על סטרימינג של התשובה
- יצירת טקסט באמצעות הצגת הנחיות לגבי סוגי קבצים שונים, כמו תמונות, קבצי PDF, סרטונים ואודיו.
- ליצור שיחות עם זיכרון (צ'אט).
- יצירת פלט מובנה (כמו JSON) גם מהנחיות טקסט וגם מהנחיות מולטימודליות.
- יצירת תמונות מהנחיות טקסט.
- קלט ופלט של סטרימינג (כולל אודיו) באמצעות Gemini Live API.
- משתמשים בקריאה לפונקציה כדי לחבר מודלים גנרטיביים למערכות ולמידע חיצוניים.
איך שולטים ביצירת תוכן
- הסבר על תכנון הנחיות, כולל שיטות מומלצות, אסטרטגיות והנחיות לדוגמה.
- להגדיר את הפרמטרים של המודל, כמו טמפרטורה ואסימונים מקסימליים של פלט (עבור Gemini) או יחס גובה-רוחב ויצירת אנשים (עבור Imagen).
- שימוש בהגדרות הבטיחות כדי לשנות את הסבירות לקבלת תשובות שעשויות להיחשב כמזיקות.
שליחת משוב על חוויית השימוש ב-Vertex AI in Firebase