Vertex AI in Firebase 已于 2024 年 10 月 21 日发布正式版 (GA)。
如果您使用的是 Beta 版 Vertex AI in Firebase 库 (firebase-vertexai:16.0.0-betaXX
),则需要进行以下更改才能升级,以使用该库的正式版(firebase-vertexai:16.0.0
或更高版本)。
下面简要列出了迁移所需的更改:
- 在 Firebase 项目中启用新的必需 API(对所有人均为必需)
- 更新到库的正式版 (所有人都需要)
- 其他更改(根据您使用的功能而定,可能需要执行)
在 Firebase 项目中启用所需的新 API(所有人都需要)
您需要在 Firebase 项目中启用 Vertex AI in Firebase API,并将其添加到 Firebase API 密钥的许可名单中。这是使用正式版 Vertex AI in Firebase 所需的新 API。
在 Firebase 控制台中,前往 Build with Gemini 页面。
在 Vertex AI in Firebase 卡片中,点击开始以启动工作流,该工作流可帮助您启用此 API 并将其添加到 Firebase API 密钥的许可名单中。
您可以在控制台中跳过工作流的其余部分。
更新到该库的 GA 版本(所有开发者都必须更新)
请按照以下说明更新依赖项,以使用最新版本的 Firebase Android BoM。我们不强制要求使用 BoM,但我们强烈建议您使用它,因为它有助于确保您的应用使用各个 Firebase 库的兼容版本。
在您的模块(应用级)Gradle 文件(通常是
<project>/<app-module>/build.gradle.kts
或<project>/<app-module>/build.gradle)
)中,将 Vertex AI in Firebase 的依赖项替换为以下内容:// BEFORE dependencies {
implementation("com.google.firebase:firebase-vertexai:16.0.0-betaXX")} // AFTER dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.5.1")) // Add the dependency for the Vertex AI in Firebase library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai") }将您的 Android 项目与 Gradle 文件同步。
请注意,如果您选择不使用 Firebase BoM,只需接受 Android Studio 建议的最新版本 firebase-vertexai
。
其他更改(具体取决于您使用的功能)
我们对 SDK 的 GA 版本进行了多项更改。请查看以下列表,了解您可能需要在代码中进行的任何更改,以适应应用中 SDK 的正式版的占用情况。
函数调用
如果您在 GA 之前实现了此功能,则需要更新架构定义方式。建议您查看更新后的函数调用指南,了解如何编写函数声明。使用
responseSchema
生成结构化输出(例如 JSON)
如果您在 GA 发布之前实现了此功能,则需要更新架构定义方式。建议您查看新的结构化输出指南,了解如何编写 JSON 架构。超时
- 将请求的默认超时时间更改为 180 秒。
枚举
将
enum
类和sealed
类替换为常规类。此更改让您能够更灵活地以向后兼容的方式改进 API。将
BlockThreshold
枚举重命名为HarmBlockThreshold
。从以下枚举中移除了值:
HarmBlockThreshold
、HarmProbability
、HarmSeverity
、BlockReason
和FinishReason
。
Blob 方法
- 重命名了名称中包含
Blob
的所有方法,以改用InlineData
。
- 重命名了名称中包含
安全设置
- 将字段
method
更改为了可为 null。
- 将字段
时长类别
- 移除了 Kotlin 的
Duration
类的所有用法,并将其替换为long
。此变更可提高与 Java 的互操作性。
- 移除了 Kotlin 的
引用元数据
- 将之前在
CitationMetadata
中声明的所有字段封装到名为Citation
的新类中。您可以在CitationMetadata
中名为citations
的列表中找到引文。此项变更有助于更好地在各个平台上对齐类型。
- 将之前在
统计令牌数
- 将
totalBillableCharacters
字段更改为了可为空字段。
- 将
应计费字符总数
- 将
CountTokensResponse
中的totalBillableCharacters
属性更改为了可选属性,以反映没有发送字符的情况。
- 将
实例化模型
- 将
requestOptions
参数移到了参数列表的末尾,以与其他平台保持一致。
- 将