TL;DR
GPT Image 2.6 API trong CometAPI cung cấp cho nhà phát triển một tuyến thực tiễn để tạo và chỉnh sửa hình ảnh với hai biến thể: Sunburst và Flare.
Xây dựng tài sản hình ảnh bằng Python và khóa CometAPI: bắt đầu với yêu cầu raster, sau đó thêm đầu ra SVG, ảnh tham chiếu, hoặc một lớp chú thích PNG trong suốt khi tuyến của bạn hỗ trợ chúng. Các ví dụ sử dụng Python 3.10 trở lên và giữ khóa API trên máy chủ của bạn.
Điểm khác biệt quan trọng nhất: một đầu ra PNG trong suốt là tài sản hoàn chỉnh; một tệp PNG markup trong suốt là đầu vào cho biết mô hình cần chỉnh sửa ở đâu.
Key Takeaways
- Dùng GPT Image 2.6 Flare cho các bản nháp nhanh và Sunburst cho các lần chỉnh sửa chi tiết.
- Gửi yêu cầu tạo và yêu cầu chỉnh sửa đến các endpoint Image API tương ứng.
- Dùng SVG cho tài sản vector và PNG trong suốt cho raster cutout.
- Giữ markup tách biệt với ảnh nguồn và khớp kích thước theo định hướng của chúng.
- Xác nhận hỗ trợ tuyến trước khi bật các trường nâng cao trong ứng dụng của bạn.
What Is the GPT Image 2.6 API?
OpenAI giới thiệu GPT Image 2.6 vào ngày 4 tháng 11, 2026. Họ mô hình chấp nhận đầu vào văn bản và hình ảnh để tạo và chỉnh sửa trực quan.
Hai biến thể chia sẻ vai trò định hướng quy trình, nhưng ưu tiên của chúng khác nhau.
What Parameters Does the GPT Image 2.6 API Support?
Bắt đầu với cấu hình nhỏ, rõ ràng.
Đối với chỉnh sửa, yêu cầu cũng cung cấp ảnh nguồn. image-edit schema hỗ trợ tối đa 16 ảnh tham chiếu.
Giữ complexity ở mặc định cho lần tạo đầu tiên. Với một chỉnh sửa mục tiêu như đổi màu một đối tượng, bắt đầu với low và kiểm tra rằng các chi tiết xung quanh vẫn nguyên vẹn.
How Do You Use GPT Image 2.6 API with CometAPI?
Làm theo hướng dẫn thiết lập CometAPI để tạo khóa, rồi lưu khóa vào biến môi trường bên dưới. Bạn cũng sẽ cần các tệp PNG nguồn cục bộ cho ví dụ chỉnh sửa.
Các ví dụ dùng Python requests để hiển thị trực tiếp phần thân JSON và multipart.
Các ví dụ này sử dụng định dạng yêu cầu Image API của OpenAI thông qua CometAPI. Trước khi chạy, hãy xác nhận rằng tuyến CometAPI đã chọn hỗ trợ mô hình và các trường dùng trong ví dụ.
Install the dependencies
pip install requests pillow
Đặt khóa trong shell:
export COMETAPI_KEY="YOUR_COMETAPI_KEY"
Người dùng PowerShell có thể dùng:
$env:COMETAPI_KEY = "YOUR_COMETAPI_KEY"
Create shared request helpers
Lưu các helper dùng chung là image_workflows.py. Đặt mỗi ví dụ workflow trong một script riêng và import các helper nó dùng. Chỉ chạy workflow bạn muốn thử.
import base64
import os
from pathlib import Path
import requests
BASE_URL = "https://api.cometapi.com/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['COMETAPI_KEY']}"}
MODEL = "gpt-image-2.6-flare"
def save_result(response, destination):
response.raise_for_status()
payload = response.json()
Path(destination).write_bytes(
base64.b64decode(payload["data"][0]["b64_json"], validate=True)
)
print(f"Saved: {destination}; usage: {payload.get('usage', 'Not returned')}")
def generate(prompt, destination, **options):
response = requests.post(
f"{BASE_URL}/images/generations", headers=HEADERS,
json={"model": MODEL, "prompt": prompt, "n": 1, "size": "1024x1024",
"quality": "medium", "complexity": "low", **options},
timeout=(15, 300),
)
save_result(response, destination)
Helper này đưa ra lỗi khi phản hồi HTTP không thành công hoặc dữ liệu base64 không hợp lệ. Nó kỳ vọng data[0].b64_json; nếu tuyến của bạn trả về cấu trúc khác, hãy kiểm tra phản hồi đó trước khi thay đổi hàm save.
Giữ bản ghi usage được trả về cùng với đầu ra. Nếu một yêu cầu timeout, hãy kiểm tra trạng thái hoặc bản ghi tính phí của nó trước khi gửi lại: timeout không xác nhận rằng việc tạo đã thất bại.
Generate a first image
Chạy lệnh này sau các helper dùng chung để tạo một ảnh sản phẩm và lưu là cup.png.
Cho các ví dụ chỉnh sửa sau, tạo một bản sao cup.png tên product.png trong cùng thư mục làm việc. Giữ cup.png không đổi làm bản gốc. Bạn cũng có thể dùng ảnh sản phẩm của riêng bạn, lưu là product.png.
Chuẩn bị setting.png riêng: dùng ảnh PNG của phông nền hoặc bối cảnh nơi bạn muốn chiếc cốc xuất hiện, với đủ không gian trống cho sản phẩm. Dùng ảnh bạn có quyền tải lên. Lưu cạnh product.png; yêu cầu tham chiếu nhiều ảnh sử dụng nó cho bối cảnh, không phải là tham chiếu sản phẩm thứ hai.
generate(
prompt=(
"Create a studio product photograph of an unbranded teal "
"ceramic travel cup on a warm cream background. "
"Show one cup, a clean silhouette, and a soft contact shadow. "
"No text or decorative objects."
),
destination="cup.png",
output_format="png",
)
Kiểm tra kết quả theo danh sách chấp nhận ngắn: một chiếc cốc, màu đúng, silhouette sạch, và không có vật thể thừa.
How Do You Generate SVG with GPT Image 2.6?
Dùng đầu ra SVG cho tài sản vector có thể chỉnh sửa. Yêu cầu thông qua endpoint generation với n=1, rồi giải mã phản hồi thành tệp .svg. Đầu ra SVG không hỗ trợ streaming.
generate(
prompt=(
"Design an original minimalist icon of a teal travel cup "
"with a small leaf motif. Use simple closed vector shapes, "
"two flat colors, and generous negative space. "
"No text, gradients, photographs, or background scenery."
),
destination="cup-icon.svg",
output_format="svg",
)
Một bài kiểm tra chấp nhận SVG hữu ích vượt quá việc chỉ mở tệp:
- Kiểm tra biểu tượng ở kích thước nhỏ và lớn.
- Kiểm tra liệu hình khối và màu có dễ chỉnh sửa không.
- Xác nhận rằng kết quả phù hợp với hệ thống hình ảnh dự định.
- Kiểm tra XML trước khi nhúng SVG do bên ngoài cung cấp vào ứng dụng.
Đừng gửi một SVG trở lại như đầu vào chỉnh sửa raster. Giữ quy trình chỉnh sửa vector và chỉnh sửa ảnh tách biệt.
How Do You Create Transparent PNG Assets with GPT Image 2.6?
Đối với cutout, yêu cầu đầu ra PNG và nền trong suốt. Ví dụ transparent-logo chính thức cũng nhấn mạnh các cạnh alpha sạch và không có họa tiết bàn cờ vẽ tay.
generate(
prompt=(
"Create a single teal ceramic travel cup as an isolated "
"e-commerce asset. Center the entire cup with generous padding. "
"Keep clean edges and a fully transparent background. "
"No floor, backdrop, checkerboard pattern, or text."
),
destination="cup-transparent.png",
output_format="png",
background="transparent",
)
Xác thực tính trong suốt thực sự:
from PIL import Image
with Image.open("cup-transparent.png") as image:
alpha = image.convert("RGBA").getchannel("A")
minimum, maximum = alpha.getextrema()
if minimum == 255:
raise RuntimeError("The output contains no transparent pixels.")
if maximum == 0:
raise RuntimeError("The output is entirely transparent.")
print("The output contains visible content and transparency.")
Điều này phát hiện ảnh mờ giả dạng cutout. Nó không đánh giá chất lượng cạnh; hãy kiểm tra tài sản trên cả nền sáng và tối.
How Do You Edit Images with Multiple GPT Image 2.6 References?
Gán cho mỗi tham chiếu một vai trò cụ thể. Trong ví dụ này, ảnh đầu tiên cung cấp danh tính sản phẩm và ảnh thứ hai cung cấp bối cảnh mong muốn.
with (
open("product.png", "rb") as product,
open("setting.png", "rb") as setting,
):
response = requests.post(
f"{BASE_URL}/images/edits",
headers=HEADERS,
data={
"model": "gpt-image-2.6-sunburst",
"prompt": (
"Use the cup in the first image as the exact product "
"reference. Use the second image only for the setting. "
"Place the cup naturally in that setting. Preserve its "
"silhouette, lid, color, and printed details. "
"Do not copy other products from the second image."
),
"quality": "high",
"complexity": "medium",
"output_format": "png",
},
files=[
("image[]", ("product.png", product, "image/png")),
("image[]", ("setting.png", setting, "image/png")),
],
timeout=(15, 300),
)
save_result(response, "product-in-setting.png")
Ví dụ multipart sử dụng image[]. Yêu cầu chỉnh sửa JSON dùng mảng images; đừng trộn hai cách mã hóa.
Để thử nghiệm có thể lặp lại, giữ thứ tự tham chiếu cố định. So sánh sản phẩm gốc với đầu ra ở độ phân giải đầy đủ, đặc biệt là tay cầm, nhãn, các cạnh và phản chiếu.
How Does Transparent PNG Markup Work in GPT Image 2.6?
Markup là một lớp chú thích. Vẽ một vòng tròn hoặc hướng dẫn trực quan khác trên một PNG trong suốt riêng, rồi gửi tệp đó cùng với ảnh gốc.
Quy trình markup áp dụng chú thích cho ảnh đầu vào đầu tiên. Lớp phủ phải khớp kích thước theo định hướng của ảnh, chứa pixel trong suốt, và tách biệt với ảnh gốc. Đừng kết hợp markup với mask hoặc prompt_rewriter.
Bản demo của OpenAI cho thấy một chiếc bình được đánh dấu:

