شروع به کار با Gemini API با استفاده از Vertex AI در SDKs Firebase، شروع با Gemini API با استفاده از Vertex AI در SDKs Firebase

این راهنما به شما نشان می‌دهد که چگونه می‌توانید با استفاده از Vertex AI در Firebase SDK برای پلتفرم انتخابی خود، مستقیماً از برنامه خود با Gemini API در Vertex AI تماس بگیرید.

توجه داشته باشید که می‌توانید از این راهنما برای شروع دسترسی به مدل‌های Imagen با استفاده از Vertex AI در Firebase SDK نیز استفاده کنید.

پیش نیازها

سویفت

این راهنما فرض می‌کند که شما با استفاده از Xcode برای توسعه برنامه‌ها برای پلتفرم‌های اپل (مانند iOS) آشنا هستید.

  • اطمینان حاصل کنید که محیط توسعه شما و برنامه پلتفرم های اپل این شرایط را برآورده می کنند:

    • Xcode 16.2 یا بالاتر
    • برنامه شما iOS 15 یا بالاتر یا macOS 12 یا بالاتر را هدف قرار می دهد
  • (اختیاری) برنامه نمونه را بررسی کنید.

    برنامه شروع سریع را دانلود کنید

    می‌توانید SDK را به سرعت امتحان کنید، اجرای کامل موارد استفاده مختلف را مشاهده کنید، یا اگر برنامه پلتفرم‌های اپل خود را ندارید از برنامه نمونه استفاده کنید. برای استفاده از برنامه نمونه، باید آن را به پروژه Firebase متصل کنید .

Kotlin

این راهنما فرض می‌کند که با استفاده از Android Studio برای توسعه برنامه‌ها برای Android آشنا هستید.

  • اطمینان حاصل کنید که محیط توسعه و برنامه Android شما این شرایط را برآورده می کند:

    • اندروید استودیو (آخرین نسخه)
    • برنامه شما سطح API 21 یا بالاتر را هدف قرار می دهد
  • (اختیاری) برنامه نمونه را بررسی کنید.

    نمونه برنامه را دانلود کنید

    می‌توانید SDK را به سرعت امتحان کنید، اجرای کامل موارد استفاده مختلف را مشاهده کنید، یا اگر برنامه اندرویدی خود را ندارید از برنامه نمونه استفاده کنید. برای استفاده از برنامه نمونه، باید آن را به پروژه Firebase متصل کنید .

Java

این راهنما فرض می‌کند که با استفاده از Android Studio برای توسعه برنامه‌ها برای Android آشنا هستید.

  • اطمینان حاصل کنید که محیط توسعه و برنامه Android شما این شرایط را برآورده می کند:

    • اندروید استودیو (آخرین نسخه)
    • برنامه شما سطح API 21 یا بالاتر را هدف قرار می دهد
  • (اختیاری) برنامه نمونه را بررسی کنید.

    نمونه برنامه را دانلود کنید

    می‌توانید SDK را به سرعت امتحان کنید، اجرای کامل موارد استفاده مختلف را مشاهده کنید، یا اگر برنامه اندرویدی خود را ندارید از برنامه نمونه استفاده کنید. برای استفاده از برنامه نمونه، باید آن را به پروژه Firebase متصل کنید .

Web

این راهنما فرض می کند که شما با استفاده از جاوا اسکریپت برای توسعه برنامه های وب آشنا هستید. این راهنما مستقل از چارچوب است.

  • اطمینان حاصل کنید که محیط توسعه و برنامه وب شما این شرایط را برآورده می کند:

    • (اختیاری) Node.js
    • مرورگر وب مدرن
  • (اختیاری) برنامه نمونه را بررسی کنید.

    نمونه برنامه را دانلود کنید

    می توانید SDK را به سرعت امتحان کنید، اجرای کامل موارد استفاده مختلف را مشاهده کنید، یا اگر برنامه وب خود را ندارید از نمونه برنامه استفاده کنید. برای استفاده از برنامه نمونه، باید آن را به پروژه Firebase متصل کنید .

Dart

این راهنما فرض می کند که شما با توسعه برنامه ها با Flutter آشنا هستید.

  • اطمینان حاصل کنید که محیط توسعه و برنامه Flutter شما این شرایط را برآورده می کند:

    • دارت 3.2.0+
  • (اختیاری) برنامه نمونه را بررسی کنید.

    نمونه برنامه را دانلود کنید

    می‌توانید SDK را به سرعت امتحان کنید، اجرای کامل موارد استفاده مختلف را مشاهده کنید، یا اگر برنامه Flutter خود را ندارید از برنامه نمونه استفاده کنید. برای استفاده از برنامه نمونه، باید آن را به پروژه Firebase متصل کنید .

مرحله 1 : یک پروژه Firebase راه اندازی کنید و برنامه خود را به Firebase متصل کنید

اگر قبلاً یک پروژه Firebase و یک برنامه متصل به Firebase دارید

  1. در کنسول Firebase ، به صفحه Vertex AI بروید.

  2. روی Vertex AI در کارت Firebase کلیک کنید تا یک گردش کاری راه اندازی شود که به شما کمک می کند کارهای زیر را انجام دهید:

  3. برای افزودن SDK به برنامه خود، مرحله بعدی این راهنما را ادامه دهید.

