از نسخه GA Vertex AI در SDKهای Firebase Logic  SDKهای Firebase


Firebase AI Logic و SDK های کلاینت آن قبلاً " Vertex AI in Firebase " نامیده می‌شدند. برای انعکاس بهتر خدمات و ویژگی‌های توسعه‌یافته ما (به عنوان مثال، اکنون از Gemini Developer API پشتیبانی می‌کنیم!)، نام خدمات خود را به Firebase AI Logic تغییر دادیم و بسته‌بندی مجدد کردیم .

برای دسترسی ایمن به مدل‌های هوش مصنوعی مولد گوگل مستقیماً از طریق برنامه‌های تلفن همراه یا وب خود، اکنون می‌توانید یک ارائه‌دهنده « Gemini API » را انتخاب کنید - یا Vertex AI Gemini API که از مدت‌ها پیش در دسترس بوده یا اکنون Gemini Developer API . این بدان معناست که اکنون می‌توانید از Gemini Developer API استفاده کنید که یک سطح رایگان با محدودیت‌ها و سهمیه‌های معقول ارائه می‌دهد.

مروری بر مراحل مهاجرت به SDK های Firebase AI Logic

  • مرحله ۱ : بهترین ارائه‌دهنده « Gemini API » را برای برنامه و موارد استفاده خود انتخاب کنید.

  • مرحله ۲ : پروژه Firebase خود را طوری تنظیم کنید که بتوانید از API توسعه‌دهنده Gemini استفاده کنید.
    فقط در صورتی قابل اجرا است که به جای استفاده از Vertex AI Gemini API، از Gemini Developer API استفاده کنید.

  • مرحله ۳ : کتابخانه مورد استفاده در برنامه خود را به‌روزرسانی کنید.

  • مرحله ۴ : مقداردهی اولیه را در برنامه خود به‌روزرسانی کنید.

  • مرحله ۵ : کد خود را بسته به ویژگی‌هایی که استفاده می‌کنید، به‌روزرسانی کنید.

مرحله ۱ : بهترین ارائه‌دهنده «Gemini API» را برای برنامه خود انتخاب کنید

با این مهاجرت، شما می‌توانید ارائه‌دهنده‌ی « Gemini API » را انتخاب کنید:

  • SDK های قدیمی « Vertex AI in Firebase » فقط می‌توانستند از API مربوط به Vertex AI Gemini استفاده کنند.

  • کیت‌های توسعه نرم‌افزار (SDK) جدید Firebase AI Logic به شما امکان می‌دهند انتخاب کنید که می‌خواهید کدام ارائه‌دهنده « Gemini API » را مستقیماً از برنامه تلفن همراه یا وب خود فراخوانی کنید - یا Gemini Developer API یا Vertex AI Gemini API .

تفاوت‌های بین استفاده از دو ارائه‌دهنده‌ی API مربوط به Gemini را بررسی کنید، به خصوص از نظر ویژگی‌های پشتیبانی‌شده، قیمت‌گذاری و محدودیت‌های نرخ. فقط برای یک مثال، API توسعه‌دهندگان Gemini از ارائه فایل‌ها با استفاده از URLهای Cloud Storage پشتیبانی نمی‌کند، اما اگر می‌خواهید از ردیف رایگان و سهمیه‌ی معقول آن بهره‌مند شوید، می‌تواند انتخاب خوبی باشد.

مرحله ۲ : پروژه Firebase خود را طوری تنظیم کنید که بتوانید از API توسعه‌دهنده Gemini استفاده کنید

این مرحله فقط در صورتی لازم است که بخواهید از API توسعه‌دهنده Gemini با SDKهای کلاینت Firebase AI Logic استفاده کنید. با این حال، اگر می‌خواهید به استفاده از API Vertex AI Gemini ادامه دهید، به مرحله بعدی بروید.

توجه داشته باشید که اشکالی ندارد که هر دو ارائه‌دهنده‌ی «Gemini API» را همزمان در پروژه‌ی خود فعال داشته باشید.

  1. در کنسول Firebase ، به صفحه منطق هوش مصنوعی فایربیس بروید.

  2. به برگه تنظیمات بروید و Gemini Developer API را انتخاب کنید.

  3. API توسعه‌دهنده Gemini را فعال کنید.

    کنسول مطمئن می‌شود که APIهای مورد نیاز فعال هستند و یک کلید API Gemini در پروژه Firebase شما ایجاد می‌کند.
    این کلید API مربوط به Gemini را به کدبیس برنامه خود اضافه نکنید . اطلاعات بیشتر.

  4. برای به‌روزرسانی کتابخانه و مقداردهی اولیه در برنامه خود، در این راهنمای مهاجرت ادامه دهید.

