از نسخه GA Vertex AI در SDKهای Firebase به AI Logic SDKهای Firebase مهاجرت کنید. Vertex AI در SDKهای Firebase


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

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

مروری بر مراحل انتقال به کیت توسعه نرم افزاری Firebase AI Logic

  • مرحله 1 : بهترین ارائه دهنده " Gemini API " را برای برنامه و موارد استفاده خود انتخاب کنید.

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

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

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

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

مرحله 1 : بهترین ارائه دهنده "Gemini API" را برای برنامه خود انتخاب کنید

با این انتقال، در ارائه‌دهنده « Gemini API » یک انتخاب دارید:

  • SDKهای قدیمی " Vertex AI in Firebase " فقط می توانستند از Vertex AI Gemini API استفاده کنند.

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

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

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

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

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

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

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

  3. Gemini Developer API را فعال کنید.

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

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

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

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

سویفت

  1. در Xcode، با باز بودن پروژه برنامه، بسته Firebase خود را با استفاده از یکی از گزینه های زیر به نسخه 11.13.0 یا جدیدتر به روز کنید:

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

    • گزینه 2 : به‌روزرسانی Firebase به صورت جداگانه: به بسته Firebase در قسمتی به نام Package Dependencies بروید. روی بسته Firebase کلیک راست کنید و سپس Update Package را انتخاب کنید.

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

  3. هدف برنامه خود را در ویرایشگر پروژه انتخاب کنید و سپس به بخش Frameworks، Libraries و Embedded Content بروید.

  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:33.14.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 اضافه کنید و آخرین نسخه پیشنهادی Android Studio را بپذیرید.

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:33.14.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 اضافه کنید و آخرین نسخه پیشنهادی Android Studio را بپذیرید.

Web

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

    npm i firebase@latest

    یا

    yarn add firebase@latest
  2. هر جا که کتابخانه را وارد کرده اید، بیانیه های واردات خود را به روز کنید تا به جای آن از 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 خود را بازسازی کنید:

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

    flutter pub remove firebase_vertexai

وحدت

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

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

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

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

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

سویفت


import FirebaseAI

// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())

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

Kotlin


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

Java


// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
        .generativeModel("gemini-2.0-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, GoogleAIBackend } 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 Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-2.0-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 Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
      FirebaseAI.googleAI().generativeModel(model: 'gemini-2.0-flash');

وحدت

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

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

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

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

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

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

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

سویفت

بدون تغییر اضافی

Kotlin

  • Live API

    • مقدار UNSPECIFIED برای کلاس enum ResponseModality حذف شد. در عوض از null استفاده کنید.

Java

  • Live API

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

Web

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

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

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

    • موارد استفاده از InlineDataPart.videoMetadata پشتیبانی نشده حذف شد.

Dart

بدون تغییر اضافی

وحدت

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

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


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