瞭解影片

Gemini 可以回應有關影片的提示。你可以在 Gemini 要求中加入影片,讓 Gemini 瞭解影片內容,並執行相關工作。

影片理解是 Gemini 的多模態輸入內容之一,可將文字與媒體檔案合併。

如要進一步瞭解如何使用 Gemini 瞭解影片內容,以及傳送 API 要求的逐步操作說明,請參閱「傳送多模態提示」。

含影片的提示規格

你可以在 Gemini 的要求中加入影片檔案,支援的影片資料長度上限取決於影片是否含有音訊。Gemini 支援的影片長度上限如下:

  • 有音訊的影片:100 秒
  • 無音訊的影片:120 秒

提示要求最多可包含 10 個影片檔案。

影片必須採用下列其中一種支援的 MIME 類型:

  • AVI:video/avi
  • FLV:video/x-flv
  • MOV:video/mov
  • MPEG:video/mpeg
  • MPG:video/mpg
  • MP4:video/mp4
  • WEBM:video/webm
  • WMV:video/wmv
  • 3GP:video/3gpp

Gemini 對影片有以下規定:

  • 系統會以每秒一格的速率對影片取樣。每個影片影格會轉換為 258 個權杖。
  • 音軌會以視訊影格編碼,並細分為一秒的區塊,每個區塊佔 32 個權杖。影片影格和音訊符記會與時間戳記交錯,時間戳記以七個符記表示。
  • 如果提示只包含一部影片,請將影片放在文字提示之前。

您可以在 REST API 中使用 Chat Completions 端點,並使用 HTTP 用戶端。您可以將影片以 base64 編碼檔案的形式,做為內嵌資料提供給提示要求,也可以上傳影片檔案至儲存空間值區,然後再提出提示要求。

如要進一步瞭解影片的最佳做法限制,請參閱 Google Cloud 說明文件。

如要進一步瞭解 OpenAI,以及 Gemini 在 Google Distributed Cloud (GDC) Air-Gapped 中實作的 Chat Completions 端點,請參閱 https://platform.openai.com/docs/api-reference/chat

根據提示生成影片

以下範例顯示 Gemini Chat Completions API 要求,使用 curl 從影片輸入內容生成文字。

傳送內嵌資料要求

以 base64 編碼檔案的形式,將影片做為內嵌資料提供給提示要求。API 要求包含 Base64 編碼影片的 input_video 欄位。下列範例說明如何傳送 base64 編碼的影片要求:

curl \
  -X POST "https://ENDPOINT:443/v1/projects/PROJECT/locations/PROJECT/chat/completions" \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "Authorization: Bearer $(gdcloud auth print-identity-token)" \
  -d '{
      "model_id": "MODEL_ID",
      "messages": [
        {
          "role": "user",
          "content": [
            {
              "type": "input_video",
              "input_video": {
                "data": BASE64_DATA,
                # Valid formats are avi, flv, mov, mpeg, mpg, mp4, webm, wmv, or 3gpp
                "format": "wmv"
              }
            }
          ]
        }
      ],
    }'

更改下列內容:

  • ENDPOINT:貴機構使用的 API 端點。
  • PROJECT:您的專案 ID。
  • MODEL_ID:要生成回覆的模型端點 ID。
  • BASE64_DATA:影片檔案的 Base64 編碼資料。Base64 編碼資料必須以資料 URI 結構 (RFC 2397) 為前置字元。 因此,Base64 編碼資料的 data 欄位格式為 "data": f"data:video/wmv;base64,{base64_video}"

在要求中傳送影片網址

上傳影片檔案至儲存空間 bucket ,請先提出提示要求。API 要求包含儲存空間 bucket 中影片檔案的 video_url 欄位。下列範例顯示如何傳送影片網址要求:

curl \
  -X POST "https://ENDPOINT:443/v1/projects/PROJECT/locations/PROJECT/chat/completions" \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "Authorization: Bearer $(gdcloud auth print-identity-token)" \
  -d '{
      "model_id": "MODEL_ID",
      "messages": [
        {
          "role": "user",
          "content": [
            {
              "type": "video_url",
              "video_url": {
                "url": "VIDEO_URL",
              }
            }
          ]
        }
      ],
    }'

更改下列內容:

  • ENDPOINT:貴機構使用的 API 端點。
  • PROJECT:您的專案 ID。
  • MODEL_ID:要生成回覆的模型端點 ID。
  • VIDEO_URL:儲存空間值區中影片網址的路徑。 影片網址必須參照儲存在 GDC 儲存空間值區中的影片檔案。詳情請參閱儲存資料

後續步驟