Kết quả chỉnh sửa thay đổi chiếc bình:

Đây là ảnh demo chính thức, không phải đầu ra từ mã bên dưới.
Prepare an annotation layer
Khung giới hạn bên dưới xác định ellipse chú thích. Điều chỉnh tọa độ để bao quanh đối tượng bạn muốn chỉnh sửa, sau đó kiểm tra lớp phủ trước khi gửi.
from PIL import Image, ImageDraw, ImageOps
with Image.open("product.png") as source:
oriented = ImageOps.exif_transpose(source).convert("RGBA")
oriented.save("product-oriented.png")
overlay = Image.new("RGBA", oriented.size, (0, 0, 0, 0))
draw = ImageDraw.Draw(overlay)
width, height = oriented.size
region = (
int(width * 0.25),
int(height * 0.15),
int(width * 0.75),
int(height * 0.85),
)
draw.ellipse(region, outline=(255, 0, 0, 255), width=6)
overlay.save("markup.png")
Submit the guided edit
with (
open("product-oriented.png", "rb") as source,
open("markup.png", "rb") as markup,
):
response = requests.post(
f"{BASE_URL}/images/edits",
headers=HEADERS,
data={
"model": MODEL,
"prompt": (
"Change the body of the cup inside the red circle "
"to matte cobalt blue. Preserve the lid, shape, "
"lighting, and surrounding scene. "
"Remove the annotation from the finished image."
),
"quality": "medium",
"complexity": "low",
"output_format": "png",
},
files={
"image": ("product.png", source, "image/png"),
"markup": ("markup.png", markup, "image/png"),
},
timeout=(15, 300),
)
save_result(response, "cup-edited.png")
Lựa chọn thiết kế quan trọng là chỉ rõ cả thay đổi yêu cầu và các chi tiết cần giữ. Một chú thích xác định mục tiêu; văn bản định nghĩa thao tác.
GPT Image 2.6 API Pricing: Token Rates and SVG Costs
Cả hai biến thể có mức giá token OpenAI được công bố như sau.
Đây là mức giá OpenAI, không phải báo giá CometAPI đã xác minh.
Đối với một yêu cầu không cache, phép tính tương ứng là:
Cost =
(text input tokens × $5
+ image input tokens × $8
+ image output tokens × $30)
÷ 1,000,000
Ví dụ, một yêu cầu raster dùng 1,000 token đầu vào văn bản, không có token đầu vào hình ảnh, và 2,000 token đầu ra hình ảnh sẽ tốn $0.065.
Đối với GPT Image 2.6 API trong CometAPI, dùng mức giá hiển thị cho tuyến đã chọn và xem lại khoản phí ghi nhận cho yêu cầu của bạn. Các mức OpenAI ở trên là phép tính tham chiếu, không phải báo giá CometAPI.
Một chỉ số kinh doanh hữu ích là:
Cost per accepted asset =
total workflow spending ÷ number of approved assets
Bao gồm các lần tạo bị từ chối và vòng chỉnh sửa trong tử số.
How Do You Migrate an Existing Image Workflow to GPT Image 2.6?
Nếu bạn đã dùng GPT Image 2.5, hãy cập nhật trước định danh mô hình và giữ endpoint và xử lý phản hồi rõ ràng. Chỉ thêm các định dạng đầu ra tùy chọn sau khi một yêu cầu cơ bản thành công.
Đặt model="gpt-image-2.6-flare" hoặc model="gpt-image-2.6-sunburst" thay vì dựa vào mô hình mặc định. Giữ tệp đầu vào và prompt hiện có trong khi kiểm tra phản hồi đầu tiên.
Đối với SVG, dùng endpoint generation, lưu byte đã giải mã với phần mở rộng .svg, và bỏ streaming. Đối với chỉnh sửa raster, giữ ảnh nguồn trong yêu cầu edit. Chỉ thêm markup sau khi chuẩn bị một lớp phủ trong suốt riêng.
Cập nhật lớp phục vụ tệp của bạn nữa: tài sản SVG và PNG cần kiểu media khác nhau. Giữ nguồn gốc và các bản chỉnh sửa đã được phê duyệt. Bắt đầu mỗi chỉnh sửa mới từ phiên bản chứa các thay đổi bạn muốn giữ.
Conclusion
Bắt đầu với ví dụ ảnh sản phẩm, rồi chọn quy trình phù hợp với đầu ra của bạn: SVG cho đồ họa vector có thể chỉnh sửa, PNG trong suốt cho cutout, ảnh tham chiếu để kết hợp đầu vào trực quan, hoặc markup cho thay đổi có mục tiêu. So sánh Flare và Sunburst bằng cùng prompt và cài đặt, và theo dõi chi phí trên mỗi tài sản được chấp nhận.
FAQ
How should I handle a GPT Image 2.6 request timeout?
Timeout có thể xảy ra khi máy chủ vẫn đang xử lý yêu cầu. Lưu request ID và kiểm tra nhật ký yêu cầu của nhà cung cấp trước khi thử lại để tránh công việc và chi phí trùng lặp.
Why does my application fail to save the returned image?
Helper kỳ vọng phản hồi JSON chứa data[0].b64_json. Trước tiên hãy kiểm tra trạng thái HTTP và cấu trúc phản hồi. Nếu tuyến của bạn trả về một URL ảnh, hãy triển khai quy trình tải xuống URL được tài liệu hóa thay vì đưa URL đó vào bộ giải mã base64. Giữ phần mở rộng đã lưu nhất quán với định dạng đã yêu cầu.
How can I keep edit files from being overwritten?
Lưu nguồn, lớp phủ và mỗi đầu ra dưới các tên riêng. Ví dụ, dùng product-source.png, product-markup.png, và product-edit-01.png. Lưu prompt bên cạnh đầu ra. Điều này cho phép bạn xem lại một bản chỉnh sửa mà không mất bản gốc hoặc vô tình tải lên bản xem trước có chú thích làm nguồn.
What should I check before embedding a generated SVG?
Mở tài sản trong trình kết xuất mục tiêu và kiểm tra XML của nó bằng các công cụ xác thực SVG thông thường của bạn. Kiểm tra kích thước, clipping, đường dẫn, và bất kỳ văn bản nào trước khi phát hành. Áp dụng chính sách làm sạch SVG của ứng dụng, phục vụ với kiểu media đúng, và xác minh rằng nó vẫn dễ đọc ở kích thước nhỏ nhất dùng trong giao diện của bạn.

