For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
主要導覽

圖像與視覺

瞭解如何理解或生成圖像。

概覽

近期的語言模型能處理並分析圖像輸入,這項能力稱為 視覺。GPT Image 模型能根據文字與圖像輸入建立新圖像,或編輯現有圖像。

根據你要分析還是生成圖像,選擇適合的端點:

API支援的使用案例
Responses API分析圖像,或使用圖像生成工具生成及編輯圖像
Images API生成圖像作為輸出,也可選擇使用圖像作為輸入
Chat Completions API分析圖像並生成文字回覆

如要進一步瞭解我們的模型支援哪些輸入和輸出模態,請參閱模型頁面

生成或編輯圖像

使用 Images API 時,選擇 gpt-image-2.5-sunburst,即可根據文字生成圖像或編輯現有圖像。使用 Responses API 時,請選擇支援圖像生成工具的主系列模型;工具會負責選擇 GPT Image 模型。

使用 Responses 生成圖像
from openai import OpenAI
import base64

client = OpenAI()

response = client.responses.create(
    model="gpt-6-astra",
    input="Generate an image of gray tabby cat hugging an otter with an orange scarf",
    tools=[{"type": "image_generation"}],
)

# Save the image to a file
image_data = [
    output.result
    for output in response.output
    if output.type == "image_generation_call"
]

if image_data:
    image_base64 = image_data[0]
    with open("cat_and_otter.png", "wb") as f:
        f.write(base64.b64decode(image_base64))

你可以參閱圖像 生成指南,進一步瞭解圖像生成。

運用世界知識生成圖像

GPT Image 模型不需要參考圖像,也能運用對世界的知識。例如,要求生成一櫃半寶石的提示詞,可以產生包含紫水晶、粉晶和玉石等可辨識寶石的場景。

分析圖像

使用具備視覺能力的模型描述圖像、讀取可見文字,並回答關於物件、形狀、顏色或紋理的問題。使用模型的回答時,請將其限制納入考量。

將圖像提供給模型作為輸入

透過下列任一方式提供要分析的圖像:

  • 提供圖像檔案的完整 URL
  • 以 Base64 編碼的資料 URL 提供圖像
  • 提供檔案 ID(使用 Files API 建立)

你可以在 content 陣列中加入多張圖像,在單一請求中提供多張圖像作為輸入。不過請注意,圖像會計入 Token 用量,並據此計費。

分析圖像內容
from openai import OpenAI

client = OpenAI()

response = client.responses.create(
    model="gpt-6-astra",
    input=[
        {
            "role": "user",
            "content": [
                {"type": "input_text", "text": "what's in this image?"},
                {
                    "type": "input_image",
                    "image_url": "https://api.nga.gov/iiif/a2e6da57-3cd1-4235-b20e-95dcaefed6c8/full/!800,800/0/default.jpg",
                },
            ],
        }
    ],
)

print(response.output_text)

圖像輸入需求

使用支援的圖像檔案,並確保圖像足夠清晰,讓模型能夠分析。

