在 2026 年 8 月 19 日至 9 月 18 日期間,我們處理的 GPT Image 2 請求中,大約每 23 個就有 1 個返回 HTTP 400 錯誤。上游安全系統在渲染出任何像素之前就拒絕了這些請求,且大多數提示詞(prompt)在撰寫者看來並無害處。這份 GPT Image 審核調整指南來自 TokenLab 圖像 API 的 30 天生產數據,以及 OpenAI 的官方圖像生成文檔。觸發因素高度集中,解決方案是重寫提示詞而非重試。文中引用的數字均為平台匯總統計數據;未複製任何客戶內容。
重點摘要
- 在 30 天的窗口期內,TokenLab 上約 4.3% 的 GPT Image 任務(約每 23 個中就有 1 個)被上游安全系統拒絕。
- 參考圖像(reference images)會使封鎖率增加一倍以上:為 8.4%,而純文字生成僅為 3.7%。
- 我們觀察到最強的組合是「未成年相關詞彙」加上「照片級真實感(photorealistic)用語」:約 9.5%,約為基準值的 2.2 倍。
- 在該窗口期內,重試未經修改的提示詞從未成功解除封鎖,且被封鎖的任務會自動退款。
- moderation="low" 可降低對明顯良性、風格化作品的嚴格程度;它絕不會停用非法類別的過濾。
錯誤的實際含義
GPT Image 2 會根據提供商的內容政策檢查每個提示詞、每個輸入圖像以及每個生成的圖像。當過濾器觸發時,請求會失敗並返回 400,穩定的判別依據是錯誤代碼:
{
"error": {
"type": "image_generation_user_error",
"code": "moderation_blocked",
"moderation_details": {
"moderation_stage": "input",
"categories": ["sexual"]
}
}
}
根據官方文檔,moderation_details 是可選的且刻意保持粗略。moderation_stage 會告訴您封鎖是來自您的輸入(input)還是生成的圖像(output)。categories 包含廣泛的公共標籤,例如 harassment(騷擾)、self-harm(自殘)、sexual(性)或 violence(暴力)。它絕不會公開內部的分類器評分。
在 TokenLab 上,相同的事件以兩種形式出現:
- 同步調用(
/v1/images/generations,/v1/images/edits)會立即返回 HTTP 400。 - 異步任務會轉變為
failed狀態,並顯示訊息 "The request was rejected by the safety system."
無論哪種方式,兩個運作事實都很重要。審核封鎖對於相同的內容是確定性的:重試未經修改的請求基本上永遠不會成功。而在 TokenLab 上,審核封鎖的任務被視為失敗任務,因此預扣的配額會自動全額退還。您永遠不需要為被封鎖的生成付費。
三十天的 GPT Image 審核調整數據
在 2026 年 8 月 19 日至 9 月 18 日期間,TokenLab 上約 4.3% 的 GPT Image 任務(約每 23 個中就有 1 個)被上游安全系統拒絕。被封鎖的請求並非均勻分佈,而是集中在幾個模式周圍:
| 信號 | 被封鎖任務 | 其他所有任務 | 解讀 |
|---|---|---|---|
| 提示詞提及未成年人(child, kid, baby, "7-year-old", ...) | 79% | 33% | 最強的單一預測指標 |
| 照片級渲染用語("photorealistic", "real human", "live-action") | 77% | 57% | 放大器,特別是與未成年人結合時 |
| 性相關描述詞(nude, sexy, lingerie, 身體焦點用語) | 43% | 17% | 強預測指標 |
| 通用動作/暴力詞彙(battle, sword, explosion) | ~50% | ~50% | 本身無預測價值 |
來自同一窗口期的另外三個發現:
- 參考圖像會增加風險。 例如,帶有輸入/參考圖像的任務封鎖率為 8.4%,而純文字生成為 3.7%,高出一倍以上。圖像的審核與文字一樣嚴格。
- 長提示詞更容易失敗。 被封鎖的提示詞平均約 3,600 個字符,超過一半超過 2,000 個字符。每一個額外的子句都會增加分類器的處理面積。
- 重試從未成功。 窗口期內每個被封鎖的任務最終都以失敗狀態結束;沒有一個通過重新提交相同的輸入而成功。且每一個任務都自動獲得了退款。
我們觀察到最常被封鎖的工作流程是:未成年人的照片級真實感角色設計表:「選角參考」風格的提示詞,描述一個帶有超真實渲染、精確身體比例和服裝說明的兒童角色。將未成年相關詞彙與照片級渲染結合的提示詞,封鎖率高達 ~9.5%,是基準率的 2.2 倍。
綜觀被封鎖的群體,幾乎所有的拒絕都屬於以下五個類別之一:
- 未成年人的照片級真實感描繪。 被渲染為「在攝影棚拍攝的真實人類」、「超真實」、「非 CGI,非插畫」的兒童或嬰兒角色。未成年人與照片真實感的結合是圖像審核中防禦最嚴格的界線,即使意圖只是單純的角色表,它也會觸發封鎖。
- 圍繞未成年人的服裝或身體焦點用語。 諸如「未穿衣鎖骨以上特寫」(意指單純的肖像裁切)或兒童角色從頭到腳的身體比例測量等短語。單獨看是無辜的,但綜合起來會被解讀為對未成年人的身體焦點描述。
- 成人角色的性化描述。 針對姿勢、皮膚和內衣的詞彙("lingerie", "nude", "seductive pose"),即使在其他方面是 SFW(適合工作場所)的構圖中也是如此。
- 圖形化的血腥解剖。 描述腐爛的肉體、暴露的器官、開放性傷口或寄生蟲等解剖細節的恐怖和黑暗奇幻提示詞。
- 真實人物的參考圖像。 未成年人的真實照片、皮膚暴露度高的圖像,或作為編輯輸入的類似名人的臉孔。
兩個放大因素使上述所有情況更容易觸發:非常長的提示詞(文字越多,出現不良組合的機會就越多)和負面詞彙列表。像 "no nudity, no sexual content, no gore" 這樣的語句並不會讓分類器放心。它重複了您想要避免的概念,並將其添加到輸入中。描述您想要的,而不是您不想要的。
GPT Image 審核調整指南
這些重寫技巧對應上述數據。(範例僅供說明,非來自客戶流量。)
1. 讓未成年人遠離照片真實感
如果您的故事、漫畫或遊戲需要兒童角色,請以明顯的風格化媒介呈現:
修改前:"Ultra-photorealistic casting photo of a 7-year-old girl, real human
child photographed in a studio, detailed body proportions, collarbone-up
unclothed facial close-up ..."
修改後:"Storybook watercolor illustration of a young girl in Ming-dynasty
dress, shoulder-up portrait, round face, twin hair buns tied with cloth
ribbons, gentle expression, plain white background"
更改媒介(水彩、2D 動畫、3D 卡通、繪本風格)。放棄「真實人類/拍攝」的框架,並完全跳過身體測量。如果您必須描述服裝,請描述角色穿著什麼("wearing a round-collar cloth jacket"),而不是他們沒穿什麼。
2. 刪除負面詞彙列表
用正面措辭替換 "no nudity, no blood, no text, no watermark":"fully clothed", "clean composition", "plain background"。僅保留不命名受限類別的負面詞。"No watermark" 是可以的;"no nudity" 沒有幫助。
3. 精簡提示詞
如果您生成多面板角色表,請勿在每個面板描述中重複相同的風格塊。一個共享的風格句子加上每個面板的具體細節,可以讓您保持在觸發閾值以下,避免意外的觸發組合。
4. 用氛圍而非解剖結構來化解血腥感
修改前:"her body rotting, exposed skull, flesh, pustules and parasites ..."
修改後:"one half serene and maternal, the other half dissolving into shadow
and tidal mist, decay suggested through silhouette and lighting rather than
anatomical detail"
當恐怖感通過情緒、光影和輪廓而非組織級別的描述來傳達時,黑暗奇幻內容可以通過審核。
5. 中和成人內容的關聯性
對於成人角色,將身體和內衣相關的詞彙替換為時尚和情緒語言。使用 "evening gown" 代替 "lingerie",使用 "confident contrapposto" 代替 "seductive pose"。
6. 將參考圖像視為提示詞的一部分
圖像輸入也會被審核,在我們的數據中,它們使封鎖率增加了一倍以上。像處理提示詞文字一樣處理它們:
- 未成年人優先使用風格化參考。 兒童角色的插畫或 3D 渲染比兒童的真實照片安全得多,且通常在角色一致性方面效果同樣好。
- 裁切到重點。 如果您需要臉部以保持一致性,請上傳臉部裁切圖,而不是全身海灘照。更少的皮膚和更少的背景意味著更小的分類器處理面積。
- 移除覆蓋文字和浮水印。 參考圖像上的標題、迷因文字和浮水印字符串會被讀作輸入文字,並可能攜帶您忘記的觸發詞。
- 避免使用真實名人肖像,無論是作為參考圖像還是作為 "in the style of " 提示詞。
GPT Image 編輯 API 支援說明涵蓋了多圖像編輯和異步輪詢背後的請求形式。
審核參數
根據官方文檔,GPT Image 模型接受一個帶有兩個值的 moderation 參數:
auto(預設):標準過濾,限制某些潛在年齡不適當的內容類別。low:限制較少的過濾。
TokenLab 在 /v1/images/generations 和 /v1/images/edits 上都會傳遞此參數:
curl https://api.tokenlab.sh/v1/images/generations \\
-H "Authorization: Bearer \$TOKENLAB_API_KEY" \\
-H "Content-Type: application/json" \\
-d '{
"model": "gpt-image-2",
"prompt": "Storybook watercolor illustration of a young girl in Ming-dynasty dress, shoulder-up portrait",
"size": "1024x1024",
"moderation": "low"
}'
當您的內容明顯良性但仍被標記時,請使用 low。風格化插畫作品是經典案例。兩個警告:low 並非 off(非法類別如 CSAM 始終會被封鎖),且它是一個調節器,而非保證。請先修復提示詞,再考慮使用此參數。
在代碼中處理封鎖
官方指導很明確:image_generation_user_error 失敗是使用者可修正的,不應在未更改請求的情況下重試。我們的數據也證實了這一點:在 30 天的窗口期內,沒有任何被封鎖的任務通過重試而恢復。正確的處理方式:
- 根據
error.code進行區分,而不是訊息文字。只有moderation_blocked(以及一般的image_generation_user_error)意味著「修正輸入」。速率限制和 5xx 錯誤仍然是可以重試的。 - 讀取階段。
moderation_stage: "input"意味著重寫提示詞或更換參考圖像;"output"意味著生成的圖像本身被標記;使用稍微調整過、降低風險的提示詞重新生成通常可以解決問題。 - 保持給終端使用者的訊息通用("This request couldn't be completed due to content safety requirements"),並記錄
moderation_details和請求 ID 以供您自己的調試和支援使用。 - 不要循環。 每個唯一輸入在一次審核封鎖後應中斷電路;重新提交相同的內容會浪費延遲和調試時間,儘管 TokenLab 會退款。
檢查清單
| 您的情況 | 可能的觸發因素 | 解決方案 |
|---|---|---|
| 兒童角色設計表 | 未成年人 × 照片真實感 | 風格化媒介,無身體測量,正面服裝措辭 |
| 照片級真實感成人肖像被封鎖 | 性化描述詞 | 時尚/情緒措辭;考慮 moderation="low" |
| 黑暗奇幻/恐怖生物 | 血腥解剖 | 氛圍和輪廓而非組織細節 |
| 使用參考照片的編輯被封鎖 | 真實人物/皮膚暴露多的輸入圖像 | 裁切更緊湊,使用風格化參考,去除覆蓋文字 |
| 長多面板提示詞被封鎖 | 提示詞處理面積 + 負面列表 | 刪除重複的樣板,刪除負面詞彙列表 |
| 良性風格化作品仍被標記 | 分類器保守性 | moderation="low" |
限制。 上述統計數據是來自 TokenLab 生產流量的 30 天匯總,它們描述的是趨勢而非保證。審核分類器會隨時間變化,同一個提示詞在上游更新後可能會被不同地對待。重寫範例僅為說明性模板,而非客戶數據。在進行批量運行之前,請務必先通過小規模測試來驗證當前行為。
常見問題解答
我需要為被封鎖的生成付費嗎?
不需要。在 TokenLab 上,審核封鎖的任務會失敗,預扣的配額會自動全額退還。
重試相同的提示詞有幫助嗎?
沒有。在 30 天的數據中,沒有一個被封鎖的任務在未經修改的重試中成功。請先更改輸入。
moderation="low" 會停用安全過濾嗎?
不會。它只是降低了限制性;非法內容類別無論如何都會被封鎖。
參考圖像真的會被審核嗎?
是的。提示詞和每個輸入圖像都會被過濾。在我們的數據中,帶有參考圖像的任務封鎖率是純文字生成的兩倍以上。
我可以確切看到觸發了哪個規則嗎?
只能在粗略的 moderation_details.categories 層級看到,且僅在上游包含該資訊時。提供商刻意不公開分類器內部細節。
要嘗試這些模型,請瀏覽圖像模型目錄,查看異步任務和輪詢指南以了解任務生命週期處理,並查看 TokenLab 文檔以獲取當前的請求格式。
在擴展工作流程之前,請創建一個 API 金鑰並運行一個小的探測批次。
來源
- OpenAI image generation documentation觀測於 2026-09-18
- TokenLab production traffic aggregate (Aug 19 - Sep 18, 2026)觀測於 2026-09-18
- TokenLab API documentation觀測於 2026-09-18
