איך מתחילים להשתמש ב-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