Migrieren Sie, um Vertex AI SDKs anstelle von Google AI SDKs zu verwenden

Auf dieser Seite wird beschrieben, wie Sie in Ihren mobilen oder Web-Apps von den Google AI-Client-SDKs zu den Vertex AI in Firebase-Client-SDKs migrieren. Die Vertex AI in Firebase SDKs sind für Apple-Plattformen (Swift), Android (Kotlin und Java), Web (JavaScript) und Flutter (Dart) verfügbar.

Direkt zur Migrationsanleitung

Vorteile der Migration zu Vertex AI

Möglicherweise hast du eine alternative Version einer Gemini API mit Google AI Studio oder den Google AI-Client-SDKs ausprobiert. Diese SDKs sind hilfreich für den Einstieg in die Gemini API und das Prototyping. Bei Produktions- oder Enterprise-Apps, die Gemini API-Dienste clientseitig direkt aufrufen, empfiehlt Firebase jedoch dringend, Vertex AI Gemini API mithilfe unserer Firebase SDKs aufzurufen.

Sicherheitsfunktionen für mobile und Webanwendungen

Bei mobilen Apps und Webanwendungen ist Sicherheit entscheidend und erfordert besondere Überlegungen, da Ihr Code (einschließlich Aufrufe der Gemini API) in einer ungeschützten Umgebung ausgeführt wird.

  • Standardmäßig wird die Vertex AI Gemini API von Google Cloud IAM autorisiert (nicht durch einen API-Schlüssel wie die Google AI Gemini API). Die Vertex AI in Firebase SDKs sind so konzipiert, dass sie die sicherere Vertex AI Gemini API aufrufen.

  • Bei mobilen und Webanwendungen müssen Sie die Gemini API und Ihre Projektressourcen (z. B. optimierte Modelle) vor Missbrauch durch nicht autorisierte Clients schützen. Mit Firebase App Check können Sie prüfen, ob alle API-Aufrufe von Ihrer tatsächlichen App stammen. Diese Funktion ist nur verfügbar, wenn Sie die Vertex AI in Firebase-SDKs verwenden.

Für mobile Apps und Webanwendungen entwickeltes System

Firebase ist die Plattform von Google für die Entwicklung von mobilen Apps und Webanwendungen. Wenn Sie die Vertex AI in Firebase SDKs verwenden, befinden sich Ihre Apps in einem Ökosystem, das auf die Anforderungen von Full-Stack-Apps und Entwicklern ausgerichtet ist. Sie können beispielsweise Folgendes und vieles mehr tun:

  • Verwenden Sie Cloud Storage for Firebase, um große Dateien in Ihre multimodalen Anfragen aufzunehmen. Außerdem sollten Sie Client-SDKs verwenden, die Dateiuploads und ‑downloads (auch bei schlechten Netzwerkbedingungen) verarbeiten und mehr Sicherheit für die Daten Ihrer Endnutzer bieten. Weitere Informationen zur Verwendung von Cloud Storage for Firebase finden Sie in unserem Leitfaden zur Lösung.

  • Verwalten Sie strukturierte Daten mit Datenbank-SDKs, die für mobile und Webanwendungen entwickelt wurden (z. B. Cloud Firestore).

  • Mit Firebase Remote Config können Sie Laufzeitkonfigurationen (z. B. den Standort) dynamisch festlegen oder Werte in Ihrer App (z. B. einen Modellnamen) austauschen, ohne eine neue App-Version zu veröffentlichen.

Weitere Vorteile der Verwendung von Vertex AI ab Google Cloud

Wenn Sie generative KI in Ihren Apps und Workflows immer häufiger einsetzen, benötigen Sie möglicherweise eine Plattform, die End-to-End-Lösungen für die Erstellung und Bereitstellung von Anwendungen mit generativer KI bietet. Google Cloud bietet ein umfassendes Netzwerk an Tools, mit denen Sie das Potenzial der generativen KI nutzen können – von den ersten Phasen der App-Entwicklung bis zur App-Bereitstellung, zum App-Hosting und zur Verwaltung komplexer Daten im großen Maßstab.

Die Vertex AI-Plattform von Google Cloud bietet eine Reihe von MLOps-Tools, die Nutzung, Bereitstellung und Monitoring von KI-Modellen im Hinblick auf Effizienz und Zuverlässigkeit optimieren. Darüber hinaus bieten Integrationen mit Datenbanken, DevOps-Tools, Logging, Monitoring und IAM einen ganzheitlichen Ansatz zum Verwalten des gesamten Lebenszyklus der generativen KI.