需求支援的輸入
檔案類型PNG(.png)、JPEG(.jpeg.jpg)、WEBP(.webp)及非動畫 GIF(.gif
請求大小每個請求的酬載總大小上限為 512 MB
圖像數量每個請求最多可包含 1,500 張圖像

對於以圖像區塊為基礎的圖像輸入,套用所選模型與 detail 等級的尺寸調整規則後,API 支援每張圖像最多 30,000 個圖像區塊。此上限適用於所有支援的細節等級,並且個別套用至每張圖像,而非整個請求的圖像區塊總數。

各模型和細節等級所指定的較低尺寸調整額度仍然適用。處理後超過 30,000 個圖像區塊上限的圖像會遭到拒絕,系統不會自動調整尺寸以符合此上限。請縮小圖像尺寸後再試一次。

圖像 Token 與提示詞的其餘內容也必須符合模型的輸入及上下文限制。Token 估算值並不保證請求符合所有輸入限制。圖像使用必須遵守我們的使用政策

選擇圖像細節等級

detail 參數控制圖像的前置處理。支援的值因模型而異,包括 lowhighoriginalauto。如果省略此參數,Responses API 和 Chat Completions API 都會預設使用 auto。對應的處理方式請參閱模型尺寸調整表

{
    "type": "input_image",
    "image_url": "https://api.nga.gov/iiif/a2e6da57-3cd1-4235-b20e-95dcaefed6c8/full/!800,800/0/default.jpg",
    "detail": "original"
}

請依照下列指引選擇細節等級:

細節等級最適合
low概略理解圖像。尺寸調整方式與 Token 用量因模型而異;low 使用的 Token 不一定比 high 少。
high不需要精確原始圖像座標時,進行標準的高傳真度圖像理解。
original在模型支援的情況下,處理尺寸大、內容密集、對空間位置敏感或用於電腦操作的圖像。
auto使用模型尺寸調整表中列出的模型預設尺寸調整方式。

對於需要精細視覺細節或精確座標的任務,例如光學字元辨識(OCR)、小型物件偵測或電腦操作,請在支援的情況下使用 "detail": "original"。原始細節等級仍可能調整圖像尺寸,以符合模型的像素尺寸上限或尺寸調整的圖像區塊額度,但不會為了符合獨立的 30,000 個圖像區塊拒絕門檻而調整尺寸。對於座標敏感的任務,請先將圖像調整至符合上述限制的尺寸再傳送,並將傳回的座標對應回原始圖像。座標處理方式請參閱電腦指南

模型的尺寸調整方式

下表彙整了通用視覺模型的尺寸調整方式。其他模型及特定用途的變體可能採用不同限制。所有尺寸調整都會維持長寬比,且不會放大小尺寸圖像。

模型系列 支援的細節等級 圖像區塊與尺寸調整方式
gpt-6-astra

lowhighoriginalauto

low 將圖像尺寸限制在 512 × 512 像素以內。high 最多允許 2,500 個圖像區塊,且單邊尺寸上限為 65,535 像素。兩項限制均適用。 original 會保留圖像的原始尺寸,但若圖像 任一邊超過 65,535 像素,就會縮小以符合 該限制。若調整後的圖像需要超過 30,000 個圖像區塊,API 就會拒絕 請求,而不會再調整圖像尺寸以符合圖像區塊上限。 auto 採用與 original 相同的尺寸調整方式。

gpt-5.6-solgpt-5.6-terragpt-5.6-luna

lowhighoriginalauto

low 會將圖像限制在 512 × 512 像素內。high 會將圖像限制在 2048 × 2048 像素及 2,500 個圖像區塊內。original 會保留圖像尺寸,但任一邊超過 65,535 像素的圖像 會縮小至符合該上限。如果處理後的 圖像需要超過 30,000 個圖像區塊,API 就會拒絕 該請求;不會調整圖像尺寸來符合圖像區塊上限。 auto 採用與 original 相同的尺寸調整方式。

gpt-5.5

lowhighoriginalauto

low 會將圖像限制在 512 × 512 像素內。high 最多允許 2,500 個圖像區塊,且任一邊最多為 2048 像素。original 最多允許 10,000 個圖像區塊,且任一邊最多為 6000 像素。這兩項 限制都適用。auto 採用與 original 相同的尺寸調整方式。

gpt-5.4gpt-5.4-minigpt-5.4-nano

lowhighoriginalauto

low 的任一邊上限為 2048 像素,圖像區塊 額度為 6,144 個,因此可能比 high 使用更多 Token。 high 最多允許 2,500 個圖像區塊,且任一邊 最多為 2048 像素。original 最多允許 10,000 個圖像區塊,且 任一邊最多為 6000 像素。這兩項限制都適用。auto 採用 與 high 相同的尺寸調整方式。

gpt-5.2gpt-4.1-mini

lowhighauto

這些細節等級採用相同的尺寸限制:任一邊最多為 2048 像素, 圖像區塊額度為 6,144 個。不支援 original 細節等級。

gpt-5.1gpt-4.1gpt-4ogpt-4o-mini

lowhighauto

low 使用固定的 Token 數量。highauto 採用 以圖像分塊為基礎的尺寸調整規則

計算費用

視覺模型會將圖像輸入轉換為計費的輸入 Token。圖像輸入費用計算器與本節的圖像區塊/分塊規則適用於視覺模型的輸入,不適用於 GPT Image 的圖像生成或編輯。後者的獨立定價請參閱GPT Image 模型輸入

圖像 Token 也會計入每分鐘 Token 數(TPM)限制。計算器依標準輸入費率估算單張圖像的費用,不包含提示詞的其餘內容或模型輸出。

圖像輸入費用計算器

使用圖像輸入費用計算器,依據模型、圖像尺寸與細節等級,估算單張圖像的輸入 Token 數量和費用。

以圖像區塊為基礎的圖像 Token 化處理

部分模型會用 32px x 32px 的圖像區塊覆蓋圖像,藉此進行 Token 化處理。許多模型與細節等級的組合都訂有尺寸調整的圖像區塊額度。API 會先將圖像調整至所選細節等級的像素尺寸上限內,保留長寬比並將像素數四捨五入為整數,且不會放大較小的圖像。接著依下列方式計算 Token 費用:

A. 套用像素尺寸上限後,計算覆蓋整張圖像需要多少個 32px x 32px 的圖像區塊。圖像區塊可以超出圖像邊界。

patch_count = ceil(width/32)×ceil(height/32)

B. 如果所選模型和細節等級指定了尺寸調整的圖像區塊額度,且圖像超出該額度,請按比例縮小圖像。否則,請略過此步驟。調整縮放比例,確保轉換為整數像素尺寸並計算覆蓋圖像所需的區塊數後,仍不超過額度。在計算最終尺寸之前,請保留完整精度。

shrink_factor = sqrt((32^2 * patch_budget) / (width * height))
adjusted_shrink_factor = shrink_factor * min(
  floor(width * shrink_factor / 32) / (width * shrink_factor / 32),
  floor(height * shrink_factor / 32) / (height * shrink_factor / 32)
)

C. 如果步驟 B 調整了圖像尺寸,請將縮放後的最終寬度與高度無條件捨去為整數像素。計算覆蓋處理後的圖像所需的圖像區塊數,這就是套用模型乘數之前的圖像 Token 數量。如果有圖像區塊額度限制,此數量就不會超過該額度。

resized_patch_count = ceil(resized_width/32)×ceil(resized_height/32)

如果此數量超過 30,000 個圖像區塊,API 就會拒絕請求。請先檢查此上限,再套用 Token 乘數。

D. 將圖像區塊數乘以模型的乘數,再無條件進位,即可得出計費的圖像輸入 Token 數量。依模型的輸入單價計算這些 Token 的費用即可;此乘數不適用於提示詞的其他 Token,也不應再次套用至價格。

模型乘數
gpt-6-astra1.2
gpt-5.6-sol1.2
gpt-5.6-terra1.2
gpt-5.6-luna1.2
gpt-5.51.2
gpt-5.41.2
gpt-5.4-mini1.2
gpt-5.4-nano1.2
gpt-5.21.2
gpt-5-mini*1.2
gpt-5-nano*1.5
gpt-4.1-mini1.62
gpt-4.1-nano*(2025-04-14 快照)2.46
o4-mini*1.72

對於 gpt-4.1-mini,此數值適用於 2025-04-14 快照。

* 已棄用並預定停止服務。如需日期與替代模型,請參閱棄用時程。計算工具和上方的模型尺寸調整表均未包含這些模型。

gpt-6-astra 搭配 detail: high 的圖像 Token 計算範例

此組合的單邊尺寸上限為 65,535 像素,圖像區塊額度為 2,500 個,乘數為 1.2×。

  • 一張 1024 × 1024 的圖像需要 32 × 32 = 1024 個圖像區塊,無須調整尺寸。計費的圖像輸入量為 ceil(1024 × 1.2) = 1229 個 Token。
  • 一張 2048 × 2048 的圖像原本需要 64 × 64 = 4096 個圖像區塊。為符合圖像區塊額度,圖像會縮小至 1600 × 1600 像素,即 50 × 50 = 2500 個圖像區塊。預估用量為 ceil(2500 × 1.2) = 3000 個 Token。
  • 一張 4096 × 512 的圖像會維持原始尺寸:需要 128 × 16 = 2048 個圖像區塊,用量為 ceil(2048 × 1.2) = 2458 個 Token。

計費時的浮點數捨入可能導致最終數量與預估值相差一個 Token。

以圖磚為基礎的圖像 Token 化處理

此表中的模型以基礎 Token 數加上圖像圖磚的 Token 數計算用量:

模型基礎 Token 數每個圖磚的 Token 數
gpt-5.170140
gpt-5*70140
gpt-4ogpt-4.185170
gpt-4o-mini28335667
o1*、o1-pro*、o3*75150

* 已棄用並預定停止服務。如需日期與替代模型,請參閱棄用時程。計算工具和上方的模型尺寸調整表均未包含這些模型。

使用 "detail": "low" 時,無論圖像尺寸為何,都只計入模型的基礎 Token 數。使用 "detail": "high""detail": "auto" 時:

  • 維持長寬比,將圖像縮小至可容納於 2048px x 2048px 的正方形內。較小的圖像不會放大。
  • 如果最短邊超過 768px,將其縮小至 768px,並將另一邊的尺寸向下取整。
  • 計算覆蓋圖像所需的 512px 正方形數量。每個正方形都使用該模型的每個圖磚 Token 數。
  • 將模型的基礎 Token 數加到圖磚的 Token 總數中。

GPT Image 模型輸入

GPT Image 模型的生成與編輯功能採用獨立的圖像 Token 定價。視覺計算工具不會估算這些模型的輸入或輸出費用。如需目前的費率,請參閱圖像生成定價;如需生成與編輯工作流程,請參閱圖像生成指南

GPT Image 1

以下輸入 Token 規則適用於 gpt-image-1。採用以圖磚為基礎的圖像尺寸調整方式,但將最短邊縮小至 512px,而非 768px。Token 用量取決於圖像尺寸和 Images API 中的 input_fidelity 參數。

當輸入傳真度設為低時,基礎用量為 65 個圖像 Token,每個圖磚則使用 129 個圖像 Token。 使用高輸入傳真度時,除了上述圖像 Token,我們還會根據圖像的長寬比加上固定數量的 Token。

  • 如果圖像為正方形,我們會額外加上 4160 個輸入圖像 Token。
  • 如果圖像較接近直式或橫式,我們會額外加上 6240 個 Token。

如需圖像輸入 Token 的定價,請參閱圖像定價章節

限制

視覺模型可能會出錯。設計應用程式時,請將以下限制納入考量:

  • 醫療影像:模型不適合判讀 CT 掃描等專業醫療影像,也不應用於提供醫療建議。
  • 非英語:處理包含日文或韓文等非拉丁字母文字的圖像時,模型的表現可能不盡理想。
  • 小字:放大圖像中的文字可提高可讀性。如果模型支援,使用 "detail": "original" 也有助於改善表現。
  • 旋轉:模型可能會誤判旋轉或上下顛倒的文字與圖像。
  • 視覺元素:模型可能難以理解顏色或樣式各異的圖表或文字,例如使用實線、虛線或點線的內容。
  • 空間推理:模型難以處理需要精確空間定位的任務,例如辨識西洋棋棋子的位置。
  • 準確性:在某些情況下,模型可能會生成不正確的描述或圖說。
  • 圖像形狀:模型難以處理全景和魚眼圖像。
  • 中繼資料與尺寸調整:模型不會處理原始檔名或中繼資料。圖像可能會在分析前調整尺寸,即使使用 original 詳細程度也一樣。如需各模型適用的限制,請參閱模型尺寸調整行為
  • 計數:模型可能只會提供圖像中物件的大致數量。
  • CAPTCHA 驗證碼:基於安全考量,我們的系統會封鎖 CAPTCHA 驗證碼的提交。