Vertex AI Gemini API

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

نقل البيانات من Vertex AI في Firebase

إذا سبق لك دمج نموذجَي Gemini Flash وGemini Pro باستخدام Vertex AI في Firebase، يمكنك نقل البيانات إلى Vertex AI ومواصلة استخدامه كمزوّد لواجهة برمجة التطبيقات. يُرجى قراءة مستندات Firebase للاطّلاع على دليل مفصّل لـ نقل البيانات.

الخطوات الأولى

قبل التفاعل مع Vertex AI Gemini API مباشرةً من تطبيقك، يمكنك تجربة الطلبات في Vertex AI Studio.

إعداد مشروع Firebase وربط التطبيق بـ Firebase

عندما تصبح مستعدًا لاستدعاء Vertex AI Gemini API من تطبيقك، اتّبِع التعليمات الواردة في دليل الخطوات الأولى في Firebase AI Logic لإعداد Firebase وحزمة SDK في تطبيقك.

إضافة اعتمادية Gradle

أضِف اعتمادية Gradle التالية إلى وحدة تطبيقك:

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:34.12.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")
}

تهيئة النموذج التوليدي

ابدأ بإنشاء مثيل من GenerativeModel وتحديد اسم النموذج:

Kotlin

val model = Firebase.ai(backend = GenerativeBackend.vertexAI())
    .generativeModel("gemini-2.5-flash")

Java

GenerativeModel firebaseAI = FirebaseAI.getInstance(GenerativeBackend.vertexAI())
        .generativeModel("gemini-2.5-flash");

GenerativeModelFutures model = GenerativeModelFutures.from(firebaseAI);

في مستندات Firebase، يمكنك الاطّلاع على مزيد من المعلومات حول النماذج المتاحة للاستخدام مع Gemini Developer API. يمكنك أيضًا التعرّف على كيفية ضبط مَعلمات النموذج.

إنشاء نص

لإنشاء ردّ نصي، استدعِ generateContent() مع طلبك.

Kotlin

suspend fun generateText(model: GenerativeModel) {
    // Note: generateContent() is a suspend function, which integrates well
    // with existing Kotlin code.
    val response = model.generateContent("Write a story about a magic backpack.")
    // ...
}

Java

Content prompt = new Content.Builder()
        .addText("Write a story about a magic backpack.")
        .build();

ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
    @Override
    public void onSuccess(GenerateContentResponse result) {
        String resultText = result.getText();
        // ...
    }

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

على غرار Gemini Developer API، يمكنك أيضًا تمرير الصور والمحتوى الصوتي والفيديوهات والملفات مع طلبك النصي. لمعرفة التفاصيل، يُرجى الاطّلاع على مقالة التفاعل مع Gemini Developer API من تطبيقك.

لمزيد من المعلومات حول حزمة SDK الخاصة بـ Firebase AI Logic، يُرجى قراءة مستندات Firebase.