소개
GPT Image 2 이미지 편집은 OpenAI의 gpt-image-2 모델을 가지고 있는 이미지에 적용합니다. 원본 이미지 1~10장과 지시를 주면 옷이나 색을 바꾸고, 제목을 다시 쓰고, 장면의 빛을 바꾸거나, 여러 원본의 인물과 장소를 한 장으로 합칠 수 있습니다. 선택적 PNG 마스크로 다시 그리는 범위를 한 곳으로 제한할 수 있습니다.
가진 소재에 맞춰 모드 고르기
| 가진 것 | 모드 |
|---|---|
| 글로 쓴 브리프 | GPT Image 2 텍스트→이미지 |
| 바꾸고 싶은 이미지 | GPT Image 2 이미지 편집 |
핵심 기능 및 하이라이트
지시로 편집하고 필요하면 마스크로
마스크가 없으면 무엇을 바꿀지 모델이 프롬프트로 판단하고 나머지를 어울리게 다시 그립니다. 마스크가 있으면 투명한 픽셀만 다시 그려지고 나머지는 모두 남습니다.
요청당 최대 10장의 원본
각 원본은 순서로 가리킵니다. 첫 번째 이미지는 인물, 두 번째는 장소, 세 번째는 제품이라고 적으면 모델이 이를 새 이미지 한 장으로 합칩니다.
충실도와 비율 제어
input_fidelity를 high로 하면 얼굴, 원단, 인쇄된 디테일이 원본에 더 가깝게 유지됩니다. 비율 auto는 첫 번째 원본의 형태를 유지하고, 15가지 고정 비율 중 하나를 고르면 결과물이 그 형태가 됩니다.
요청 파라미터
| 파라미터 | 필수 | 설명 |
|---|---|---|
prompt | 예 | 최대 5,000자입니다. 이미지에 넣을 단어는 모두 큰따옴표로 감싸고 위치를 적어 주십시오. 1자 이상 · 5000자 이하 |
image_urls | 예 | 원본 이미지는 1~10장입니다. 프롬프트에서는 순서로 가리키십시오(첫 번째 이미지, 두 번째 이미지). 1개 이상 · 10개 이하 |
mask_url | 아니요 | 첫 번째 원본 이미지와 같은 크기의 PNG로, 선택 사항입니다. 투명한 픽셀이 다시 그릴 영역을 표시하고 불투명한 부분은 그대로 남습니다. |
aspect_ratio | 아니요 | auto(기본값)는 첫 번째 원본 이미지의 비율을 약 150만 화소로 유지하며 크기 단계는 무시합니다. 1:3부터 3:1까지 15가지 중에서 고를 수도 있습니다. |
resolution | 아니요 | 1k(기본값), 2k, 4k 중 하나입니다. 정사각형 이미지는 한 변이 1024, 2048, 2880픽셀이며 단계가 높을수록 장당 요금도 올라갑니다. |
quality | 아니요 | low, medium(기본값), high 중 하나입니다. OpenAI는 출력 토큰으로 과금하므로 같은 크기에서 한 단계 올라갈 때마다 약 4~9배 비싸집니다. |
num_outputs | 아니요 | 요청당 1~10장이며 기본값은 1장입니다. 이미지마다 따로 과금됩니다. |
input_fidelity | 아니요 | low(기본값) 또는 high입니다. high는 원본의 얼굴, 원단, 인쇄된 디테일을 더 충실하게 유지합니다. |
background | 아니요 | auto(기본값) 또는 opaque입니다. OpenAI는 GPT Image 2에서 투명 출력을 제공하지 않습니다. |
output_format | 아니요 | png(기본값), jpeg, webp 중 하나입니다. 요금은 바뀌지 않습니다. |
output_quality | 아니요 | jpeg와 webp의 압축 품질로 0~100 범위입니다. 값이 높을수록 디테일이 더 남고 파일도 커집니다. |
official_fallback | 아니요 | 기본값은 켜짐입니다. 21:9, 9:21, 3:1, 1:3 이외의 비율로, 마스크 없이 input fidelity low, background auto 그대로 medium 품질, 1k 크기의 PNG 1장을 받는 편집 요청은 먼저 이코노미 경로에서 실행됩니다. 기본값: |
요금
출력 이미지 장당 품질, 크기 단계, 비율에 따라 과금합니다. 공식 경로에서는 원본 이미지 한 장마다 출력 장당 고정 요금도 붙습니다. 합계는 제출 전에 견적에 표시됩니다. 21:9, 9:21, 3:1, 1:3 이외의 비율로, 마스크 없이 input fidelity low, background auto 그대로 medium 품질, 1k 크기의 PNG 1장을 받는 편집 요청은 이코노미 경로에서 이코노미 가격으로 시작합니다. Official fallback(기본값은 켜짐)이 켜져 있으면 그 경로가 거부했거나 완료하지 못한 요청은 공식 경로(공식 가격)에서 다시 실행되므로, 견적에는 시작 가격과 최대 금액이 함께 표시됩니다. 거부된 요청은 과금되지 않습니다. 공식 경로에서는 처음 100개를 넘는 긴 프롬프트에 입력 토큰 요금이 요청당 한 번 소액 붙습니다. 중국어·일본어·한국어 글자는 대략 한 글자에 1토큰입니다.
| 사양 | 요금 |
|---|---|
| $0.001816 / 장 |
| $0.001816 / 장 |
| $0.00244 / 장 |
| $0.00244 / 장 |
| $0.002752 / 장 |
| $0.002752 / 장 |
| $0.002872 / 장 |
| $0.002872 / 장 |
| $0.00304 / 장 |
| $0.00304 / 장 |
| $0.003568 / 장 |
| $0.003568 / 장 |
| $0.003736 / 장 |
| $0.003736 / 장 |
| $0.003856 / 장 |
| $0.003856 / 장 |
| $0.004192 / 장 |
| $0.004192 / 장 |
| $0.004456 / 장 |
| $0.004456 / 장 |
| $0.005104 / 장 |
| $0.005152 / 장 |
| $0.005152 / 장 |
| $0.005704 / 장 |
| $0.005704 / 장 |
| $0.005896 / 장 |
| $0.006016 / 장 |
| $0.006016 / 장 |
| $0.006712 / 장 |
| $0.006712 / 장 |
| $0.007312 / 장 |
| $0.007312 / 장 |
| $0.0076 / 장 |
| $0.0076 / 장 |
| $0.008128 / 장 |
| $0.008128 / 장 |
| $0.009304 / 장 |
| $0.009304 / 장 |
| $0.009928 / 장 |
| $0.009928 / 장 |
| $0.011176 / 장 |
| $0.011176 / 장 |
| $0.01192 / 장 |
| $0.01192 / 장 |
| $0.01324 / 장 |
| $0.01324 / 장 |
| $0.016216 / 장 |
| $0.016216 / 장 |
| $0.01396 / 장 |
| $0.01396 / 장 |
| $0.018592 / 장 |
| $0.018592 / 장 |
| $0.020368 / 장 (Official fallback 사용 시: 최대 $0.021472) |
| $0.020368 / 장 (Official fallback 사용 시: 최대 $0.021472) |
| $0.020998 / 장 (Official fallback 사용 시: 최대 $0.023992) |
| $0.020998 / 장 (Official fallback 사용 시: 최대 $0.023992) |
| $0.022 / 장 (Official fallback 사용 시: 최대 $0.028) |
| $0.022 / 장 (Official fallback 사용 시: 최대 $0.028) |
| $0.022864 / 장 (Official fallback 사용 시: 최대 $0.031456) |
| $0.022864 / 장 (Official fallback 사용 시: 최대 $0.031456) |
| $0.023626 / 장 (Official fallback 사용 시: 최대 $0.034504) |
| $0.023626 / 장 (Official fallback 사용 시: 최대 $0.034504) |
| $0.024112 / 장 |
| $0.024112 / 장 |
| $0.025636 / 장 (Official fallback 사용 시: 최대 $0.042544) |
| $0.027448 / 장 (Official fallback 사용 시: 최대 $0.049792) |
| $0.032272 / 장 |
| $0.032272 / 장 |
| $0.03688 / 장 |
| $0.03688 / 장 |
| $0.043072 / 장 |
| $0.043072 / 장 |
| $0.048064 / 장 |
| $0.048064 / 장 |
| $0.050776 / 장 |
| $0.050776 / 장 |
| $0.055432 / 장 |
| $0.055432 / 장 |
| $0.062416 / 장 |
| $0.062416 / 장 |
| $0.0652 / 장 |
| $0.0652 / 장 |
| $0.067984 / 장 |
| $0.067984 / 장 |
| $0.080464 / 장 |
| $0.080464 / 장 |
| $0.086032 / 장 |
| $0.086032 / 장 |
| $0.094288 / 장 |
| $0.094288 / 장 |
| $0.103984 / 장 |
| $0.103984 / 장 |
| $0.11296 / 장 |
| $0.11296 / 장 |
| $0.14272 / 장 |
| $0.14272 / 장 |
| $0.054616 / 장 |
| $0.054616 / 장 |
| $0.07144 / 장 |
| $0.07144 / 장 |
| $0.082936 / 장 |
| $0.082936 / 장 |
| $0.095248 / 장 |
| $0.095248 / 장 |
| $0.096472 / 장 |
| $0.096472 / 장 |
| $0.110728 / 장 |
| $0.110728 / 장 |
| $0.124624 / 장 |
| $0.124624 / 장 |
| $0.127864 / 장 |
| $0.127864 / 장 |
| $0.135064 / 장 |
| $0.135064 / 장 |
| $0.142816 / 장 |
| $0.142816 / 장 |
| $0.168976 / 장 |
| $0.171016 / 장 |
| $0.171016 / 장 |
| $0.19456 / 장 |
| $0.19456 / 장 |
| $0.197104 / 장 |
| $0.197104 / 장 |
| $0.197968 / 장 |
| $0.220456 / 장 |
| $0.220456 / 장 |
| $0.248464 / 장 |
| $0.248464 / 장 |
| $0.259552 / 장 |
| $0.259552 / 장 |
| $0.274216 / 장 |
| $0.274216 / 장 |
| $0.320608 / 장 |
| $0.320608 / 장 |
| $0.342928 / 장 |
| $0.342928 / 장 |
| $0.37588 / 장 |
| $0.37588 / 장 |
| $0.414736 / 장 |
| $0.414736 / 장 |
| $0.456544 / 장 |
| $0.456544 / 장 |
| $0.569656 / 장 |
| $0.569656 / 장 |
활용 사례
완성된 비주얼의 글자 교체와 리스타일
포스터나 표지의 글자, 제품이나 옷의 색을 바꾸고, 승인된 사진은 그대로 둡니다.
참고 이미지로 장면 구성하기
한 사진의 인물을 다른 사진의 장소에 넣거나 따로 찍은 두 사람을 나란히 세울 수 있으며, 레이아웃을 텍스트 프롬프트로 다시 만들 필요가 없습니다.
비주얼의 현지화 버전
사진은 그대로 두고 제목을 시장마다 번역한 한 줄로 바꿉니다. 언어마다 한 번의 편집입니다.
프롬프트 가이드 및 실전 팁
바꿀 것과 남길 것을 함께 적기
먼저 변경 사항을 적고, 그다음 움직이면 안 되는 것(얼굴, 포즈, 빛, 배경, 로고)을 적으십시오. 지키라고 적지 않은 것은 다시 그려질 수 있습니다.
원본에 번호 붙이기
‘첫 번째 이미지의 여성’, ‘두 번째 이미지의 보트’처럼 쓰십시오. image_urls의 순서가 모델이 원본을 구별하는 유일한 단서입니다.
작은 수정에는 마스크 쓰기
물건 하나나 배경 일부만 고칠 때는 첫 번째 원본과 같은 크기의 PNG 마스크가 말로 설명하는 것보다 확실합니다.
구도를 지키려면 auto 그대로
원본의 구도를 유지해야 하는 편집이라면 비율을 auto로 두고, 결과물에 새 형태가 필요할 때만 고정 비율을 고르십시오.
API 빠른 시작
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "openai/gpt-image-2/edit",
"input": {
"aspect_ratio": "auto",
"background": "auto",
"image_urls": [
"https://example.com/reference.png"
],
"input_fidelity": "low",
"num_outputs": 1,
"output_format": "png",
"prompt": "A ceramic teapot on a linen cloth, soft window light, muted palette"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
인증, 전체 스키마, 폴링과 오류 처리는 API 레퍼런스에서 확인하세요.