مرحله ۳ : به‌روزرسانی کتابخانه مورد استفاده در برنامه

کدبیس برنامه خود را برای استفاده از کتابخانه Firebase AI Logic به‌روزرسانی کنید.

سویفت

  1. در Xcode، در حالی که پروژه برنامه شما باز است، بسته Firebase خود را با استفاده از یکی از گزینه‌های زیر به نسخه ۱۱.۱۳.۰ یا بالاتر به‌روزرسانی کنید:

    • گزینه ۱ : به‌روزرسانی همه بسته‌ها: به مسیر File > Packages > Update to Latest Package Versions بروید.

    • گزینه ۲ : به‌روزرسانی جداگانه فایربیس: در بخشی به نام Package Dependencies به پکیج فایربیس بروید. روی پکیج فایربیس کلیک راست کنید و سپس Update Package را انتخاب کنید.

  2. مطمئن شوید که بسته Firebase اکنون نسخه 11.13.0 یا بالاتر را نشان می‌دهد. اگر اینطور نیست، بررسی کنید که الزامات بسته‌بندی مشخص‌شده شما امکان به‌روزرسانی به نسخه 11.13.0 یا بالاتر را فراهم می‌کند.

  3. هدف برنامه خود را در ویرایشگر پروژه انتخاب کنید و سپس به بخش چارچوب‌ها، کتابخانه‌ها و محتوای جاسازی‌شده بروید.

  4. کتابخانه جدید را اضافه کنید: دکمه + را انتخاب کنید و سپس FirebaseAI را از بسته Firebase اضافه کنید.

  5. پس از اتمام انتقال برنامه خود (به بخش‌های باقیمانده در این راهنما مراجعه کنید)، حتماً کتابخانه قدیمی را حذف کنید:
    FirebaseVertexAI را انتخاب کنید و سپس دکمه‌ی را فشار دهید.

Kotlin

  1. در فایل Gradle ماژول (سطح برنامه) خود (معمولاً <project>/<app-module>/build.gradle.kts یا <project>/<app-module>/build.gradle )، وابستگی‌های قدیمی را (در صورت وجود) با موارد زیر جایگزین کنید.

    توجه داشته باشید که ممکن است مهاجرت کدبیس برنامه (به بخش‌های باقیمانده این راهنما مراجعه کنید) قبل از حذف وابستگی قدیمی، آسان‌تر باشد.

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("com.google.firebase:firebase-vertexai:16.x.y")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:34.5.0"))
    
      // Add the dependency for the Firebase AI Logic library
      // When using the BoM, you don't specify versions in Firebase library dependencies
      implementation("com.google.firebase:firebase-ai")
    }
  2. پروژه اندروید خود را با فایل‌های Gradle همگام‌سازی کنید.

توجه داشته باشید که اگر تصمیم دارید از Firebase Android BoM استفاده نکنید، کافیست وابستگی مربوط به کتابخانه firebase-ai را اضافه کنید و آخرین نسخه پیشنهادی اندروید استودیو را بپذیرید.

Java

  1. در فایل Gradle ماژول (سطح برنامه) خود (معمولاً <project>/<app-module>/build.gradle.kts یا <project>/<app-module>/build.gradle )، وابستگی‌های قدیمی را (در صورت وجود) با موارد زیر جایگزین کنید.

    توجه داشته باشید که ممکن است مهاجرت کدبیس برنامه (به بخش‌های باقیمانده این راهنما مراجعه کنید) قبل از حذف وابستگی قدیمی، آسان‌تر باشد.

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("com.google.firebase:firebase-vertexai:16.x.y")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:34.5.0"))
    
      // Add the dependency for the Firebase AI Logic library
      // When using the BoM, you don't specify versions in Firebase library dependencies
      implementation("com.google.firebase:firebase-ai")
    }
  2. پروژه اندروید خود را با فایل‌های Gradle همگام‌سازی کنید.

توجه داشته باشید که اگر تصمیم دارید از Firebase Android BoM استفاده نکنید، کافیست وابستگی مربوط به کتابخانه firebase-ai را اضافه کنید و آخرین نسخه پیشنهادی اندروید استودیو را بپذیرید.

Web

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

    npm i firebase@latest

    یا

    yarn add firebase@latest
  2. هر جا که کتابخانه را وارد کرده‌اید، دستورات import خود را به‌روزرسانی کنید تا به جای آن firebase/ai استفاده شود.

    توجه داشته باشید که ممکن است مهاجرت کدبیس برنامه (به بخش‌های باقیمانده این راهنما مراجعه کنید) قبل از حذف ایمپورت‌های قدیمی، آسان‌تر باشد.

    // BEFORE
    import { initializeApp } from "firebase/app";
    import { getVertexAI, getGenerativeModel } from "firebase/vertexai";
    
    
    // AFTER
    import { initializeApp } from "firebase/app";
    import { getAI, getGenerativeModel } from "firebase/ai";

