البدء باستخدام Gemini API باستخدام Vertex AI في حِزم تطوير البرامج (SDK) لمنصة Firebase


يوضِّح لك هذا الدليل كيفية البدء في إجراء مكالمات على Vertex AI Gemini API من تطبيقك مباشرةً باستخدام حزمة تطوير البرامج (SDK) Vertex AI in Firebase للنظام الأساسي الذي اخترته

المتطلبات الأساسية

يفترض هذا الدليل أنّك على دراية باستخدام "استوديو Android" لتطوير تطبيقات Android.

  • تأكد من أن بيئة التطوير وتطبيق Android يلبيان المتطلبات التالية:

    • Android Studio (أحدث إصدار)
    • يجب أن يستهدف تطبيق Android المستوى 21 من واجهة برمجة التطبيقات أو المستويات الأعلى.
  • (اختياري) يمكنك الاطّلاع على نموذج التطبيق.

    تنزيل نموذج التطبيق

    يمكنك تجربة SDK بسرعة، ومعرفة التنفيذ الكامل لمختلف الاستخدامات الحالات، أو استخدام نموذج التطبيق إذا لم يكن لديك تطبيق Android خاص بك. لاستخدام نموذج التطبيق، ستحتاج إلى ربطه بمشروع على Firebase

الخطوة 1: إعداد مشروع على Firebase وربط تطبيقك بمنصّة Firebase

إذا كان لديك مشروع على Firebase وتطبيق مرتبط بمنصّة Firebase

  1. في وحدة تحكّم Firebase، انتقِل إلى صفحة الإنشاء باستخدام Gemini وانقر بعد ذلك على البطاقة الثانية لبدء سير عمل يساعدك المهام التالية. إذا ظهرت لك علامة تبويب في وحدة التحكّم لـ Vertex AI، فحينئذٍ اكتملت هذه المهام.

  2. يمكنك المتابعة إلى الخطوة التالية في هذا الدليل لإضافة حزمة تطوير البرامج (SDK) إلى تطبيقك.

إذا لم يكن لديك مشروع على Firebase وتطبيق مرتبط بمنصّة Firebase


الخطوة 2: إضافة حزمة SDK

بعد إعداد مشروع Firebase وربط تطبيقك بمنصّة Firebase (يُرجى الاطّلاع على الخطوة السابقة)، يمكنك الآن إضافة حزمة تطوير البرامج (SDK) لنظام التشغيل Vertex AI in Firebase إلى تطبيقك.

توفّر حزمة تطوير البرامج (SDK) لنظام التشغيل Vertex AI in Firebase لنظام التشغيل Android (firebase-vertexai) الوصول إلى Vertex AI Gemini API.

في ملف إعداد Gradle للوحدة (على مستوى التطبيق) (مثل <project>/<app-module>/build.gradle.kts)، أضف تبعية حزمة تطوير البرامج (SDK) Vertex AI in Firebase لنظام التشغيل Android:

Kotlin+KTX

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Vertex AI in Firebase SDK for Android
  implementation("com.google.firebase:firebase-vertexai:16.0.0-beta04")
}

Java

بالنسبة إلى Java، يجب إضافة مكتبتين إضافيتين.

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Vertex AI in Firebase SDK for Android
  implementation("com.google.firebase:firebase-vertexai:16.0.0-beta04")

  // Required for one-shot operations (to use `ListenableFuture` from Guava Android)
  implementation("com.google.guava:guava:31.0.1-android")

  // Required for streaming operations (to use `Publisher` from Reactive Streams)
  implementation("org.reactivestreams:reactive-streams:1.0.4")
}

الخطوة 3: إعداد خدمة Vertex AI والنموذج التوليدي

لتتمكّن من إجراء أي طلبات بيانات من واجهة برمجة التطبيقات، عليك إعداد Vertex AI. والخدمة والنموذج التوليدي.

Kotlin+KTX

بالنسبة إلى Kotlin، تمثل الطرق في حزمة SDK هذه دوال تعليق ويجب استدعاؤها من نطاق الكوروتين
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-flash")

Java

بالنسبة إلى Java، تعرض طرق البث في حزمة SDK هذه النوع Publisher من مكتبة "ساحات المشاركات التفاعلية"
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-1.5-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

عند الانتهاء من دليل البدء، تعرف على كيفية اختيار نموذج Gemini و (اختياريًا) الموقع الجغرافي المناسب لحالة الاستخدام والتطبيق.

الخطوة 4: طلب Vertex AI Gemini API

بعد أن ربطت تطبيقك بمنصّة Firebase، وأضفت حزمة تطوير البرامج (SDK)، ثم بدأت عملية الإعداد. خدمة Vertex AI والنموذج التوليدي، أصبحت جاهزًا للاتصال بـ Vertex AI Gemini API.

يمكنك استخدام generateContent() لإنشاء نص بناءً على طلب نصي فقط. الطلب:

Kotlin+KTX

بالنسبة إلى Kotlin، تمثل الطرق في حزمة SDK هذه دوال تعليق ويجب استدعاؤها من نطاق الكوروتين
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-flash")

// Provide a prompt that contains text
val prompt = "Write a story about a magic backpack."

// To generate text output, call generateContent with the text input
val response = generativeModel.generateContent(prompt)
print(response.text)

Java

بالنسبة إلى Java، تعرض الطرق الموجودة في حزمة SDK هذه ListenableFuture
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-1.5-flash");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// Provide a prompt that contains text
Content prompt = new Content.Builder()
    .addText("Write a story about a magic backpack.")
    .build();

// To generate text output, call generateContent with the text input
ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
    @Override
    public void onSuccess(GenerateContentResponse result) {
        String resultText = result.getText();
        System.out.println(resultText);
    }

    @Override
    public void onFailure(Throwable t) {
        t.printStackTrace();
    }
}, executor);

ما هي الإجراءات الإضافية التي يمكنك تنفيذها؟

مزيد من المعلومات حول نماذج Gemini

يمكنك معرفة المزيد عن النماذج المتوفّرة لحالات الاستخدام المختلفة و الحصص والأسعار:

تجربة الإمكانات الأخرى لـ Gemini API

التعرّف على طريقة التحكّم في إنشاء المحتوى

يمكنك أيضًا تجربة الطلبات وعمليات ضبط النماذج باستخدام Vertex AI Studio


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