Extensions/ComfyUI-OpenAI-Image-API
ComfyUI Extension

ComfyUI-OpenAI-Image-API

ComfyUI custom node for direct OpenAI image generation API calls using user-provided API key, with automatic text-to-image/image-to-image switching. (Description by CC)

By fudosanit·Created 4 months ago·Updated 4 months ago· 0
fudosanit/ComfyUI-OpenAI-Image-API
Nodes
On cloudLocal install
Stars0
Updated4 months ago
Readme

ComfyUI-OpenAI-Image-API

OpenAI の画像生成 API を、ユーザー指定の API key で直接呼び出す ComfyUI カスタムノード。

入力画像の有無で text-to-image / image-to-image を自動切替する 1 ノード構成。

参考 API ドキュメント:

  • https://developers.openai.com/api/docs/guides/image-generation

インストール

cd ComfyUI/custom_nodes
git clone https://github.com/fudosanit/ComfyUI-OpenAI-Image-API.git
cd ComfyUI-OpenAI-Image-API
pip install -r requirements.txt   # 実質 requests のみ

ComfyUI を再起動するとカテゴリ OpenAI にノードが現れます。

ノード

OpenAI Image t2i/i2i (OpenAI API) — OpenAIImage

| 入力 | 内容 | |------|------| | api_key | OpenAI API key (パスワード入力) | | prompt | プロンプト | | model | gpt-image-1 / -mini / gpt-image-2 / gpt-image-1.5 / dall-e-3 / dall-e-2 | | size | auto / 1024x1024 / 1536x1024 / 1024x1536 / 2048x2048 / 1792x1024 / 1024x1792 / 512x512 / 256x256 | | quality | auto / low / medium / high (gpt-image) / standard / hd (dall-e) | | background | auto / opaque / transparent (gpt-image のみ) | | n | 出力枚数 (1–10) | | image (任意) | 接続あり → i2i (/v1/images/edits)、接続なし → t2i (/v1/images/generations) |

出力: IMAGE, STRING (revised_prompt)

モデル別の挙動の自動調整

  • gpt-image-* の場合: response_format パラメータを送らない (gpt-image は受け付けない)
  • dall-e-* の場合: response_format=b64_json を明示
  • background は gpt-image でのみ送信
  • auto 値はリクエストから除外して API 側のデフォルトに任せる

無効な組み合わせ (例: dall-e-2 で 1536x1024) は OpenAI 側のエラーとして そのままノードに返ってきます。

エラーハンドリング

OpenAI のエラー (Moderation / 認証 / 課金枠 / レート制限など) は 種類ごとに分類し、ComfyUI の赤バナーに次のように表示されます:

[OpenAI Image t2i] OpenAI Content Moderation (HTTP 400, code=moderation_blocked): Your request was rejected as a result of our safety system.
[OpenAI Image i2i] OpenAI Auth Error (HTTP 401, code=invalid_api_key): Incorrect API key provided.
[OpenAI Image t2i] OpenAI Rate Limit / Quota (HTTP 429, code=insufficient_quota): You exceeded your current quota.

詳細はコンソールログ (ComfyUI-OpenAI-Image-API ロガー) にも WARNING で出力されます。

⚠️ API key の取り扱い注意

  • ノードの api_key フィールドは UI 上はマスク表示されますが、保存されたワークフロー JSON にはプレーンテキストで残ります
  • ワークフローを共有・公開する前に、必ず api_key 欄を空にしてください。

ライセンス

MIT