使用 Gemini-API 打造多輪對話 (聊天)


使用 Gemini API 時,您可以建立跨多輪的任意形式對話。Vertex AI in Firebase SDK 會管理對話狀態,簡化這個程序,因此您不必像使用 generateContentStream()generateContent() 那樣自行儲存對話記錄。

事前準備

如果您尚未完成,請完成 Vertex AI in Firebase SDK 的入門指南。請確認您已完成下列所有操作:

  1. 設定新的或現有的 Firebase 專案,包括使用 Blaze 定價方案和啟用必要的 API。

  2. 將應用程式連結至 Firebase,包括註冊應用程式,以及將 Firebase 設定新增至應用程式。

  3. 新增 SDK,並在應用程式中初始化 Vertex AI 服務和生成式模型。

將應用程式連結至 Firebase、新增 SDK 並初始化 Vertex AI 服務和生成模型後,您就可以呼叫 Gemini API

傳送即時通訊提示要求

如要建立多輪對話 (例如即時通訊),請先呼叫 startChat() 來初始化即時通訊。接著使用 sendMessageStream() (或 sendMessage()) 傳送新的使用者訊息,這也會將訊息和回應附加到即時通訊記錄。

role 與對話內容相關聯時,有兩種可能的選項:

  • user:提供提示的角色。這個值是呼叫 sendMessageStream() (或 sendMessage()) 的預設值,如果傳遞不同的角色,函式就會擲回例外狀況。

  • model:提供回應的角色。這個角色可用於以現有 history 呼叫 startChat()

選擇要串流回應 (sendMessageStream),還是等待回應產生完整結果 (sendMessage)。

串流

您可以不等待模型產生的完整結果,改用串流處理部分結果,藉此加快互動速度。

不使用串流

或者,您可以等待整個結果,而不是串流;只有在模型完成整個產生程序後,系統才會傳回結果。

瞭解如何選擇適合您用途和應用程式的 Gemini 模型,以及選用位置

你還可以做些什麼?

  • 瞭解如何在向模型傳送長提示之前,計算符號
  • 設定 Cloud Storage for Firebase,這樣您就能在多模態要求中加入大型檔案,並透過更有條理的解決方案,在提示中提供檔案。檔案可包含圖片、PDF、影片和音訊。
  • 開始著手準備正式版,包括設定 Firebase App Check,以防範未經授權的用戶端濫用 Gemini API

試用 Gemini API 的其他功能

瞭解如何控管內容產生

您也可以使用 Vertex AI Studio 嘗試使用提示和模型設定。

進一步瞭解 Gemini 模型

瞭解可用於各種用途的模型,以及相關配額和定價


針對使用 Vertex AI in Firebase 的體驗提供意見回饋