نقل البيانات إلى حِزم تطوير البرامج (SDK) الخاصة بـ Firebase AI Logic من إصدار "إحصاءات Google" من حِزم تطوير البرامج (SDK) الخاصة بـ Vertex AI في Firebase


كانت 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، ولكنّها قد تكون خيارًا جيدًا إذا أردت الاستفادة من فئتها المجانية وحصتها المعقولة.

الخطوة 2: إعداد مشروع Firebase لتتمكّن من استخدام Gemini Developer API

هذه الخطوة مطلوبة فقط إذا أردت التبديل إلى استخدام Gemini Developer API مع حِزم تطوير البرامج (SDK) لعميل Firebase AI Logic. إذا أردت مواصلة استخدام Agent Platform Gemini API (formerly Vertex AI)، انتقِل إلى الخطوة التالية.

يُرجى العِلم أنّه لا بأس من تفعيل كلا مقدّمي خدمات "Gemini API" في مشروعك في الوقت نفسه.

  1. في وحدة تحكّم Firebase، انتقِل إلى خدمات الذكاء الاصطناعي > AI Logic.

  2. انتقِل إلى علامة التبويب الإعدادات، وانقر على Gemini Developer API.

  3. فعِّل Gemini Developer API.

    ستتأكّد وحدة التحكّم من تفعيل واجهات برمجة التطبيقات المطلوبة وإنشاء مفتاح واجهة برمجة تطبيقات Gemini في مشروع Firebase.
    لا تُضِف مفتاح واجهة برمجة التطبيقات Gemini هذا إلى قاعدة الرموز البرمجية لتطبيقك. مزيد من المعلومات

  4. يُرجى مواصلة قراءة دليل نقل البيانات هذا لتحديث المكتبة وعملية الإعداد في تطبيقك.

الخطوة 3: تحديث المكتبة المستخدَمة في تطبيقك

تحديث قاعدة الرموز البرمجية لتطبيقك لاستخدام مكتبة Firebase AI Logic

Swift

  1. في Xcode، افتح مشروع تطبيقك وحدِّث حزمة Firebase إلى الإصدار 12.5.0 أو إصدار أحدث باستخدام أحد الخيارات التالية:

    • الخيار 1: تحديث جميع الحِزم: انتقِل إلى الملف (File) > الحِزم (Packages) > التحديث إلى آخر إصدارات الحِزم (Update to Latest Package Versions).

    • الخيار 2: تحديث Firebase بشكل فردي: انتقِل إلى حزمة Firebase في القسم الذي يحمل اسم تبعية الحزمة (Package Dependencies). انقر بزر الماوس الأيمن على حزمة Firebase، ثم اختَر تحديث الحزمة.

  2. تأكَّد من أنّ حزمة Firebase تعرض الآن الإصدار 12.5.0 أو إصدارًا أحدث. وإذا لم يتم ذلك، يُرجى التأكّد من أنّ متطلبات الحزمة المحدّدة تسمح بالتحديث إلى الإصدار 12.5.0 أو إصدار أحدث.

  3. اختَر هدف تطبيقك في "محرِّر المشاريع" (Project Editor)، ثم انتقِل إلى قسم الأُطر والمكتبات والمحتوى المضمّن (Frameworks, Libraries, and Embedded Content).

  4. أضِف المكتبة الجديدة: انقر على الزر +، ثم أضِف FirebaseAILogic من حزمة 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:35.1.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. مزامنة مشروع Android مع ملفات Gradle

يُرجى العِلم أنّه في حال اختيار عدم استخدام Firebase Android BoM، ما عليك سوى إضافة التبعية لمكتبة firebase-ai وقبول أحدث إصدار يقترحه "استوديو Android".

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:35.1.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. مزامنة مشروع Android مع ملفات Gradle

يُرجى العِلم أنّه في حال اختيار عدم استخدام Firebase Android BoM، ما عليك سوى إضافة التبعية لمكتبة firebase-ai وقبول أحدث إصدار يقترحه "استوديو Android".

Web

  1. احصل على أحدث إصدار من حزمة تطوير البرامج (SDK) لبرنامج Firebase JS للويب باستخدام 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. يُرجى تعديل حزمة firebase_ai في ملف pubspec.yaml من خلال تشغيل الأمر التالي من دليل مشروع Flutter:

    flutter pub add firebase_ai
  2. أعِد إنشاء مشروع Flutter:

    flutter run
  3. بعد الانتهاء من نقل تطبيقك (راجِع الأقسام المتبقية في هذا الدليل)، تأكَّد من حذف الحزمة القديمة:

    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 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-3.8-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-3.8-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-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, 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-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 Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
      FirebaseAI.googleAI().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 للفيديوهات).

  • يُرجى مراجعة القوائم التالية لمعرفة أي تغييرات قد تحتاج إلى إجرائها في الرمز البرمجي لاستيعاب حزمة تطوير البرامج (SDK) لـ Firebase AI Logic.

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"