Weitere Informationen zu den Anwendungsfällen von Vertex AI finden Sie in der Google Cloud-Dokumentation.

Zu den Vertex AI in Firebase-SDKs migrieren

Die Migration zu den Vertex AI in Firebase-SDKs umfasst drei Hauptschritte:

  1. Richten Sie ein neues oder vorhandenes Firebase-Projekt ein und verknüpfen Sie Ihre App mit Firebase.

  2. Migrieren Sie Ihre Codebasis. Dazu müssen Sie nur das SDK und den Initialisierungscode (einschließlich des Modellnamens) ändern. Der Code, der die Gemini API aufruft, muss nicht geändert werden.

  3. Löschen Sie alle nicht verwendeten API-Schlüssel und deaktivieren Sie nicht verwendete APIs.

Schritt 1: Firebase-Projekt einrichten und App mit Firebase verknüpfen

Auch wenn Sie mit Firebase bereits vertraut sind, sollten Sie diesen Abschnitt lesen, um sicherzustellen, dass Ihr Firebase-Projekt und Ihre App für die Verwendung der Vertex AI in Firebase-SDKs eingerichtet sind.

Schritt 2: Codebasis migrieren

Wählen Sie die Plattform Ihrer App aus, um eine plattformspezifische Anleitung aufzurufen.

Die Google AI SDKs und die Vertex AI in Firebase SDKs wurden so entwickelt, dass die Migration zwischen den beiden Plattformen so einfach wie möglich ist.

Für die Migration müssen Sie nur das SDK ändern, das Sie in die Codebasis Ihrer App einbinden, sowie die Initialisierung des Dienstes und des generativen Modells. Sie müssen den Code, der die Gemini API aufruft, nicht ändern.

SDK ändern

Google AI

Kotlin+KTX

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Google AI client SDK for Android
  implementation("com.google.ai.client.generativeai:generativeai:VERSION")
}

Java

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Google AI client SDK for Android
  implementation("com.google.ai.client.generativeai:generativeai:VERSION")

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

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

Vertex AI in Firebase

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.2")
}

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.2")

  // 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")
}

Initialisierung ändern

Google AI

Kotlin+KTX

val generativeModel = GenerativeModel(modelName = "MODEL_NAME",
    // Access your API key as a Build Configuration variable
    apiKey = BuildConfig.apiKey
)

Java

GenerativeModel gm = new GenerativeModel("MODEL_NAME",
    // Access your API key as a Build Configuration variable
    BuildConfig.apiKey
);

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

Vertex AI in Firebase

Kotlin+KTX

val generativeModel = Firebase.vertexAI.generativeModel("MODEL_NAME")

Java

GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("MODEL_NAME");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

Importe aktualisieren

In den folgenden Code-Snippets werden die Klassen Chat, Content und GenerativeModelFutures als Beispiele verwendet. Gleiches gilt jedoch auch für andere Klassen mit demselben Paketnamen.

Google AI

Kotlin+KTX

import com.google.ai.client.generativeai.Chat
import com.google.ai.client.generativeai.type.Content
import com.google.ai.client.generativeai.java.GenerativeModuleFutures

Java

import com.google.ai.client.generativeai.Chat;
import com.google.ai.client.generativeai.type.Content;
import com.google.ai.client.generativeai.java.GenerativeModuleFutures;

Vertex AI in Firebase

Kotlin+KTX

import com.google.firebase.vertexai.Chat
import com.google.firebase.vertexai.type.Content
import com.google.firebase.vertexai.java.GenerativeModuleFutures

Java

import com.google.firebase.vertexai.Chat;
import com.google.firebase.vertexai.type.Content;
import com.google.firebase.vertexai.java.GenerativeModuleFutures;

Schritt 3: Nicht verwendete API-Schlüssel löschen und nicht verwendete APIs deaktivieren

Wenn Sie den Google AI API-Schlüssel nicht mehr verwenden müssen, folgen Sie den Best Practices für die Sicherheit und löschen Sie ihn. Sie können Ihre Google AI API-Schlüssel im Bereich API-Schlüssel von Google AI Studio aufrufen und löschen.

Wenn Sie Google AI Gemini API nicht mehr verwenden, deaktivieren Sie es in Ihrem Projekt. Sie können dies in der Google Cloud-Konsole auf der Seite Generative Language API (generativelanguage.googleapis.com) tun. („Generative Language API“ ist der offizielle Name der Google AI Gemini API.)

Was können Sie sonst noch tun?