OpenAI
GPT Image 2
gpt-image-2/text-to-image
OpenAI의 이미지 생성 및 편집 모델로, 사진 수준의 사실감, 고정밀 텍스트 렌더링, 네이티브 4K 출력을 특징으로 하며 텍스트가 포함된 상업용 소재와 제품 이미지에 적합합니다
gpt-image-2/text-to-image 사용해 보기
입력
작품 갤러리
모든 작품 보기출력
image가격
gpt-image-2/text-to-image per image
| 사양 | 단가 |
|---|---|
| 1K | $0.030 |
| 2K | $0.040 |
| 4K | $0.060 |
gpt-image-2/text-to-image @beta per image
| 사양 | 단가 |
|---|---|
| With Reference Resources | $0.020 |
gpt-image-2/text-to-image @ext per image
포지셔닝 소개
gpt-image-2는 OpenAI의 텍스트-이미지 생성 모델로, 상업용 수준의 시각 자료를 안정적으로 제작해야 하는 개발자를 대상으로 합니다. 복잡한 프롬프트에 담긴 여러 제약 조건을 잘 반영하며, 텍스트가 포함된 포스터·패키지·레이아웃에서도 비교적 깔끔한 조판을 유지하고, 1K부터 4K 해상도와 다양한 화면 비율을 지원합니다. HiAPI.ai 통합 인터페이스로 프롬프트 한 편만 전달하면 이미지를 생성하므로, 디자인 도구·마케팅 소재 파이프라인·콘텐츠 제작 백엔드에 이미지 생성 기능을 넣으려는 팀에 적합합니다.
핵심 특징
- 복잡한 프롬프트 준수도 우수——GPT 시리즈의 의미 이해 능력을 이어받아, 주체·스타일·텍스트·레이아웃 제약을 동시에 담은 프롬프트도 의도대로 이미지를 생성합니다.
- 텍스트 포함 화면 렌더링이 더 안정적——간판, 패키지, 레이아웃 유형의 텍스트 콘텐츠를 잘 재현하고 조판하여 생성 후 글자 수정 작업을 줄입니다.
- 해상도와 화면 비율 폭넓게 지원——1K, 2K, 4K 출력과 1:1부터 21:9까지 십여 가지 비율을 지원해, 한 번의 연동으로 다양한 게재 규격에 대응합니다.
- 한 번의 호출로 여러 버전 생성——한 번에 여러 장의 결과를 생성할 수 있어 동일한 프롬프트로 안안 비교와 스타일 탐색을 하기 좋습니다.
기능 설명
텍스트 프롬프트로 이미지 생성: 최대 20000자 길이의 프롬프트를 전달하면 이미지를 생성하므로, 자연어 설명을 바로 사용 가능한 시각 자료로 전환하기에 적합합니다.
다중 해상도 및 다중 화면 비율 출력: 1K, 2K, 4K 중에서 선택하고 게재 위치에 맞춰 가로·세로 비율을 지정할 수 있습니다. auto 비율과 9:21, 3:1 같은 극단적 비율은 1K로 제한되며, 1:1은 4K를 지원하지 않습니다.
투명 배경 출력: background는 auto, opaque, transparent 세 가지 모드를 지원하며, 투명 배경 이미지는 합성과 오버레이에 바로 사용할 수 있습니다. 이 파라미터는 1K에서만 적용됩니다.
텍스트와 레이아웃 표현: 텍스트가 섞인 이미지-텍스트 혼합 화면을 잘 렌더링하고 조판하여, 완성도 높은 결과물이 필요한 상업용 화면에 적합합니다.
여러 장 결과 동시 반환: 한 번의 프롬프트로 스타일이 일관된 이미지 여러 장을 생성하여 빠르게 버전 비교와 선별을 할 수 있습니다.
적용 시나리오
- 마케팅 팀: 광고 포스터와 키 비주얼 생성——캠페인 주제와 레이아웃 요구사항을 입력하면 게재나 2차 보정에 바로 쓸 수 있는 캠페인 키 비주얼을 제작합니다.
- 이커머스 운영: 상품 이미지와 제품 사진 스타일 렌더링——상품 설명을 입력으로 사진 스타일의 제품 이미지를 생성해 상세 페이지, 진열 이미지, 소셜 소재에 활용합니다.
- 디자인 팀: 텍스트가 포함된 패키지와 레이아웃 시안——카피와 이미지-텍스트 관계를 입력하면 다국어 텍스트가 포함된 패키지, 간판, 레이아웃 디자인 시안을 제작합니다.
- 콘텐츠 플랫폼: 시안 다중 버전 반복——동일한 프롬프트로 이미지를 대량 생성해 스타일을 탐색하고, 후보 시안을 검토에 넘긴 뒤 최종 확정합니다.
제한 사항과 모델 선택 제안
이미지만 출력하며 영상 등 다른 모달리티는 지원하지 않습니다. 공식적으로 생성 속도는 보통 수준으로 평가되어 지연에 매우 민감한 실시간 인터랙션 시나리오에는 적합하지 않습니다. 고해상도와 대량 생성은 소요 시간을 늘리고 호출 비용을 높이므로 게재 규격에 맞춰 균형을 잡아야 합니다. 정확한 텍스트가 포함된 화면은 여전히 사람이 교정하는 것을 권장합니다. 복잡한 장면 구성 추론이나 극한의 생성 속도가 필요하다면 다른 모델을 별도로 검토해야 합니다. HiAPI.ai에는 이 시리즈의 이미지-투-이미지 라인도 있으므로 기존 이미지를 입력으로 써야 할 때는 해당 라인으로 전환할 수 있습니다. 과금은 장수 기준으로 계산되며, 구체적인 금액은 가격 패널을 기준으로 합니다.
새소식
변경 이력 보기 →- 파라미터 변경 gpt-image-2에 1K / 2K / 4K 해상도 옵션 추가
자주 묻는 질문
모든 질문 보기 →-
GPT Image 2란 무엇인가요?
GPT Image 2는 OpenAI의 텍스트-이미지 생성 모델로, 포스터, 지식 카드, 제품 비주얼, 그리고 명확한 텍스트와 레이아웃 요구 사항이 포함된 이미지 생성에 적합합니다.
-
GPT Image 2와 GPT Image 2.0은 같은 모델인가요?
GPT Image 2.0은 흔히 쓰이는 검색 약칭입니다. GPT Image 2 페이지와 API 문서에 나와 있는 정확한 모델 ID를 사용하세요.
-
GPT Image 2 API는 어떤 엔드포인트와 모델 ID를 사용하나요?
POST /v1/tasks로 요청을 보내고, 텍스트-이미지 생성의 경우 model을 gpt-image-2/text-to-image로 설정하며 input에 prompt, aspect_ratio, resolution을 전달합니다. 인터페이스는 먼저 taskId를 반환하고, 이후 작업 조회 또는 callback을 통해 최종 이미지를 가져옵니다.
-
GPT Image 2는 어떻게 사용하나요?
Playground에서 주체, 장면, 레이아웃, 반드시 포함해야 할 텍스트를 명시한 뒤 화면 비율, 해상도, 배경을 선택하고 실행을 클릭하여 결과를 확인하세요.
생성 작업 제출
https://api.hiapi.ai/v1/tasks 헤더
Authorizationstring필수계정 API 키. 모든 요청에 필수입니다. 예: Bearer YOUR_HIAPI_API_KEY. API 키 받기
Content-Typestring선택요청 본문은 항상 JSON으로 파싱됩니다. 전송 시 application/json(charset 포함 가능)만 허용되며, 다른 값은 415를 반환합니다. 예: application/json.
Idempotency-Keystring선택멱등 키. 최대 255바이트. 같은 계정에서 같은 키의 재시도는 태스크를 한 번만 생성하며, 재전송 시 최초의 taskId를 반환합니다.
네트워크 타임아웃이나 클라이언트 자동 재시도 시 같은 키로는 태스크를 한 번만 생성하고 이중 과금되지 않습니다(범위 = API 키의 계정). 업무 고유 식별자(예: "order-42")를 키로 사용할 것을 권장합니다. 같은 키 재전송 시 최초 taskId를 반환하며, 키는 첫 제출 후 24시간 뒤 만료됩니다. 자세한 시나리오 표는 통합 비동기 API 소개 페이지를 참고하세요.
본문
modelstring필수현재 고정 값: gpt-image-2/text-to-image
routestring선택현재 고정 값: default
inputobject필수
gpt-image-2/text-to-image 및 루트 default의 비즈니스 파라미터 객체. 아래 파라미터 표를 참조하세요.
promptstring필수minLength 1maxLength 20000텍스트 프롬프트, 필수, 최대 길이 20000자.
backgroundstring선택배경 모드, 1K 해상도에서만 이 파라미터를 지원합니다.
autoopaquetransparentresolutionstring선택기본값: "1K"생성 이미지의 해상도, 기본값 1K. aspect_ratio가 auto일 때는 1K만 지원하며, 1:1은 4K를 지원하지 않습니다. aspect_ratio가 3:1/1:3/9:21일 때는 1K만 지원합니다. background가 auto/opaque/transparent일 때는 1K만 지원합니다.
1K2K4Kaspect_ratiostring선택기본값: "auto"생성 이미지의 가로세로 비율, 기본값 auto. 생략하거나 auto로 설정할 경우 1K 해상도만 지원합니다.
auto1:13:22:34:33:45:44:5전체 보기(8개)
16:99:162:11:23:11:321:99:21callbackobject선택
종료 상태 알림 설정. 생략하면 콜백이 전송되지 않으며 호출 측에서 폴링합니다.
생성 시 callback.url을 지정하면 태스크 종료 시 HiAPI가 서비스로 POST하여 폴링이 필요 없습니다. 콜백 본문은 태스크 상세와 동일한 구조입니다. 서명 검증·재시도·멱등에 대한 자세한 내용은 통합 비동기 API 소개 페이지의 콜백 설명을 참고하세요.
urlstring필수callback 사용 시 필수. 태스크 종료 후 이 URL로 POST됩니다. 유효한 http(s) URL이어야 합니다.
whenstring선택기본값: "final"현재는 final만 지원(success / fail 모두 알림).
finalstoragestring선택기본값: "temp"산출물 저장 등급: temp(기본·약 7일) 또는 persistent(장기 보관·용량 과금). 잔액 부족이나 저장 한도 초과 시 자동으로 temp로 강등됩니다. 실제 적용된 등급은 태스크 상세 응답에서 확인할 수 있습니다.
temppersistentmodelstring필수현재 고정 값: gpt-image-2/text-to-image
routestring선택현재 고정 값: beta
inputobject필수
gpt-image-2/text-to-image 및 루트 beta의 비즈니스 파라미터 객체. 아래 파라미터 표를 참조하세요.
sizestring선택기본값: "auto"pattern ^(auto|[1-9][0-9]{2,4}x[1-9][0-9]{2,4})$Output image size. Use auto or a compliant WIDTHxHEIGHT value such as 2048x2048.
promptstring필수maxLength 20000Text prompt describing the image to generate. Max 20000 characters.
callbackobject선택
종료 상태 알림 설정. 생략하면 콜백이 전송되지 않으며 호출 측에서 폴링합니다.
생성 시 callback.url을 지정하면 태스크 종료 시 HiAPI가 서비스로 POST하여 폴링이 필요 없습니다. 콜백 본문은 태스크 상세와 동일한 구조입니다. 서명 검증·재시도·멱등에 대한 자세한 내용은 통합 비동기 API 소개 페이지의 콜백 설명을 참고하세요.
urlstring필수callback 사용 시 필수. 태스크 종료 후 이 URL로 POST됩니다. 유효한 http(s) URL이어야 합니다.
whenstring선택기본값: "final"현재는 final만 지원(success / fail 모두 알림).
finalstoragestring선택기본값: "temp"산출물 저장 등급: temp(기본·약 7일) 또는 persistent(장기 보관·용량 과금). 잔액 부족이나 저장 한도 초과 시 자동으로 temp로 강등됩니다. 실제 적용된 등급은 태스크 상세 응답에서 확인할 수 있습니다.
temppersistentmodelstring필수현재 고정 값: gpt-image-2/text-to-image
routestring선택현재 고정 값: ext
inputobject필수
gpt-image-2/text-to-image 및 루트 ext의 비즈니스 파라미터 객체. 아래 파라미터 표를 참조하세요.
promptstring필수minLength 1maxLength 20000图像生成提示词 Max 20000 characters.
qualitystring필수기본값: "low"lowmediumhighresolutionstring필수기본값: "1K"1K2K4Kaspect_ratiostring선택기본값: "1:1"输出画幅比例
auto1:13:22:34:33:45:44:5전체 보기(8개)
16:99:162:11:23:11:321:99:21callbackobject선택
종료 상태 알림 설정. 생략하면 콜백이 전송되지 않으며 호출 측에서 폴링합니다.
생성 시 callback.url을 지정하면 태스크 종료 시 HiAPI가 서비스로 POST하여 폴링이 필요 없습니다. 콜백 본문은 태스크 상세와 동일한 구조입니다. 서명 검증·재시도·멱등에 대한 자세한 내용은 통합 비동기 API 소개 페이지의 콜백 설명을 참고하세요.
urlstring필수callback 사용 시 필수. 태스크 종료 후 이 URL로 POST됩니다. 유효한 http(s) URL이어야 합니다.
whenstring선택기본값: "final"현재는 final만 지원(success / fail 모두 알림).
finalstoragestring선택기본값: "temp"산출물 저장 등급: temp(기본·약 7일) 또는 persistent(장기 보관·용량 과금). 잔액 부족이나 저장 한도 초과 시 자동으로 temp로 강등됩니다. 실제 적용된 등급은 태스크 상세 응답에서 확인할 수 있습니다.
temppersistent요청 예시
# 비동기 태스크 제출. 성공 시 즉시 taskId 반환(생성 완료 대기 없음)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2/text-to-image",
"input": {
"prompt": "…",
"resolution": "1K",
"aspect_ratio": "auto"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "gpt-image-2/text-to-image",
input: {
"prompt": "…",
"resolution": "1K",
"aspect_ratio": "auto"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "gpt-image-2/text-to-image",
"input": {
"prompt": "…",
"resolution": "1K",
"aspect_ratio": "auto"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} # 비동기 태스크 제출. 성공 시 즉시 taskId 반환(생성 완료 대기 없음)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2/text-to-image@beta",
"input": {
"size": "auto",
"prompt": "…"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "gpt-image-2/text-to-image@beta",
input: {
"size": "auto",
"prompt": "…"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "gpt-image-2/text-to-image@beta",
"input": {
"size": "auto",
"prompt": "…"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} # 비동기 태스크 제출. 성공 시 즉시 taskId 반환(생성 완료 대기 없음)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2/text-to-image@ext",
"input": {
"prompt": "…",
"quality": "low",
"resolution": "1K",
"aspect_ratio": "1:1"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "gpt-image-2/text-to-image@ext",
input: {
"prompt": "…",
"quality": "low",
"resolution": "1K",
"aspect_ratio": "1:1"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "gpt-image-2/text-to-image@ext",
"input": {
"prompt": "…",
"quality": "low",
"resolution": "1K",
"aspect_ratio": "1:1"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} 작업 상세 조회
https://api.hiapi.ai/v1/tasks/:id 응답 필드
taskIdstring필수태스크 ID. 접두사는 항상 tk-hiapi-.
modelstring필수확인된 전체 모델명. route 파라미터로 제출한 태스크는 base@route(예: gpt-image-2/text-to-image@ext)를 반환하며, 그 외에는 제출 시의 모델명과 동일합니다.
routestring선택route 파라미터를 명시해 제출한 태스크에만 나타나며, 제출한 값을 그대로 반환합니다.
statusstring필수태스크 상태.
queued 대기 중, 아직 시작되지 않음.
handling 처리 중.
archiving 처리 완료, 산출물 준비 중.
success 종료: 완료. 산출물 사용 가능(output 반환).
fail 종료: 실패(error 반환).
제출 후 status로 판단합니다: success와 fail이 종료 상태이며 나머지는 비종료입니다. 1~3초 간격으로 종료까지 폴링하세요. 성공 시 output[].url에서 산출물을 다운로드하고 expireAt 전에 옮기세요. 장기 보관이 필요하면 생성 시 storage: "persistent"를 사용하세요.
creatednumber필수태스크 생성 시각(Unix 초).
completednumber필수종료 상태가 된 Unix 초. 비종료 상태에서는 0.
outputarray선택
status == success일 때만 나타납니다. 산출물 목록 — 항상 배열이며, 하나의 태스크에서 여러 type을 동시에 반환할 수 있습니다(예: video + first_frame).
Array [ object ]
배열 항목
urlstring필수산출물 URL. 바로 다운로드할 수 있습니다.
typestring필수현재 가능한 값: video, image, audio, first_frame, last_frame, thumbnail. 이후 확장될 수 있습니다.
expireAtnumber필수산출물 접근 가능 기한(Unix 초). 만료 전에 다운로드하거나 이전하세요.
errorobject선택
status == fail일 때만 나타납니다.
codestring필수비즈니스 오류 코드.
messagestring필수오류 설명.
응답 예시
성공
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR",
"model": "happyhorse-1-0",
"status": "success",
"created": 1777282033,
"completed": 1777282099,
"output": [
{
"url": "https://cdn.hiapi.ai/tasks/.../video.mp4",
"type": "video",
"expireAt": 1777886899
}
]
}
} 처리 중(비종료)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} 실패
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "fail",
"created": 1777282033,
"completed": 1777282099,
"error": {
"code": "TASK_FAILED",
"message": "task failed"
}
}
} 아티클
모든 아티클 보기 →-
튜토리얼
HiAPI에서 kandinsky-6.0-pro/image-to-video 튜토리얼: curl + Python
HiAPI에서 사용 가능한 이미지-투-비디오 요청 보내기: 첫 프레임 업로드부터 비동기 폴링, 최종 다운로드까지
-
튜토리얼
HiAPI API로 kling-4.0/text-to-video를 사용하는 방법: curl, Python 및 실행 가능한 요청 예제
개발자를 위한 실전 가이드: 영화적 프롬프트, 동기화 오디오, 비동기 폴링 및 출력 다운로드
-
튜토리얼
HiAPI API로 hailuo-2.3-fast/image-to-video 호출하는 방법: curl과 Python 실전
빠르고 저렴한 이미지-투-비디오 등급의 첫 실행 요청 — 모델 ID부터 MP4 다운로드까지
-
튜토리얼
HiAPI에서 kling-4.0/image-to-video를 호출하는 방법: curl, Python 및 폴링
-
튜토리얼
HiAPI API로 hailuo-2.3/text-to-video를 호출하는 방법: curl, Python 및 실행 가능한 요청 예시
-
튜토리얼
HiAPI에서 Kandinsky 6.0 Pro 텍스트-투-비디오 사용하기: curl 및 Python 튜토리얼
요청 우선 실전 데모: 프롬프트에서 비디오 클립까지의 호출 구성, 요청 제출, 완료 상태 폴링 및 결과 다운로드
관련 모델
모든 모델 보기 →동일 유형
-
Seedream 4.5 ByteDance $0.045 /이미지 -
BRIA Product Shot Bria $0.058 /이미지 -
Grok Imagine Image 2.0 xAI $0.052 /이미지 -
Ideogram V4 Ideogram $0.050 /이미지 -
Krea 3 Krea $0.036 /이미지 -
FLUX.1 Fill Pro Black Forest Labs $0.071 /이미지 -
FLUX.2 Klein 4B Black Forest Labs $0.0004 /이미지 -
FLUX 3 Image Black Forest Labs $0.041 /이미지 -
Seedream 5.0 ByteDance $0.025 /이미지 -
BRIA Eraser Bria $0.058 /이미지 -
FLUX.2 Klein 9B Black Forest Labs $0.0086 /이미지 -
Qwen Image 2.1 Alibaba $0.020 /이미지

