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

Gründe für die Migration zur Verwendung von Vertex AI

Möglicherweise haben Sie eine alternative Version eines 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.

  • Vertex AI Gemini API wird standardmäßig von der IAM Google Cloud und nicht von einem API-Schlüssel wie Google AI Gemini API autorisiert. Die Vertex AI in Firebase SDKs sind darauf ausgelegt, das sicherere Vertex AI Gemini API aufzurufen.

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

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. Nutzen Sie außerdem Client-SDKs, die Dateiuploads und -downloads selbst 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 wie den Standort dynamisch festlegen oder Werte in der App austauschen (z. B. einen Modellnamen), 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 Angebot an Tools, mit denen Sie die Möglichkeiten der generativen KI nutzen können – von den Anfangsphasen der Anwendungsentwicklung über die Anwendungsbereitstellung bis hin zum Hosting von Anwendungen und der Verwaltung komplexer Daten in großem 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. Ein neues oder vorhandenes Firebase-Projekt einrichten und Ihre App mit Firebase verknüpfen

  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 verbinden

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. Diese sollten jedoch auch für andere Klassen unter demselben Paketnamen gelten.

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 Abschnitt API-Schlüssel von Google AI Studio ansehen 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?