在多模態要求中包含大型檔案,並使用 Cloud Storage for Firebase 管理檔案

使用Gemini API Vertex AI in Firebase SDK,您可以提示 Gemini 模型生成文字 根據多模態輸入內容多模態提示可以包含多個模態 例如文字、圖片、PDF、影片和音訊

如果是輸入內容的非文字部分 (例如媒體檔案),您也可以選擇使用 Cloud Storage for Firebase,即可在要求中加入檔案。於 概略瞭解這項功能的注意事項:

  • Cloud Storage for Firebase 可與任何多模態要求 (例如兩者) 搭配使用 以及文字生成和即時通訊等功能)下表中的範例 本指南說明基本的文字和圖片輸入方式

  • 指定檔案的 MIME 類型及其 Cloud Storage for Firebase 網址 要求輸入內容中的名稱 (開頭一律為 gs://)。這些值 系統會自動將中繼資料指派給所有上傳至 Cloud Storage 的檔案 Cloud Storage 也提供目錄同步處理功能 方便您同步處理 VM 目錄與值區

  • 請使用系統支援的檔案類型和網址

,瞭解如何調查及移除這項存取權。


本解決方案指南將說明如何設定 Cloud Storage for Firebase,請參閱: Google Cloud,請從應用程式上傳檔案到 Cloud Storage for Firebase 值區, 並在您的Cloud Storage for Firebase 針對 Gemini API 提出多模態要求

想查看程式碼範例嗎?或者您已經設定好 Cloud Storage for Firebase,現在就能開始透過 多模態要求?

跳至程式碼範例

為何要在應用程式中使用 Cloud Storage for Firebase

Cloud Storage for Firebase 同樣採用快速、安全且 可擴充的基礎架構做為 Google Cloud Storage 來儲存 blob 和檔案 和其用戶端 SDK,是專為行動和網頁應用程式打造。

Vertex AI in Firebase SDK 的要求大小上限為 20 MB。 如果要求過大,您會收到 HTTP 413 錯誤。如果檔案大小超出 要求總請求大小超過 20 MB,然後使用 在多模態要求中加入檔案的 Cloud Storage for Firebase 網址。 不過,如果檔案較小,通常可以透過內嵌資料直接傳遞 (請注意,以內嵌資料形式提供的檔案會編碼成 base64 ,這會增加要求的大小)。

以下是使用 Cloud Storage for Firebase 的其他幾項好處:

  • 您可以讓使用者直接將應用程式中的圖片上傳至 Cloud Storage for Firebase 值區,以便將這些圖片納入 只要在多模態提示中指定檔案的 MIME 類型, Cloud Storage for Firebase 網址 (檔案的 ID)。

  • 您能在使用者需要提供圖片時, 尤其是網路品質不佳或不穩定時更是如此

    • 如果檔案上傳或下載作業中斷,Cloud Storage for Firebase SDK 會從上次中斷的地方,自動重新啟動作業。
    • 使用者可以在沒有使用者的情況下多次使用同一個上傳的檔案 每次有需要時,都要再上傳相同的檔案 (例如 新的多模態要求)。
  • 您可以限制使用者存取權 Cloud Storage for Firebase (透過使用 Firebase Security Rules), 只允許授權使用者上傳、下載或刪除檔案。

  • 您可以透過 Firebase 或「Google Cloud」存取 Bucket 中的檔案, 靈活地執行伺服器端處理 篩選或影片轉碼。Google Cloud StorageAPI

系統支援哪些類型的檔案和網址?

根據以下規定,使用檔案和網址時須符合以下規定 Cloud Storage for Firebase 個含有 Vertex AI in Firebase SDK 的網址:

  • 檔案必須符合 多模態要求的輸入檔案相關規定 最終採用 Vertex AI in Firebase SDK包括相關規定 例如 MIME 類型和檔案大小

  • 檔案必須儲存在 Cloud Storage for Firebase 值區中 (也就是說,Firebase Security Rules 等 Firebase 服務可以存取該值區)。 如果您可以查看 Firebase 控制台, 該值區位於 Cloud Storage for Firebase 值區

  • Cloud Storage for Firebase 值區必須位於下列 Firebase 專案中: 註冊的應用程式。

  • 檔案的 Cloud Storage for Firebase 網址開頭必須是 gs://,也就是 ,以便建構所有 Google Cloud Storage 網址。

  • 檔案的網址不能是「瀏覽器」網址 (例如圖片的網址) 網路上可能找到的連結)。

此外,值區的 Firebase Security Rules 必須允許 授予該檔案的存取權例如:

  • 如果有公開規則 「任何」使用者或用戶端都能存取檔案,並在通話中提供檔案網址 藉助 Vertex AI in Firebase SDK這些規則類型只能用於 而在初步原型設計期間 (除非這些檔案實際上 完全是可以公開存取的檔案)。

  • 如果設下健全的規則 (強烈建議):Firebase 會檢查已登入的使用者,或 用戶端具有足夠的檔案存取權,允許系統呼叫 。

搭配 Vertex AI in Firebase 使用 Cloud Storage for Firebase 網址

步驟 1:設定 Cloud Storage for Firebase

您需要完成的高階工作如下:

  1. 在 Firebase 專案中建立 Cloud Storage for Firebase 值區。

  2. Firebase Security Rules套用至這個值區。Firebase Security Rules 可以提供協助 限制只有授權使用者的存取權,確保檔案安全無虞。

  3. Cloud Storage for Firebase 的用戶端程式庫新增至應用程式。

    請注意,您可以略過這項工作,但必須「一律」 在多模態要求中明確加入 MIME 類型和 Cloud Storage for Firebase 網址值

步驟 2:將檔案上傳至值區

將檔案上傳至值區時,會自動套用 Cloud Storage 將兩項資訊新增至檔案您需要附上 這些這些值儲存在多模態要求中 (如 指南)。

  • MIME 類型:檔案的媒體類型 (例如 image/png)。 Cloud Storage for Firebase 會自動嘗試偵測 MIME 類型 上傳期間,並將該中繼資料套用至值區中的物件不過 您可以選擇在上傳時指定 MIME 類型。

  • Cloud Storage for Firebase 網址:檔案的專屬 ID。 網址的開頭必須是 gs://

步驟 3:在多模態要求中加入檔案的 MIME 類型和網址

將檔案儲存在 Cloud Storage for Firebase 值區後,即可 在多模態要求中加入其 MIME 類型和 Cloud Storage for Firebase 網址。 請注意,以上範例顯示的是非串流的 generateContent 要求,但您必須 也能在直播和聊天室中使用 Cloud Storage for Firebase 網址。

如要在要求中加入檔案,請使用以下其中一種方法:

選項 1:使用儲存空間參考資料加入 MIME 類型和網址

如果您才剛將檔案上傳到值區,並且想要 立即在多模態模型中加入檔案 (透過 Storage 參考資料) 請求。呼叫需要 MIME 類型和 Cloud Storage for Firebase 網址。

選項 2:明確加入 MIME 類型和網址

如果您知道 MIME 類型的值,請使用此選項 Cloud Storage for Firebase 網址,以及如何明確加到 多模態請求呼叫需要 MIME 類型和網址。