使用 Gemini API,您可以构建多轮自由对话。Vertex AI for Firebase SDK 通过管理对话状态来简化流程,因此与 generateContentStream()
或 generateContent()
不同,您无需自行存储对话记录。
准备工作
完成 Vertex AI for Firebase SDK 入门指南(如果尚未完成)。请确保您已完成以下所有操作:
设置新的或现有的 Firebase 项目,包括使用 Blaze 定价方案以及启用所需的 API。
将您的应用关联至 Firebase,包括注册您的应用以及将 Firebase 配置添加到您的应用。
添加 SDK 并在您的应用中初始化 Vertex AI 服务和生成模型。
将应用关联到 Firebase、添加 SDK 并初始化 Vertex AI 服务和生成模型后,您就可以调用 Gemini API 了。
发送聊天提示请求
如需构建多轮对话(如聊天),请先通过调用 startChat()
初始化聊天。然后,使用 sendMessageStream()
(或 sendMessage()
)发送一条新的用户消息,此操作还会将消息和响应附加到聊天记录中。
对于与对话内容关联的 role
,有两个可能的选项:
user
:提供提示的角色。该值是调用sendMessageStream()
(或sendMessage()
)的默认值,如果传递了其他角色,该函数会抛出异常。model
:提供响应的角色。使用现有history
调用startChat()
时,可以使用此角色。
选择您是想要流式传输响应 (sendMessageStream
),还是等到整个结果生成 (sendMessage
) 后再等待响应。
流式处理
您可以不等待模型生成的完整结果,而是使用流式传输来处理部分结果,从而实现更快的互动。
以下示例展示了如何使用 sendMessageStream()
流式传输来自模型的响应:
不使用流式传输
或者,您也可以等待整个结果,而不是流式传输;结果仅在模型完成整个生成过程后返回。
以下示例展示了如何使用 sendMessage()
发送新的用户消息:
了解如何选择 Gemini 模型,并视需要选择适合您的用例和应用的位置。
您还能做些什么?
- 了解如何在向模型发送长提示之前计算令牌数。
- 设置 Cloud Storage for Firebase,以便您可以使用 Cloud Storage 网址在多模式请求中包含大型文件。文件可包括图片、PDF、视频和音频。
- 开始考虑为正式版做好准备,包括设置 Firebase App Check 来保护 Gemini API 免遭未经授权的客户端滥用。
试用 Gemini API 的其他功能
了解如何控制内容生成
您还可以使用 Vertex AI Studio 对提示和模型配置进行实验。
详细了解 Gemini 模型
了解适用于各种使用场景的模型及其配额和价格。提供有关 Vertex AI for Firebase 使用体验的反馈