איך מתחילים להשתמש ב-Gemini {7/}API באמצעות Vertex AI בערכות SDK של Firebase


במדריך הזה מוסבר איך להתחיל לבצע קריאות ל-Vertex AI Gemini API ישירות מהאפליקציה באמצעות ה-SDK של Vertex AI in Firebase לפלטפורמה שבחרתם.

דרישות מוקדמות

במדריך הזה אנחנו יוצאים מנקודת הנחה שאתם מכירים את השימוש ב-Android Studio לפיתוח אפליקציות ל-Android.

  • חשוב לוודא שסביבת הפיתוח והאפליקציה ל-Android עומדות בדרישות הבאות:

    • Android Studio (הגרסה האחרונה)
    • האפליקציה ל-Android חייבת לטרגט ל-API ברמה 21 ומעלה.
  • (אופציונלי) כדאי לבדוק את האפליקציה לדוגמה.

    הורדת האפליקציה לדוגמה

    אתם יכולים לנסות את ה-SDK במהירות, לראות הטמעה מלאה של תרחישים שונים לדוגמה או להשתמש באפליקציית הדוגמה אם אין לכם אפליקציה משלכם ל-Android. כדי להשתמש באפליקציית הדוגמה, תצטרכו לקשר אותה לפרויקט Firebase.

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

אם כבר יש לכם פרויקט Firebase ואפליקציה שמחוברת ל-Firebase

  1. במסוף Firebase, עוברים לדף Build with Gemini.

  2. לוחצים על הכרטיס Vertex AI in Firebase כדי להפעיל תהליך עבודה שיעזור לכם לבצע את המשימות הבאות:

  3. עוברים לשלב הבא במדריך כדי להוסיף את ה-SDK לאפליקציה.

אם עדיין אין לכם פרויקט Firebase ואפליקציה שמחוברת ל-Firebase


שלב 2: מוסיפים את ה-SDK

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

Vertex AI in Firebase SDK ל-Android‏ (firebase-vertexai) מספק גישה ל-Vertex AI Gemini API.

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

Kotlin+KTX

dependencies {
    // ... other androidx dependencies

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

Java

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

dependencies {
    // ... other androidx dependencies

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

שלב 3: מאתחלים את השירות Vertex AI ואת המודל הגנרטיבי

לפני שתוכלו לבצע קריאות API, תצטרכו לאתחל את השירות Vertex AI ואת המודל הגנרטיבי.

Kotlin+KTX

ב-Kotlin, השיטות ב-SDK הזה הן פונקציות השהיה (suspend), וצריך לקרוא להן מהיקף של פונקציית אירוע (coroutine).
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-flash")

Java

ב-Java, שיטות הסטרימינג ב-SDK הזה מחזירות את הטיפוס Publisher מספריית Reactive Streams.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-1.5-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

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

שלב 4: קוראים ל-Vertex AI Gemini API

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

אפשר להשתמש ב-generateContent() כדי ליצור טקסט מבקשת הנחיה בטקסט בלבד:

Kotlin+KTX

ב-Kotlin, השיטות ב-SDK הזה הן פונקציות השהיה (suspend), וצריך לקרוא להן מהיקף של פונקציית אירוע (coroutine).
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-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 the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-1.5-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);

מה עוד אפשר לעשות?

מידע נוסף על המודלים של Gemini

כאן תוכלו לקרוא מידע נוסף על המודלים הזמינים לתרחישי שימוש שונים, ועל המכסות והתמחור שלהם.

ניסיון ביכולות אחרות של Gemini API

איך שולטים ביצירת תוכן

אפשר גם להתנסות בהנחיות ובהגדרות של מודלים באמצעות הפקודה Vertex AI Studio.


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