Recraft
Recraft Creative Upscale
recraft/creative-upscale
생성형 이미지 업스케일링으로, 해상도를 높이는 동시에 질감, 디테일, 얼굴 특징을 다시 그려 보완하며, 저해상도 소재를 고해상도 완성품으로 만드는 데 적합합니다
가격
recraft/creative-upscale per image
| 단가 | $0.3575 |
|---|
포지셔닝 소개
recraft/creative-upscale는 Recraft Creative Upscale 시리즈의 생성형 이미지 업스케일 모델로, 입력 이미지의 해상도를 높이는 동시에 단순 보간이 아니라 생성 방식으로 텍스처, 세부 디테일, 얼굴 특징을 다시 그립니다. 공용 인터넷 PNG 이미지 URL을 받으며, 한 변 256–4096픽셀, 최대 16MP의 원본 이미지를 지원하므로 저해상도 소재나 오래된 이미지를 고해상도 결과물로 끌어올려야 하는 개발자에게 적합합니다.
핵심 하이라이트
- 업스케일과 동시에 생성형 디테일 강화——단순 보간이 픽셀만 늘리는 것과 달리, 업스케일 과정에서 텍스처와 세부 요소를 보충하여 고화질 전시에 쓸 수 있는 결과물을 출력합니다.
- 얼굴 특징 개선 및 샤프닝——AI 생성 이미지나 오래된 소재에서 흐릿한 얼굴을 업스케일 시 함께 처리하여 후반에 얼굴만 따로 보정하는 작업을 줄입니다.
- 입력 크기 범위가 넓음——원본 이미지는 한 변 256–4096픽셀, 최대 16MP를 지원하여 썸네일부터 비교적 큰 소재까지 입력으로 사용할 수 있습니다.
기능 설명
생성형 이미지 업스케일: PNG 이미지 URL을 전달하면 업스케일되고 강화된 결과를 얻을 수 있어, 로컬에 초해상도 모델을 배포하는 엔지니어링 비용을 절약합니다.
텍스처 및 디테일 보충: 복잡한 텍스처와 세부 요소를 업스케일 시 다시 그려 보완하여 디테일이 더 완전한 이미지 자산을 출력합니다.
얼굴 특징 강화: 인물 입력의 경우 업스케일 과정에서 얼굴 특징을 개선하고 샤프닝하여 인물 소재의 대량 향상에 적합합니다.
URL 직접 입력: 공용 인터넷에서 접근 가능한 이미지 링크만 있으면 되고 파일 업로드가 필요 없어, 기존 이미지 호스팅과 자동화 파이프라인에 연결하기 쉽습니다.
적용 시나리오
- 디자이너의 저해상도 소재 향상——저화질 디자인 시안이나 외부 이미지 URL을 입력하여 고화질 전시나 인쇄에 쓸 수 있는 고해상도 완성 이미지를 얻습니다.
- AI 생성 이미지 및 오래된 소재 복원——흐릿한 인물이나 오래된 이미지를 입력하여 얼굴과 디테일이 더 선명한 버전을 출력해 재게시나 소재 재사용에 활용합니다.
- 자동화 이미지 처리 파이프라인——서버 측에서 이미지 URL로 일괄 호출하여 업스케일 강화를 파이프라인의 한 단계로 삼고 표준화된 고화질 이미지를 생산합니다.
제한 사항 및 선택 가이드
생성형 재그리기는 원본 이미지의 내용을 바꿀 수 있어 픽셀 단위 충실도나 원본 디테일의 엄격한 복원이 요구되는 시나리오에는 적합하지 않습니다. 업스케일 강화를 위한 것이지 콘텐츠 생성용이 아니며, 범용 이미지-투-이미지 편집 도구로도 적합하지 않습니다. 원본 이미지는 공용 인터넷에서 접근 가능한 PNG 링크여야 하며, 한 변 256–4096픽셀과 16MP 상한 제약을 받습니다. 해상도만 높이고 화면 내용은 그대로 유지하고 싶다면 비생성형 업스케일 방식을 사용해야 합니다.
자주 묻는 질문
모든 질문 보기 →-
Recraft Creative Upscale는 무엇을 하나요?
이미지를 더 높은 해상도로 확대하면서 텍스처와 디테일을 다시 그립니다. 프롬프트가 필요 없으며 이미지 URL 하나만 전달하면 됩니다.
-
Recraft Crisp Upscale과 어떤 차이가 있나요?
Crisp Upscale은 원본 이미지에 가깝게 유지하는 것을 목표로 하며, 텍스트나 상품처럼 변경되면 안 되는 소재에 적합합니다. Creative Upscale은 세부를 다시 그려 화면이 더 정교해지지만, 일부 구조가 원본과 다를 수 있습니다.
-
화면 내용이 바뀌나요?
전체 구도, 주체, 색상 배치는 기본적으로 유지되지만 세부 요소는 다시 그려집니다. 이 페이지의 예시에서는 목조 주택의 통나무, 돌담, 난간이 더 선명하게 다시 그려졌고, 현관 옆의 작은 나무는 유지되지 않았으며, 돌의 배치도 달라졌습니다. 세부 사항에 엄격한 요구가 있는 소재는 먼저 Playground에서 확인해 주세요.
-
입력 이미지에는 어떤 요구 사항이 있나요?
공개 인터넷에서 접근 가능한 http(s) 이미지 URL을 전달하세요. 20 MB를 초과하지 않고, 각 변이 256–4096 픽셀이며, 총 픽셀 수가 16 MP를 초과하지 않아야 합니다. 이 페이지의 예제는 PNG 이미지를 사용하며, 현재 PNG 사용을 권장합니다.
생성 작업 제출
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필수현재 고정 값: recraft/creative-upscale
routestring선택현재 고정 값: default
inputobject필수
recraft/creative-upscale 및 루트 default의 비즈니스 파라미터 객체. 아래 파라미터 표를 참조하세요.
image_urlstring필수minLength 1pattern ^https?://Public URL of the PNG image to upscale. Up to 20 MB, each side 256–4096 px, at most 16 MP.
callbackobject선택
종료 상태 알림 설정. 생략하면 콜백이 전송되지 않으며 호출 측에서 폴링합니다.
생성 시 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": "recraft/creative-upscale",
"input": {
"image_url": "…"
}
}' 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: "recraft/creative-upscale",
input: {
"image_url": "…"
}
}),
});
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": "recraft/creative-upscale",
"input": {
"image_url": "…"
}
},
)
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 API로 hailuo-2.3/text-to-video를 호출하는 방법: curl, Python 및 실행 가능한 요청 예시
-
튜토리얼
recraft-v4.1-flash 텍스트-이미지 생성 실전: 5가지 고부가가치 비즈니스 시나리오와 연동 핵심 포인트
장당 $0.01의 비용에서 출발해, 이미지 생성이 실제 비즈니스에서 어떻게 안착할지 계획하기
-
비교 평가
hailuo-2.3-fast/image-to-video横向对比:이미지 투 비디오 모델 선택 방법과 마이그레이션 핵심 포인트
-
튜토리얼
HiAPI API로 hailuo-2.3-fast/image-to-video 호출하는 방법: curl과 Python 실전
빠르고 저렴한 이미지-투-비디오 등급의 첫 실행 요청 — 모델 ID부터 MP4 다운로드까지
-
튜토리얼
HiAPI에서 kling-4.0/image-to-video를 호출하는 방법: curl, Python 및 폴링
-
비교 평가
Recraft v4.1 Flash 텍스트 투 이미지 횡적 비교: 개발자 선정 및 마이그레이션 가이드
이미지당 $0.01의 비용과 순수 텍스트 투 이미지 기능으로 귀하의 이미지 생성 파이프라인에 적합한지 판단하세요
-
튜토리얼
HiAPI에서 Kandinsky 6.0 Pro 텍스트-투-비디오 사용하기: curl 및 Python 튜토리얼
요청 우선 실전 데모: 프롬프트에서 비디오 클립까지의 호출 구성, 요청 제출, 완료 상태 폴링 및 결과 다운로드
-
튜토리얼
HiAPI에서 kandinsky-6.0-pro/image-to-video 튜토리얼: curl + Python
HiAPI에서 사용 가능한 이미지-투-비디오 요청 보내기: 첫 프레임 업로드부터 비동기 폴링, 최종 다운로드까지
-
튜토리얼
HiAPI API로 kling-4.0/text-to-video를 사용하는 방법: curl, Python 및 실행 가능한 요청 예제
개발자를 위한 실전 가이드: 영화적 프롬프트, 동기화 오디오, 비동기 폴링 및 출력 다운로드
관련 모델
모든 모델 보기 →동일 유형
-
Z-Image Alibaba $0.008 /이미지 -
FLUX.1 Fill Pro Black Forest Labs $0.071 /이미지 -
GPT Image 2 OpenAI $0.007 /이미지 -
Seedream 4.5 ByteDance $0.045 /이미지 -
BRIA Eraser Bria $0.058 /이미지 -
Nano Banana Google $0.021 /이미지 -
FLUX 3 Image Black Forest Labs $0.041 /이미지 -
FLUX.2 Klein 9B Black Forest Labs $0.0086 /이미지 -
Grok Imagine Image 2.0 xAI $0.052 /이미지 -
Wan 2.7 Image Alibaba $0.035 /이미지 -
Ideogram V3 Character Ideogram $0.090 /이미지 -
Nano Banana 2 Google $0.036 /이미지