您可以在 Gemini Chat Completions API 要求中加入圖片,執行需要瞭解圖片內容的任務。圖像理解是 Gemini 的多模態輸入內容之一,可將文字與媒體檔案結合。
如要進一步瞭解如何使用 Gemini 瞭解圖片,以及傳送 API 要求的逐步操作說明,請參閱「傳送多模態提示」。
圖片提示的規格
你可以在 Gemini 要求中加入單一或多張圖片。為確保 Google Distributed Cloud (GDC) 實體隔離環境中的 Gemini 模型效能,每個提示最多可使用 100 張圖片。
圖片的像素數量沒有具體限制,不過,系統會縮小較大的圖片,並加上邊框,以符合 768 x 768 的最大解析度,同時保留原始長寬比。每張圖片相當於 258 個權杖。
圖片必須採用下列其中一種圖片資料 MIME 類型:
- HEIC:
image/heic - HEIF:
image/heif - JPG:
image/jpg或image/jpeg - PNG:
image/png - WEBP:
image/webp
您可以在 REST API 中使用 Chat Completions 端點,並使用 HTTP 用戶端或 OpenAI 的 Python 官方 SDK。您可以將圖片以內嵌資料的形式提供給提示要求 (以 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 要求,可使用 Python 或 curl 的 OpenAI 官方 SDK,從文字和圖片輸入內容生成文字。
Python
import openai
client = openai.OpenAI()
model_response = client.chat.completions.create(
model = "MODEL_ID",
messages = [
{
"role": "user",
"content": "What's in this image?"
},
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
# Image URL or base64-encoded data
"url": IMAGE_DATA,
}
}
]
}
]
)
print(model_response)
更改下列內容:
MODEL_ID:要生成回覆的模型端點 ID。IMAGE_DATA:儲存空間中的圖片網址路徑,或 base64 編碼的圖片資料。請根據資料考量下列事項:- Base64 編碼資料必須以資料 URI 結構 (RFC 2397) 為前置字元。
因此,Base64 編碼資料的
url欄位格式為"url": f"data:image/jpeg;base64,{base64_image}"。 - 圖片網址必須參照儲存在 GDC 儲存空間值區中的圖片。因此,圖片網址的
url欄位格式為"url": "s3://path/to/bucket/image"。詳情請參閱「儲存資料」。
- Base64 編碼資料必須以資料 URI 結構 (RFC 2397) 為前置字元。
因此,Base64 編碼資料的
curl
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": "What's in this image?"
},
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
# Image URL or base64-encoded data
"url": IMAGE_DATA
}
}
]
}
],
"max_tokens": 300
}'
更改下列內容:
ENDPOINT:貴機構使用的 API 端點。PROJECT:您的專案 ID。MODEL_ID:要生成回覆的模型端點 ID。IMAGE_DATA:儲存空間中的圖片網址路徑,或 base64 編碼的圖片資料。請根據資料考量下列事項:- Base64 編碼資料必須以資料 URI 結構 (RFC 2397) 為前置字元。
因此,Base64 編碼資料的
url欄位格式為"url": f"data:image/jpeg;base64,{base64_image}"。 - 圖片網址必須參照儲存在 GDC 儲存空間值區中的圖片。因此,圖片網址的
url欄位格式為"url": "s3://path/to/bucket/image"。詳情請參閱「儲存資料」。
- Base64 編碼資料必須以資料 URI 結構 (RFC 2397) 為前置字元。
因此,Base64 編碼資料的