Dart

  1. با اجرای دستور زیر از دایرکتوری پروژه Flutter خود، به استفاده از بسته firebase_ai در فایل pubspec.yaml خود به‌روزرسانی کنید:

    flutter pub add firebase_ai
  2. پروژه فلاتر خود را بازسازی کنید:

    flutter run
  3. پس از اتمام انتقال برنامه خود (به بخش‌های باقیمانده در این راهنما مراجعه کنید)، حتماً بسته قدیمی را حذف کنید:

    flutter pub remove firebase_vertexai

وحدت

پشتیبانی از Unity از « Vertex AI در Firebase » در دسترس نبود.

یاد بگیرید که چگونه با Firebase AI Logic SDK برای Unity شروع به کار کنید .

مرحله ۴ : مقداردهی اولیه را در برنامه خود به‌روزرسانی کنید

برای مشاهده محتوا و کد مخصوص ارائه‌دهنده در این صفحه، روی ارائه‌دهنده API Gemini خود کلیک کنید.

نحوه‌ی مقداردهی اولیه‌ی سرویس برای ارائه‌دهنده‌ی API انتخابی خود را به‌روزرسانی کنید و یک نمونه‌ی GenerativeModel ایجاد کنید.

سویفت


import FirebaseAILogic

// Initialize the Vertex AI Gemini API backend service
let ai = FirebaseAI.firebaseAI(backend: .vertexAI())

// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-2.5-flash")

Kotlin


// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.vertexAI())
                        .generativeModel("gemini-2.5-flash")

Java


// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.vertexAI())
        .generativeModel("gemini-2.5-flash");

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

Web


import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, VertexAIBackend } from "firebase/ai";

// 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 Gemini API backend service
const ai = getAI(firebaseApp, { backend: new VertexAIBackend() });

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-2.5-flash" });

Dart


import 'package:firebase_ai/firebase_ai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

// Initialize FirebaseApp
await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);

// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
      FirebaseAI.vertexAI().generativeModel(model: 'gemini-2.5-flash');

وحدت

پشتیبانی از Unity از « Vertex AI در Firebase » در دسترس نبود.

یاد بگیرید که چگونه با Firebase AI Logic SDK برای Unity شروع به کار کنید .

توجه داشته باشید که بسته به قابلیتی که استفاده می‌کنید، ممکن است همیشه یک نمونه GenerativeModel ایجاد نکنید .

مرحله ۵ : کد خود را بسته به ویژگی‌هایی که استفاده می‌کنید، به‌روزرسانی کنید

این مرحله تغییراتی را شرح می‌دهد که ممکن است بسته به ویژگی‌هایی که استفاده می‌کنید، مورد نیاز باشند.

  • اگر از آدرس‌های اینترنتی Cloud Storage URLs) استفاده می‌کنید و در این انتقال ، API توسعه‌دهندگان Gemini را جایگزین کرده‌اید، باید درخواست‌های چندوجهی خود را به‌روزرسانی کنید تا فایل‌ها به عنوان داده‌های درون‌خطی (inline data) لحاظ شوند (یا از آدرس‌های اینترنتی یوتیوب برای ویدیوها استفاده کنید).

  • لیست‌های زیر را برای هرگونه تغییری که ممکن است برای تطبیق با Firebase AI Logic SDK نیاز داشته باشید، مرور کنید.

سویفت

بدون هیچ تغییر اضافی.

Kotlin

  • Live API

    • مقدار UNSPECIFIED برای کلاس شمارشی ResponseModality حذف شد. به جای آن از null استفاده کنید.

Java

  • Live API

    • مقدار UNSPECIFIED برای کلاس شمارشی ResponseModality حذف شد. به جای آن از null استفاده کنید.
  • متدهای مختلف سازنده جاوا تغییر یافته‌اند تا اکنون به جای void، نمونه کلاس خود را به درستی برگردانند.

Web

تغییرات فقط در صورتی لازم است که شروع به استفاده از Gemini Developer API (به جای Vertex AI Gemini API ) کنید:

  • تنظیمات ایمنی

    • کاربردهای پشتیبانی نشده‌ی SafetySetting.method حذف شد.
  • داده‌های درون‌خطی

    • کاربردهای پشتیبانی نشده‌ی InlineDataPart.videoMetadata حذف شد.

Dart

بدون هیچ تغییر اضافی.

وحدت

پشتیبانی از Unity از « Vertex AI در Firebase » در دسترس نبود.

یاد بگیرید که چگونه با Firebase AI Logic SDK برای Unity شروع به کار کنید .


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