使用 Gemini API 根据多模态提示生成文本


使用 Vertex AI for Firebase SDK 从应用中调用 Gemini API 时,您可以提示 Gemini 模型根据多模态输入生成文本。多模态提示可以包括多种模态(或输入类型),例如带图片、PDF、视频和音频的文字。

如需对多模态提示进行测试和迭代,我们建议您使用 Vertex AI Studio

准备工作

完成 Vertex AI for Firebase SDK 入门指南(如果尚未完成)。请确保您已完成以下所有操作:

  • 设置新的或现有的 Firebase 项目,包括使用 Blaze 定价方案以及启用所需的 API。

  • 将您的应用关联至 Firebase,包括注册您的应用以及将 Firebase 配置添加到您的应用。

  • 添加 SDK 并在您的应用中初始化 Vertex AI 服务和生成模型。

将应用关联到 Firebase、添加 SDK 并初始化 Vertex AI 服务和生成模型后,您就可以调用 Gemini API 了。

根据文本和单张图片生成文本

在尝试此示例之前,请确保您已完成本指南的准备工作部分。

您可以使用多模态提示来调用 Gemini API,这些提示同时包含文本和单个文件(如图片),如本例所示。对于这些调用,您需要使用支持多模态提示的模型(例如 Gemini 1.5 Pro)。

支持的文件包括图片、PDF、视频、音频等。 请务必查看输入文件的要求和建议

选择您是想要流式传输响应 (generateContentStream),还是等到整个结果生成 (generateContent) 后再等待响应。

流式处理

您可以不等待模型生成的完整结果,而是使用流式传输来处理部分结果,从而实现更快的互动。

以下示例展示了如何使用 generateContentStream() 流式传输从多模态提示请求(包含文本和单张图片)生成的文本:

不使用流式传输

或者,您也可以等待整个结果,而不是流式传输;结果仅在模型完成整个生成过程后返回。

以下示例展示了如何使用 generateContent() 根据包含文本和单张图片的多模态提示请求生成文本:

了解如何选择 Gemini 模型,并视需要选择适合您的用例和应用的位置

根据文本和多张图片生成文本

在尝试此示例之前,请确保您已完成本指南的准备工作部分。

您可以使用包含文本和多个文件(如图片)的多模态提示来调用 Gemini API。对于这些调用,您需要使用支持多模态提示的模型(例如 Gemini 1.5 Pro)。

支持的文件包括图片、PDF、视频、音频等。 请务必查看输入文件的要求和建议

选择您是想要流式传输响应 (generateContentStream),还是等到整个结果生成 (generateContent) 后再等待响应。

流式处理

您可以不等待模型生成的完整结果,而是使用流式传输来处理部分结果,从而实现更快的互动。

以下示例展示了如何使用 generateContentStream() 流式传输从包含文本和多张图片的多模态提示请求生成的文本:

不使用流式传输

或者,您也可以等待整个结果,而不是流式传输;只有在模型完成整个生成过程后才会返回结果。

以下示例展示了如何使用 generateContent() 根据包含文本和多张图片的多模态提示请求生成文本:

了解如何选择 Gemini 模型,并视需要选择适合您的用例和应用的位置

根据文字和视频生成文字

在尝试此示例之前,请确保您已完成本指南的准备工作部分。

您可以使用包含文字和单个视频的多模态提示来调用 Gemini API(如本例所示)。对于这些调用,您需要使用支持多模态提示的模型(例如 Gemini 1.5 Pro)。

请务必查看输入文件的要求和建议

选择您是想要流式传输响应 (generateContentStream),还是等到整个结果生成 (generateContent) 后再等待响应。

流式处理

您可以不等待模型生成的完整结果,而是使用流式传输来处理部分结果,从而实现更快的互动。

以下示例展示了如何使用 generateContentStream() 流式传输根据包含文本和单个视频的多模态提示请求生成的文本:

不使用流式传输

或者,您也可以等待整个结果,而不是流式传输;结果仅在模型完成整个生成过程后返回。

以下示例展示了如何使用 generateContent() 根据包含文本和单个视频的多模态提示请求生成文本:

了解如何选择 Gemini 模型,并视需要选择适合您的用例和应用的位置

针对输入文件的要求和建议

如需了解支持的文件类型、如何指定 MIME 类型,以及如何确保您的文件和多模态请求符合要求并遵循最佳做法,请参阅 Vertex AI Gemini API 支持的输入文件和要求

您还能做些什么?

  • 了解如何在向模型发送长提示之前计算令牌数
  • 设置 Cloud Storage for Firebase,以便您可以使用 Cloud Storage 网址在多模式请求中包含大型文件。文件可包括图片、PDF、视频和音频。
  • 开始考虑为正式版做好准备,包括设置 Firebase App Check 来保护 Gemini API 免遭未经授权的客户端滥用。

试用 Gemini API 的其他功能

了解如何控制内容生成

您还可以使用 Vertex AI Studio 对提示和模型配置进行实验。

详细了解 Gemini 模型

了解适用于各种使用场景的模型及其配额和价格


提供有关 Vertex AI for Firebase 使用体验的反馈