اگر قبلاً یک پروژه Firebase و یک برنامه متصل به Firebase ندارید


مرحله 2 : SDK را اضافه کنید

با راه اندازی پروژه Firebase و اتصال برنامه به Firebase (مرحله قبل را ببینید)، اکنون می توانید Vertex AI در Firebase SDK را به برنامه خود اضافه کنید.

سویفت

برای نصب و مدیریت وابستگی های Firebase از Swift Package Manager استفاده کنید.

Vertex AI در کتابخانه Firebase دسترسی به API ها را برای تعامل با مدل های Gemini و Imagen فراهم می کند. این کتابخانه به عنوان بخشی از Firebase SDK برای پلتفرم های اپل ( firebase-ios-sdk ) گنجانده شده است.

  1. در Xcode، با باز بودن پروژه برنامه، به File > Add Packages بروید.

  2. هنگامی که از شما خواسته شد، مخزن SDK پلتفرم های Apple Firebase را اضافه کنید:

    https://github.com/firebase/firebase-ios-sdk
    
  3. آخرین نسخه SDK را انتخاب کنید.

  4. کتابخانه FirebaseVertexAI را انتخاب کنید.

پس از اتمام، Xcode به طور خودکار شروع به حل و دانلود وابستگی های شما در پس زمینه می کند.

Kotlin

Vertex AI در Firebase SDK برای Android ( firebase-vertexai ) دسترسی به APIها را برای تعامل با مدل‌های Gemini و Imagen فراهم می‌کند.

در فایل Gradle ماژول (سطح برنامه) خود (مانند <project>/<app-module>/build.gradle.kts )، وابستگی Vertex AI را در کتابخانه 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 در Firebase SDK برای Android ( firebase-vertexai ) دسترسی به APIها را برای تعامل با مدل‌های Gemini و Imagen فراهم می‌کند.

در فایل Gradle ماژول (سطح برنامه) خود (مانند <project>/<app-module>/build.gradle.kts )، وابستگی Vertex AI را در کتابخانه 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")

  // 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 در کتابخانه Firebase دسترسی به API ها را برای تعامل با مدل های Gemini و Imagen فراهم می کند. این کتابخانه به عنوان بخشی از Firebase JavaScript SDK برای وب گنجانده شده است.

  1. Firebase JS SDK برای وب را با استفاده از npm نصب کنید:

    npm install firebase
    
  2. 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 در Firebase برای Flutter ( firebase_vertexai ) دسترسی به APIها را برای تعامل با مدل‌های Gemini و Imagen فراهم می‌کند.

  1. از دایرکتوری پروژه Flutter خود، دستور زیر را برای نصب افزونه هسته و پلاگین Vertex AI در Firebase اجرا کنید:

    flutter pub add firebase_core && flutter pub add firebase_vertexai
    
  2. در فایل lib/main.dart خود، افزونه هسته Firebase، پلاگین Vertex AI در Firebase و فایل پیکربندی که قبلاً ایجاد کرده‌اید را وارد کنید:

    import 'package:firebase_core/firebase_core.dart';
    import 'package:firebase_vertexai/firebase_vertexai.dart';
    import 'firebase_options.dart';
    
  3. همچنین در فایل lib/main.dart خود، Firebase را با استفاده از شی DefaultFirebaseOptions صادر شده توسط فایل پیکربندی مقداردهی اولیه کنید:

    await Firebase.initializeApp(
      options: DefaultFirebaseOptions.currentPlatform,
    );
    
  4. برنامه Flutter خود را بازسازی کنید:

    flutter run
    

مرحله 3 : سرویس Vertex AI را راه اندازی کنید و یک نمونه GenerativeModel ایجاد کنید

قبل از اینکه بتوانید هر گونه تماس API را انجام دهید و درخواستی را به یک مدل Gemini ارسال کنید، باید سرویس Vertex AI را مقداردهی اولیه کنید و یک نمونه GenerativeModel ایجاد کنید.

سویفت

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 توابع تعلیق هستند و باید از یک محدوده 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

برای جاوا، روش‌های پخش در این 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() برای تولید متن از یک درخواست اعلان متنی استفاده کنید:

سویفت

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 توابع تعلیق هستند و باید از یک محدوده 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

برای جاوا، روش‌های موجود در این 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);

چه کار دیگری می توانید انجام دهید؟

درباره مدل های پشتیبانی شده بیشتر بدانید

در مورد مدل های موجود برای موارد استفاده مختلف و سهمیه ها و قیمت آنها اطلاعات کسب کنید.

قابلیت های دیگر را امتحان کنید

یاد بگیرید چگونه تولید محتوا را کنترل کنید

همچنین می‌توانید با استفاده از Vertex AI Studio ، دستورات و پیکربندی‌های مدل را آزمایش کنید.


درباره تجربه خود با Vertex AI در Firebase بازخورد بدهید