改用 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 和进行原型设计非常有用。不过,对于直接调用 Gemini API 客户端的正式版企业级移动应用和 Web 应用,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 的任何代码都无需修改。

  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

  1. 在 Xcode 中的项目导航器中,右键点击您的项目。

  2. 从上下文菜单中选择添加软件包

  3. 添加软件包对话框中,将软件包网址粘贴到搜索栏中:
    https://github.com/google/generative-ai-swift

  4. 点击添加软件包。Xcode 现在会将 GoogleGenerativeAI 软件包添加到您的项目中。

Vertex AI in Firebase

  1. 在 Xcode 中打开您的应用项目,依次点击 File(文件)> Add Packages(添加软件包)

  2. 出现提示时,添加 Firebase Apple 平台 SDK 代码库:

    https://github.com/firebase/firebase-ios-sdk
    
  3. 选择最新的 SDK 版本。

  4. 选择 FirebaseVertexAI-Preview 库。

完成之后,Xcode 将会自动开始在后台解析和下载您的依赖项。

更改初始化

Google AI

import GoogleGenerativeAI

let model = GenerativeModel(name: "MODEL_NAME", apiKey: APIKey.default)

Vertex AI in Firebase

import FirebaseVertexAI

let vertex = VertexAI.vertexAI()
let model = vertex.generativeModel(modelName: "MODEL_NAME")

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

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

此外,如果您不再使用 Google AI Gemini API,请在项目中停用它。您可以在 Google Cloud 控制台的 Generative Language API (generativelanguage.googleapis.com) 页面中执行此操作。(“生成式语言 API”是 Google AI Gemini API 的官方名称。)

您还可以执行以下操作