소개
FLUX 3 Klein Base 이미지 편집은 Black Forest Labs의 증류하지 않은 5.6B 체크포인트인 FLUX 3 Image Klein Base로, 글로 쓴 지시문에 따라 원본 이미지 13장을 바꾸거나 합칩니다. 원본은 image 1, image 2, image 3으로 지칭하고, auto로 첫 번째 이미지의 모양을 유지하거나 15가지 중 하나를 고르며, 1k 또는 2k를 선택하세요. 저희 테스트에서 1k 편집은 약 2040초가 걸렸고, 필터링은 하지 않습니다.
출발 자료에 따라 모드 고르기
| 가진 것 | 모드 |
|---|---|
| 글로 쓴 묘사 | FLUX 3 Klein Base 텍스트→이미지 |
| 바꾸거나 합칠 이미지 1~3장 | FLUX 3 Klein Base 이미지 편집 |
핵심 기능 및 하이라이트
제품 사진의 의상
image 1에 인물을, image 2에 옷걸이에 걸린 의상을 주면 편집이 한 사람에게 다른 옷을 입힙니다. 저희 테스트에서는 겨울 파카를 입은 여성이 얼굴과 머리를 유지한 채 사우나 탈의실에서 버건디 벨벳 슬립 드레스를 입은 모습으로 나왔습니다.
같은 인물, 새로운 장소
얼굴, 수염, 체형은 옷과 배경을 완전히 바꾼 뒤에도 유지되었습니다. 눈 덮인 숲에서 빨간 재킷을 입은 등산객이 삼나무 벤치에서 열린 리넨 셔츠를 입은 같은 남성으로 바뀌었습니다. 짧고 구체적인 지시가 얼굴을 가장 잘 지켰습니다.
이미지 최대 3장 합치기
두 여성의 서로 다른 사진 두 장이 사우나 벤치 위에서 같은 드레스를 입은 한 장면으로 합쳐졌으며, 두 얼굴 모두 알아볼 수 있었습니다. 원본이 세 장일 때는 각각의 역할을 말해 아무것도 빠지지 않게 하세요.
요청 파라미터
| 파라미터 | 필수 | 설명 |
|---|---|---|
prompt | 예 | 필수, 최대 5,000자. 유지할 부분(얼굴, 머리, 체형)을 먼저 쓰고 바꿀 부분을 쓰세요. 1자 이상 · 5000자 이하 |
image_urls | 예 | 필수, 공개 이미지 링크 1~3개, 각 최대 10 MB. 열리지 않거나 이미지가 아닌 링크는 청구 없이 요청이 실패합니다. 1개 이상 · 3개 이하 |
aspect_ratio | 아니요 | auto(기본값)는 첫 번째 원본의 모양을 유지합니다. 880 x 1184 세로 사진은 |
resolution | 아니요 | 1k(기본값) 또는 2k이며 auto와도 함께 적용됩니다. 2k는 출력 비용이 1k의 약 4배이고, 원본마다 요금이 두 배가 됩니다. |
output_format | 아니요 | JPEG(기본값), PNG, WebP. 가격은 바뀌지 않습니다. |
seed | 아니요 | 선택 사항이며 0부터 2,147,483,647까지입니다. 지시문 변화를 비교할 때 재사용하세요. |
요금
이미지 단위로 청구됩니다. 출력 크기 단계에 대한 요금과 원본 이미지마다의 요금이 더해지며, 둘 다 2k에서 더 비쌉니다. 화면비와 출력 형식은 가격을 바꾸지 않습니다.
| 사양 | 요금 |
|---|---|
| $0.054 / 장 |
| $0.216 / 장 |
활용 사례
룩북과 스타일링
다른 사진 속 인물에게 제품 사진의 의상을 새 장소와 빛에서 입혀, 룩북과 무드 보드에 씁니다.
장소와 의상 바꾸기
한 번의 작업으로 인물을 새로운 배경과 옷차림에 옮기되, 누구인지는 유지합니다. 캐릭터 시트나 시리즈물에 씁니다.
프롬프트 가이드 및 실전 팁
이미지 번호 쓰기
업로드 순서대로 image 1, image 2, image 3을 쓰고 각각에 역할을 주세요. 예를 들어 image 1의 여성, image 2의 드레스처럼 씁니다. 화면비가 auto일 때는 첫 번째 이미지가 모양도 정합니다.
유지할 것을 먼저, 그다음 바꾸기
얼굴, 머리, 체형처럼 그대로 있어야 할 것을 먼저 쓰고, 그다음 의상, 장소, 포즈, 빛의 변화를 묘사하세요. 모델이 옷을 그대로 남길 수 있으니, 인물이 무엇을 입어야 하는지 정확히 쓰세요.
원본마다 가격이 붙는다는 점 기억하기
원본 한 장마다 가격이 추가되며, 2k는 그 요금을 두 배로 만듭니다. 한 장이면 충분할 때는 원본을 한 장만 쓰고, 1k로 초안을 잡으세요.
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": "black-forest-labs/flux-3-klein-base/edit",
"input": {
"aspect_ratio": "auto",
"image_urls": [
"https://example.com/reference.png"
],
"output_format": "jpeg",
"prompt": "A ceramic teapot on a linen cloth, soft window light, muted palette",
"resolution": "1k"
}
}'
# 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 레퍼런스에서 확인하세요.


























