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 پشتیبانی نمیکند، اما اگر میخواهید از ردیف رایگان و سهمیهی معقول آن بهرهمند شوید، میتواند انتخاب خوبی باشد.
اگر میخواهید به استفاده از API مربوط به Vertex AI Gemini ادامه دهید :
مرحله بعدی را نادیده بگیرید و مستقیماً به سراغ بهروزرسانی کتابخانه در برنامه خود بروید و سپس به بقیه این راهنما بپردازید.اگر میخواهید به API توسعهدهندگان Gemini بروید :
برای تنظیم پروژه Firebase خود جهت استفاده از آن API ، به مرحله بعدی بروید و سپس بقیه این راهنما را مطالعه کنید.
مرحله ۲ : پروژه Firebase خود را طوری تنظیم کنید که بتوانید از API توسعهدهنده Gemini استفاده کنید
این مرحله فقط در صورتی لازم است که بخواهید از API توسعهدهنده Gemini با SDKهای کلاینت Firebase AI Logic استفاده کنید. با این حال، اگر میخواهید به استفاده از API Vertex AI Gemini ادامه دهید، به مرحله بعدی بروید.
توجه داشته باشید که اشکالی ندارد که هر دو ارائهدهندهی «Gemini API» را همزمان در پروژهی خود فعال داشته باشید.
در کنسول Firebase ، به صفحه منطق هوش مصنوعی فایربیس بروید.
به برگه تنظیمات بروید و Gemini Developer API را انتخاب کنید.
API توسعهدهنده Gemini را فعال کنید.
کنسول مطمئن میشود که APIهای مورد نیاز فعال هستند و یک کلید API Gemini در پروژه Firebase شما ایجاد میکند.
این کلید API مربوط به Gemini را به کدبیس برنامه خود اضافه نکنید . اطلاعات بیشتر.برای بهروزرسانی کتابخانه و مقداردهی اولیه در برنامه خود، در این راهنمای مهاجرت ادامه دهید.
مرحله ۳ : بهروزرسانی کتابخانه مورد استفاده در برنامه
کدبیس برنامه خود را برای استفاده از کتابخانه Firebase AI Logic بهروزرسانی کنید.
سویفت
در Xcode، در حالی که پروژه برنامه شما باز است، بسته Firebase خود را با استفاده از یکی از گزینههای زیر به نسخه ۱۱.۱۳.۰ یا بالاتر بهروزرسانی کنید:
گزینه ۱ : بهروزرسانی همه بستهها: به مسیر File > Packages > Update to Latest Package Versions بروید.
گزینه ۲ : بهروزرسانی جداگانه فایربیس: در بخشی به نام Package Dependencies به پکیج فایربیس بروید. روی پکیج فایربیس کلیک راست کنید و سپس Update Package را انتخاب کنید.
مطمئن شوید که بسته Firebase اکنون نسخه 11.13.0 یا بالاتر را نشان میدهد. اگر اینطور نیست، بررسی کنید که الزامات بستهبندی مشخصشده شما امکان بهروزرسانی به نسخه 11.13.0 یا بالاتر را فراهم میکند.
هدف برنامه خود را در ویرایشگر پروژه انتخاب کنید و سپس به بخش چارچوبها، کتابخانهها و محتوای جاسازیشده بروید.
کتابخانه جدید را اضافه کنید: دکمه + را انتخاب کنید و سپس FirebaseAI را از بسته Firebase اضافه کنید.
پس از اتمام انتقال برنامه خود (به بخشهای باقیمانده در این راهنما مراجعه کنید)، حتماً کتابخانه قدیمی را حذف کنید:
FirebaseVertexAI را انتخاب کنید و سپس دکمهی — را فشار دهید.
Kotlin
در فایل 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 BoMimplementation("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") }پروژه اندروید خود را با فایلهای Gradle همگامسازی کنید.
توجه داشته باشید که اگر تصمیم دارید از Firebase Android BoM استفاده نکنید، کافیست وابستگی مربوط به کتابخانه firebase-ai را اضافه کنید و آخرین نسخه پیشنهادی اندروید استودیو را بپذیرید.
Java
در فایل 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 BoMimplementation("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") }پروژه اندروید خود را با فایلهای Gradle همگامسازی کنید.
توجه داشته باشید که اگر تصمیم دارید از Firebase Android BoM استفاده نکنید، کافیست وابستگی مربوط به کتابخانه firebase-ai را اضافه کنید و آخرین نسخه پیشنهادی اندروید استودیو را بپذیرید.
Web
آخرین نسخه Firebase JS SDK برای وب را با استفاده از npm دریافت کنید:
npm i firebase@latest
یا
yarn add firebase@latest
هر جا که کتابخانه را وارد کردهاید، دستورات 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
با اجرای دستور زیر از دایرکتوری پروژه Flutter خود، به استفاده از بسته
firebase_aiدر فایلpubspec.yamlخود بهروزرسانی کنید:flutter pub add firebase_ai
پروژه فلاتر خود را بازسازی کنید:
flutter run
پس از اتمام انتقال برنامه خود (به بخشهای باقیمانده در این راهنما مراجعه کنید)، حتماً بسته قدیمی را حذف کنید:
flutter pub remove firebase_vertexai
وحدت
پشتیبانی از Unity از « Vertex AI در Firebase » در دسترس نبود.
یاد بگیرید که چگونه با Firebase AI Logic SDK برای Unity شروع به کار کنید .
مرحله ۴ : مقداردهی اولیه را در برنامه خود بهروزرسانی کنید
برای مشاهده محتوا و کد مخصوص ارائهدهنده در این صفحه، روی ارائهدهنده API Gemini خود کلیک کنید. |
نحوهی مقداردهی اولیهی سرویس برای ارائهدهندهی API انتخابی خود را بهروزرسانی کنید و یک نمونهی GenerativeModel ایجاد کنید.
سویفت
import FirebaseAILogic
// 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.5-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.5-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.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, 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.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 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.5-flash');
وحدت
پشتیبانی از Unity از « Vertex AI در Firebase » در دسترس نبود.
یاد بگیرید که چگونه با Firebase AI Logic SDK برای Unity شروع به کار کنید .
توجه داشته باشید که بسته به قابلیتی که استفاده میکنید، ممکن است همیشه یک نمونه GenerativeModel ایجاد نکنید .
- برای دسترسی به یک مدل Imagen ، یک نمونه
ImagenModelایجاد کنید.
مرحله ۵ : کد خود را بسته به ویژگیهایی که استفاده میکنید، بهروزرسانی کنید
این مرحله تغییراتی را شرح میدهد که ممکن است بسته به ویژگیهایی که استفاده میکنید، مورد نیاز باشند.
اگر از آدرسهای اینترنتی 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 بازخورد دهید