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 儲存空間值區中的影片檔案。詳情請參閱儲存資料。