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


كان يُطلق على Firebase AI Logic ومجموعة تطوير البرامج (SDK) الخاصة بالعملاء في السابق اسم "Vertex AI in Firebase". ولعرض خدماتنا الموسّعة وميزاتنا بشكل أفضل (على سبيل المثال، نتيح الآن استخدام Gemini Developer APIأعدنا تسمية خدماتنا وإعادة تجميعها في Firebase AI Logic.

للوصول بأمان إلى نماذج الذكاء الاصطناعي التوليدي من Google مباشرةً من تطبيقاتك المتوافقة مع الأجهزة الجوّالة أو الويب، يمكنك الآن اختيار مزوّد "Gemini API"، سواء كانVertex AI Gemini API المتاح منذ فترة طويلة أوGemini Developer API المتاح الآن. وهذا يعني أنّه يتوفّر لك الآن خيار استخدام Gemini Developer API، الذي يوفّر خطة بدون تكلفة مع حدود ومعدّلات معقولة.

نظرة عامة على خطوات نقل البيانات إلى حِزم تطوير البرامج (SDK) من Firebase AI Logic

  • الخطوة 1: اختَر أفضل مقدّم "Gemini API" لتطبيقك وحالات الاستخدام.

  • الخطوة 2: إعداد مشروعك على Firebase لكي تتمكّن من استخدام Gemini Developer API
    لا ينطبق ذلك إلا إذا كنت تريد استخدام 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.

راجِع الاختلافات بين استخدام موفّري خدمة Gemini API، لا سيما من حيث الميزات المتاحة والأسعار وحدود الأسعار. على سبيل المثال، لا يتيح Gemini Developer API تقديم الملفات باستخدام عناوين URL الخاصة بخدمة Cloud Storage، ولكن قد يكون خيارًا جيدًا إذا كنت تريد الاستفادة من فئته التي لا تتطلّب أي تكلفة والحصة المعقولة التي يوفّرها.

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

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

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

  1. في وحدة تحكُّم Firebase، انتقِل إلى صفحة Firebase AI Logic.

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

  3. فعِّل Gemini Developer API.

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

  4. تابِع الخطوات الواردة في دليل نقل البيانات هذا لتعديل المكتبة و عملية الإعداد في تطبيقك.

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

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

Swift

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

    • الخيار 1: تحديث جميع الحِزم: انتقِل إلى الملف > الحِزم > التحديث إلى أحدث إصدارات الحِزم.

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

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

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

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 في Firebase".

تعرَّف على كيفية بدء استخدام حزمة تطوير البرامج (SDK) لنظام التشغيل Firebase AI Logic في Unity.

الخطوة 4: تعديل عملية الإعداد في تطبيقك

انقر على مزوّد Gemini API لعرض المحتوى الخاص بالمزوّد والرمز البرمجي في هذه الصفحة.

عدِّل طريقة إعداد الخدمة لمقدّم واجهة برمجة التطبيقات الذي اخترته و أنشئ مثيلًا GenerativeModel.

Swift


import FirebaseAI

// 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.0-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.0-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.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, 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.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 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.0-flash');

Unity

لم يكن دعم Unity متاحًا من "Vertex AI في Firebase".

تعرَّف على كيفية بدء استخدام حزمة تطوير البرامج (SDK) لنظام التشغيل Firebase AI Logic في Unity.

يُرجى العلم أنّه استنادًا إلى الإمكانات التي تستخدمها، قد لا تتمكّن دائمًا من إنشاء مثيل GenerativeModel.

الخطوة 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 المختلفة لعرض مثيل صفها بشكل صحيح الآن بدلاً من void.

Web

التغييرات المطلوبة فقط إذا كنت بصدد بدء استخدام الرمز Gemini Developer API (بدلاً من الرمز Vertex AI Gemini API):

  • إعدادات السلامة

    • تمّت إزالة استخدامات SafetySetting.method غير المتوافقة.
  • البيانات المضمّنة

    • تمّت إزالة استخدامات InlineDataPart.videoMetadata غير المتوافقة.

Dart

ما مِن تغييرات إضافية.

Unity

لم يكن دعم Unity متاحًا من "Vertex AI in Firebase".

تعرَّف على كيفية بدء استخدام حزمة تطوير البرامج (SDK) لنظام التشغيل Firebase AI Logic في Unity.


تقديم ملاحظات حول تجربتك مع Firebase AI Logic