改用 Vertex AI SDK 替代 Google AI SDK


本页介绍了如何在移动应用或 Web 应用中从 Google AI 客户端 SDK 迁移到 Vertex AI in Firebase 客户端 SDK。Vertex AI in Firebase SDK 适用于 Apple 平台 (Swift)、Android (Kotlin 和 Java)、Web (JavaScript) 和 Flutter (Dart)。

直接前往迁移说明

为什么要改用 Vertex AI

您可能尝试过使用 Google AI StudioGoogle AI 客户端 SDK 使用 Gemini API 的替代版本。这些 SDK 对于开始使用 Gemini API 和 原型设计不过,对于生产企业规模的移动应用和 Web 应用 直接调用 Gemini API 客户端的应用,Firebase 强烈建议 使用 Firebase SDK 调用 Vertex AI Gemini API

适用于移动应用和 Web 应用的安全功能

对移动应用和 Web 应用而言,安全性至关重要,并且需要特殊的 需要考虑的因素,因为您的代码(包括对 Gemini API 的调用) 在不受保护的环境中运行

  • 默认情况下,Vertex AI Gemini APIGoogle Cloud IAM(而非 Google AI Gemini API 等 API 密钥)授权。Vertex AI in Firebase SDK 旨在调用更安全的 Vertex AI Gemini API

  • 对于移动应用和 Web 应用,您需要保护 Gemini API和您的 项目资源(例如经调参的模型)免遭未经授权的客户端滥用。您可以使用 Firebase App Check 验证所有 API 调用是否来自您的实际应用,并且只有在您使用 Vertex AI in Firebase SDK 时才能使用此功能。

专为移动应用和 Web 应用打造的生态系统

Firebase 是 Google 用于开发移动应用和 Web 应用的平台。 使用 Vertex AI in Firebase SDK 意味着您的应用处于 是专注于全栈应用和开发者需求的生态系统。例如,您可以执行以下任一操作及更多操作:

  • 使用 Cloud Storage for Firebase 在多模态中包含大型文件 请求。此外,利用客户端 SDK 来处理文件上传和 并为您的网页提供更高的安全性 最终用户的数据。如需了解详情,请参阅我们的 有关使用 Cloud Storage for Firebase 的解决方案指南

  • 使用专为移动应用和 Web 应用构建的数据库 SDK(例如 Cloud Firestore)管理结构化数据。

  • 动态设置运行时配置(如位置)或换出 (例如型号名称),而无需使用 Firebase Remote Config

使用 Google Cloud 提供的 Vertex AI 的其他优势

随着您在应用和工作流中使用生成式 AI 的成熟,您可能需要一个平台,该平台提供端到端解决方案,用于构建和部署生成式 AI 应用。Google Cloud 提供全面的工具生态系统, 让您可以利用生成式 AI 的力量,从最初的阶段 从应用开发到应用部署、应用托管和管理 。

Google Cloud 的 Vertex AI 平台提供了一套 MLOps 工具,可简化 AI 模型的使用、部署和监控,以提高效率和可靠性。此外,它还与数据库、DevOps 工具、日志记录、 和 IAM 提供了一种全面的方法来管理整个 生成式 AI 生命周期。

详细了解 Vertex AI 的使用场景Google Cloud

迁移至 Vertex AI in Firebase SDK

迁移到 Vertex AI in Firebase SDK 需要完成以下三个主要步骤:

  1. 设置新的或现有的 Firebase 项目,并将您的应用关联到 Firebase。

  2. 迁移代码库,只需更改 SDK 和 初始化代码(包括模型名称)。没有修改 实际调用 Gemini API 的任何代码都需要的 ID。

  3. 删除所有未使用的 API 密钥并停用未使用的 API。

第 1 步:设置 Firebase 项目并将应用连接到 Firebase

即使您已经熟悉 Firebase,也请查看本部分,确保您的 Firebase 项目和应用已设置为使用 Vertex AI in Firebase SDK。

第 2 步:迁移代码库

选择您的应用平台,查看针对该平台的说明。

Google AI SDK 和 Vertex AI in Firebase SDK 的设计旨在让您能够尽可能轻松地在两个平台之间迁移。

如需进行迁移,您只需更改要集成到应用代码库中的 SDK,以及服务和生成式模型的初始化。您 不需要修改任何实际调用 Gemini API 的代码!

更改 SDK

Google AI

flutter pub add google_generative_ai

Vertex AI in Firebase

请参阅 Vertex AI in Firebase SDK 入门指南的“添加 SDK”步骤

更改初始化

Google AI

import 'package:google_generative_ai/google_generative_ai.dart';

final apiKey = Platform.environment['API_KEY'];
if (apiKey == null) {
  print('No \$API_KEY environment variable');
  exit(1);
}

final model = GenerativeModel(model: 'MODEL_NAME', apiKey: apiKey);

Vertex AI in Firebase

import 'package:firebase_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';

await Firebase.initializeApp();
final model =
      FirebaseVertexAI.instance.generativeModel(model: MODEL_NAME);

第 3 步:删除所有未使用的 API 密钥并停用未使用的 API

如果您不再需要使用 Google AI API 密钥,请遵循安全性最佳实践并将其删除。您可以查看和删除您的 Google AI API 键 Google AI StudioAPI 密钥部分

此外,如果您不再使用 Google AI Gemini API,请在以下位置将其停用: 自己的项目您可以在 Google Cloud 控制台中执行此操作(从 Generative Language API (generativelanguage.googleapis.com) 页面。(“Generative Language API”是 Google AI Gemini API。)

您还可以做些什么?