كان اسم Firebase AI Logic وحِزم تطوير البرامج (SDK) الخاصة بالعملاء هو Vertex AI in Firebase. ولتوضيح الخدمات والميزات الموسّعة التي نقدّمها بشكل أفضل (على سبيل المثال، أصبحنا الآن نتيح استخدام Gemini Developer API)، أعدنا تسمية خدماتنا وأعدنا تجميعها في Firebase AI Logic.
للوصول بأمان إلى نماذج الذكاء الاصطناعي التوليدي من Google مباشرةً من تطبيقاتك على الأجهزة الجوّالة أو الويب، يمكنك الآن اختيار مقدّم خدمة "Gemini API"، إما Agent Platform Gemini API (formerly Vertex AI) المتاح منذ فترة طويلة أو Gemini Developer API الجديد. يعني ذلك أنّه أصبح بإمكانك استخدام Gemini Developer API الذي يوفّر مستوى بدون تكلفة مع حدود قصوى معقولة للمعدّل والحصص.
نظرة عامة على خطوات نقل البيانات إلى حِزم تطوير البرامج (SDK) Firebase AI Logic
الخطوة 1: اختَر أفضل مقدّم خدمة "Gemini API" لتطبيقك وحالات الاستخدام.
الخطوة 2: إعداد مشروع Firebase لتتمكّن من استخدام Gemini Developer API
لا ينطبق ذلك إلا إذا كنت تريد التبديل لاستخدام Gemini Developer API بدلاً من Agent Platform Gemini API (formerly Vertex AI).الخطوة 3: حدِّث المكتبة المستخدَمة في تطبيقك.
الخطوة 4: تعديل عملية التهيئة في تطبيقك
الخطوة 5: عدِّل الرمز البرمجي حسب الميزات التي تستخدمها.
الخطوة 1: اختيار أفضل موفّر لخدمة "Gemini API" لتطبيقك
من خلال عملية نقل البيانات هذه، يمكنك اختيار مزوّد خدمة "Gemini API" من بين الخيارات التالية:
كانت حِزم تطوير البرامج (SDK) القديمة "Vertex AI in Firebase" تستخدم فقط Agent Platform Gemini API (formerly Vertex AI).
تتيح لك حِزم تطوير البرامج (SDK) الجديدة Firebase AI Logic اختيار مقدّم خدمة Gemini API الذي تريد الاتصال به مباشرةً من تطبيقك على الأجهزة الجوّالة أو الويب، سواء كان Gemini Developer API أو Agent Platform Gemini API (formerly Vertex AI).
راجِع الاختلافات بين استخدام مقدِّمَي خدمات Gemini API، خاصةً في ما يتعلق بالميزات المتوافقة والأسعار والحدود القصوى لمعدّل الاستخدام. على سبيل المثال، لا يتيح Gemini Developer API توفير الملفات باستخدام عناوين URL من Cloud Storage، ولكن قد يكون خيارًا جيدًا إذا كنت تريد الاستفادة من المستوى المجاني والحصة المعقولة.
إذا أردت مواصلة استخدام Agent Platform Gemini API (formerly Vertex AI):
تخطَّ الخطوة التالية وانتقِل مباشرةً إلى تحديث المكتبة في تطبيقك، ثم اتّبِع بقية هذا الدليل.إذا أردت التبديل إلى Gemini Developer API:
انتقِل إلى الخطوة التالية من أجل إعداد مشروع Firebase لاستخدام واجهة برمجة التطبيقات هذه، ثم اتّبِع بقية الخطوات في هذا الدليل.
الخطوة 2: إعداد مشروع Firebase لتتمكّن من استخدام Gemini Developer API
هذه الخطوة مطلوبة فقط إذا أردت التبديل إلى استخدام Gemini Developer API مع حِزم تطوير البرامج (SDK) لعميل Firebase AI Logic. إذا أردت مواصلة استخدام Agent Platform Gemini API (formerly Vertex AI)، انتقِل إلى الخطوة التالية.
يُرجى العِلم أنّه لا بأس بتفعيل كلا مزوّدَي "Gemini API" في مشروعك في الوقت نفسه.
في وحدة تحكّم Firebase، انتقِل إلى خدمات الذكاء الاصطناعي > منطق الذكاء الاصطناعي.
انتقِل إلى علامة التبويب الإعدادات، ثم انقر على Gemini Developer API.
فعِّل Gemini Developer API.
ستتأكّد وحدة التحكّم من تفعيل واجهات برمجة التطبيقات المطلوبة وإنشاء مفتاح واجهة برمجة تطبيقات Gemini في مشروع Firebase.
يجب عدم إضافة مفتاح واجهة برمجة التطبيقات Gemini هذا إلى قاعدة الرموز البرمجية لتطبيقك. مزيد من المعلوماتيُرجى مواصلة قراءة دليل نقل البيانات هذا لتعديل المكتبة وعملية الإعداد في تطبيقك.
الخطوة 3: تحديث المكتبة المستخدَمة في تطبيقك
حدِّث قاعدة الرموز البرمجية لتطبيقك لاستخدام مكتبة Firebase AI Logic.
Swift
في Xcode، بعد فتح مشروع تطبيقك، حدِّث حزمة Firebase إلى الإصدار 12.5.0 أو إصدار أحدث باستخدام أحد الخيارات التالية:
الخيار 1: تحديث جميع الحِزم: انتقِل إلى الملف (File) > الحِزم (Packages) > التحديث إلى آخر إصدارات الحِزم (Update to Latest Package Versions).
الخيار 2: تحديث Firebase بشكل فردي: انتقِل إلى حزمة Firebase في القسم الذي يحمل اسم تبعيّات الحزمة. انقر بزر الماوس الأيمن على حزمة Firebase، ثم اختَر تحديث الحزمة.
تأكَّد من أنّ حزمة Firebase تعرض الآن الإصدار 12.5.0 أو إصدارًا أحدث. وإذا لم يتم ذلك، يُرجى التأكّد من أنّ متطلبات الحزمة المحدّدة تسمح بالتحديث إلى الإصدار 12.5.0 أو إصدار أحدث.
اختَر هدف تطبيقك في "محرِّر المشاريع" (Project Editor)، ثم انتقِل إلى قسم الأُطر والمكتبات والمحتوى المضمّن (Frameworks, Libraries, and Embedded Content).
أضِف المكتبة الجديدة: انقر على الزر +، ثم أضِف FirebaseAILogic من حزمة 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:35.0.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") }مزامنة مشروع Android مع ملفات Gradle
يُرجى العِلم أنّه في حال اختيار عدم استخدام Firebase Android BoM، ما عليك سوى إضافة
التبعية لمكتبة firebase-ai وقبول أحدث إصدار
يقترحه "استوديو Android".
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:35.0.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") }مزامنة مشروع Android مع ملفات Gradle
يُرجى العِلم أنّه في حال اختيار عدم استخدام Firebase Android BoM، ما عليك سوى إضافة
التبعية لمكتبة firebase-ai وقبول أحدث إصدار
يقترحه "استوديو Android".
Web
احصل على أحدث إصدار من حزمة تطوير البرامج (SDK) لبرنامج Firebase JS للويب باستخدام npm:
npm i firebase@latest
أو
yarn add firebase@latest
في أي مكان استوردت فيه المكتبة، عدِّل عبارات الاستيراد لاستخدام
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
عدِّل ملف
pubspec.yamlلاستخدام حزمةfirebase_aiمن خلال تنفيذ الأمر التالي من دليل مشروع Flutter:flutter pub add firebase_ai
أعِد إنشاء مشروع Flutter:
flutter run
بعد الانتهاء من نقل تطبيقك (راجِع الأقسام المتبقية في هذا الدليل)، احرص على حذف الحزمة القديمة باتّباع الخطوات التالية:
flutter pub remove firebase_vertexai
Unity
لم يكن تطبيق Unity متاحًا من "Vertex AI in Firebase".
تعرَّف على كيفية بدء استخدام حزمة تطوير البرامج (SDK) الخاصة بـ "Firebase AI Logic" لمنصة Unity.
الخطوة 4: تعديل عملية التهيئة في تطبيقك
|
انقر على مزوّد خدمة Gemini API لعرض المحتوى والرمز البرمجي الخاصَّين بالمزوّد على هذه الصفحة. |
عدِّل طريقة إعداد الخدمة لمقدّم واجهة برمجة التطبيقات الذي اخترته وأنشئ مثيلاً من GenerativeModel.
Swift
import FirebaseAILogic
// Initialize the Agent Platform Gemini API backend service (fomerly Vertex AI).
let ai = FirebaseAI.firebaseAI(backend: .agentPlatform())
// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-3.8-flash")
Kotlin
// Initialize the Agent Platform Gemini API backend service (formerly Vertex AI).
// Create a `GenerativeModel` instance with a model that supports your use case.
val model = Firebase.ai(backend = GenerativeBackend.agentPlatform())
.generativeModel("gemini-3.8-flash")
Java
// Initialize the Agent Platform Gemini API backend service (formerly Vertex AI).
// Create a `GenerativeModel` instance with a model that supports your use case.
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.agentPlatform())
.generativeModel("gemini-3.8-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, AgentPlatformBackend } 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 Agent Platform Gemini API backend service (formerly Vertex AI).
const ai = getAI(firebaseApp, { backend: new AgentPlatformBackend() });
// Create a `GenerativeModel` instance with a model that supports your use case.
const model = getGenerativeModel(ai, { model: "gemini-3.8-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 Agent Platform Gemini API backend service (formerly Vertex AI).
// Create a `GenerativeModel` instance with a model that supports your use case.
final model =
FirebaseAI.agentPlatform().generativeModel(model: 'gemini-3.8-flash');
Unity
لم يكن الدعم متاحًا لـ Unity من "Vertex AI in Firebase".
تعرَّف على كيفية بدء استخدام حزمة تطوير البرامج (SDK) الخاصة بـ "Firebase AI Logic" لمنصة Unity.
يُرجى العِلم أنّه استنادًا إلى الإمكانية التي تستخدمها، قد لا تتمكّن دائمًا من إنشاء GenerativeModel آلة افتراضية. لبث الإدخال والإخراج باستخدام Gemini Live API،
أنشئ مثيلاً من LiveModel.
الخطوة 5: تعديل الرمز البرمجي حسب الميزات التي تستخدمها
توضّح هذه الخطوة التغييرات التي قد تكون مطلوبة استنادًا إلى الميزات التي تستخدمها.
إذا كنت تستخدم عناوين URL لـ Cloud Storage و بدّلتها لاستخدام Gemini Developer API في عملية النقل هذه، عليك تعديل طلباتك المتعدّدة الوسائط لتضمين الملفات كبيانات مضمّنة (أو استخدام عناوين URL على YouTube للفيديوهات).
راجِع القوائم التالية لمعرفة أي تغييرات قد تحتاج إلى إجرائها في الرمز البرمجي لاستيعاب Firebase AI Logic حزمة SDK.
Swift
لن يتم إجراء أي تغييرات إضافية.
Kotlin
Live API
- تمت إزالة القيمة
UNSPECIFIEDلفئة التعدادResponseModality. بدلاً من ذلك، استخدِمnull.
- تمت إزالة القيمة
Java
Live API
- تمت إزالة القيمة
UNSPECIFIEDلفئة التعدادResponseModality. بدلاً من ذلك، استخدِمnull.
- تمت إزالة القيمة
تم تغيير العديد من طرق Java builder لتعرض الآن مثيل فئتها بشكل صحيح، بدلاً من void.
Web
يجب إجراء تغييرات فقط إذا كنت ستستخدم Gemini Developer API (بدلاً من Agent Platform Gemini API (formerly Vertex AI)):
إعدادات الأمان
- تمت إزالة استخدامات
SafetySetting.methodغير المتوافقة.
- تمت إزالة استخدامات
البيانات المضمّنة
- تمت إزالة استخدامات
InlineDataPart.videoMetadataغير المتوافقة.
- تمت إزالة استخدامات
Dart
لن يتم إجراء أي تغييرات إضافية.
Unity
لم يكن الدعم متاحًا لـ Unity من "Vertex AI in Firebase".
كيفية بدء استخدام حزمة تطوير البرامج (SDK) الخاصة بـ Firebase AI Logic لمشاريع Unity
تقديم ملاحظات حول تجربتك مع Firebase AI Logic