사용 가이드
hiapi API를 통해 Nano-Banana-2-Lite로 이커머스 제품 이미지 생성하기
이커머스 카탈로그용 제품 이미지를 생성할 때는 단일 이미지 비용보다 단위 경제성이 더 중요합니다. 대표 이미지 한 장에 $0.17이면 열 장만 필요할 때는 문제없지만, 1000개의 SKU마다 세 장씩 생성해야 한다면 상황이 완전히 달라집니다. 바로 이 지점에서 hiapi의 Nano-Banana-2-Lite가 빈틈을 채웁니다: 이미지당 $0.033, 1K 해상도, 더 큰 Nano-Banana 모델과 동일한 비동기 작업 API 사용, 최대 10장의 참조 이미지 지원—클래식한 이커머스 3종 세트(화이트 배경 대표 이미지, 라이프스타일 장면 이미지, 프리미엄 다크 변형 이미지)를 대량 가격으로 완성하기에 충분합니다.
이 가이드는 이전에 작성한 Nano-Banana 이커머스 워크플로의 예산 등급 동반 문서입니다. 아래의 모든 내용—요청, 출력, 소요 시간, 비용—은 글을 작성하는 시점에 실제 라이브 API를 직접 실행한 결과에서 나온 것입니다.

Nano-Banana 제품 라인에서 Lite의 위치
다음 정보는 작성 시점에 hiapi 가격 페이지와 대조하여 확인했습니다:
| 모델 | 이미지당 가격 | 해상도 | 참조 이미지 |
|---|---|---|---|
| Nano-Banana-2-Lite | $0.033 | 1K | image_urls로 최대 10장 |
| nano-banana | $0.05 | 표준 | 지원 |
| nano-banana-2 | $0.085(1K) / $0.076(2K) / $0.114(4K) | 최대 4K | image_input으로 |
| nano-banana-pro | $0.17(1K/2K) / $0.2992(4K) | 최대 4K | image_input으로 |
제품 카탈로그를 위한 결정 규칙은 간단합니다:
- 마켓플레이스 상품 등록, 롱테일 SKU, A/B 변형 → Lite. 1K(짧은 변 약 1024px)에서 출력은 대부분의 마켓플레이스가 업로드 이미지를 압축한 후 요구하는 기준을 충족하거나 초과합니다.
- 홈페이지 배너, 캠페인 키 비주얼, 인쇄물 → 2K/4K 출력과 더 강력한 텍스트 렌더링을 위해 nano-banana-pro로 업그레이드하세요. Lite는 물량용, Pro는 핵심 이미지용—둘은 경쟁이 아니라 상호 보완적입니다.
실행 가능한 요청
Nano-Banana-2-Lite는 hiapi의 통합 비동기 작업 API에서 실행됩니다: 작업을 제출하고, 완료될 때까지 폴링하고, 결과를 다운로드합니다. 코드 작성 전에 세 가지 주의사항이 있습니다:
- 모델 ID는 대소문자를 구분합니다. 정확히
Nano-Banana-2-Lite를 전송하세요—소문자 변형은400 MODEL_UNAVAILABLE을 반환합니다. aspect_ratio는 열거형이며 자유 형식이 아닙니다. 허용 값:auto,1:1,2:3,3:2,3:4,4:3,4:5,5:4,9:16,16:9,21:9,1:4,4:1,1:8,8:1.resolution필드는 없습니다—Lite는 1K로 고정되어 있으며,resolution을 보내면 요청이 거부됩니다.- 출력 URL은 서명된 링크이며 만료됩니다. 작업이 성공하면 즉시 바이트 내용을 다운로드하세요. URL이 아닌 파일을 저장해야 합니다.
curl -s -X POST https://api.hiapi.ai/v1/tasks \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "Nano-Banana-2-Lite",
"input": {
"prompt": "Professional e-commerce product photo of a minimalist matte-white wireless earbuds charging case, centered on a seamless pure white background, soft even studio lighting, gentle shadow beneath, crisp edges, catalog-ready hero shot, no text, no logo",
"aspect_ratio": "1:1"
}
}'
응답에는 taskId가 포함됩니다. status가 success가 될 때까지 GET /v1/tasks/{taskId}를 폴링한 다음 data.output[0].url을 다운로드하세요. 저희 실행에서는 폴링 시간을 포함해 단일 작업이 처음부터 끝까지 약 55–65초 만에 완료되었습니다.
다음은 해당 정확한 프롬프트의 출력입니다—보정되지 않은 Lite 생성 이미지입니다:

카탈로그급 대표 이미지를 위한 프롬프트 작성
화이트 배경 상품 등록의 경우, 저희에게 항상 효과가 있었던 프롬프트 패턴:
*Professional e-commerce product photo of [product, materials, colors], centered on a seamless pure white background, soft even studio lighting, subtle natural shadow, crisp focus, marketplace catalog style, no text, no logo*
동일한 템플릿으로 제품 설명과 가로세로 비율만 변경한 다른 두 제품(4:5는 패션/뷰티 버티컬에, 4:3은 신발과 전자제품에 적합):


대량 생성 시 실용적인 주의사항:
- 항상 "no text, no logo"로 끝내세요. 대부분의 이미지 모델과 마찬가지로 그렇지 않으면 Lite가 라벨 텍스트와 브랜드 표식을 임의로 만들어냅니다—이는 실제 상품 등록에서 규정 준수 문제입니다. 제품에 실제 라벨이 있다면 나중에 합성하거나 아래의 참조 이미지 경로를 사용하세요.
- 그림자를 명시적으로 요청하세요("subtle natural shadow"). 이 요구 사항이 없으면 마켓플레이스에서 가짜처럼 보이는 떠 있는 오려내기 효과를 얻기 쉽습니다.
- 이미지당 제품 하나만 배치하세요. Lite는 단일 피사체 구도를 안정적으로 처리합니다. 여러 제품을 평면 배치하면 더 큰 모델이 필요해지기 시작합니다.
같은 제품, 새로운 장면: image_urls 워크플로
진정한 이커머스 기술은 일관성에 있습니다: 표준 제품 이미지 하나를 라이프스타일 및 프리미엄 장면으로 재배치하면서 제품이 이미지 간에 변형되지 않도록 하는 것입니다. Lite는 image_urls 필드를 통해 최대 10장의 참조 이미지를 허용합니다(참고: 더 큰 Nano-Banana-2 모델은 이 필드를 image_input이라고 부릅니다—이 이름 변경이 주요 이식 함정이며, 자세한 내용은 Lite API 튜토리얼을 참조하세요).
위의 대표 이미지를 참조로 사용하여 두 가지 재배치를 요청했습니다:
{
"model": "Nano-Banana-2-Lite",
"input": {
"prompt": "Place this exact product on a warm oak wooden desk next to a laptop keyboard and a small green potted plant, soft morning window light from the left, shallow depth of field, cozy home-office lifestyle e-commerce scene, keep the product design, colors and proportions unchanged",
"aspect_ratio": "4:3",
"image_urls": ["https://your-cdn.example.com/hero-earbuds.jpg"]
}
}


두 변형 모두 충전 케이스의 비율, 뚜껑 이음새, 표시 LED가 그대로 유지되어 반환되었습니다. "keep the product design, colors and proportions unchanged"라는 문구가 여기서 큰 역할을 합니다—모든 참조 이미지 프롬프트에 포함하세요. 참조 URL은 공개적으로 접근 가능해야 합니다(작업 도중 만료되는 서명된 비공개 링크는 작업을 실패시킵니다).
Python 배치 파이프라인
작업은 독립적이므로, 배치 처리량은 모든 작업을 한 번에 제출하고 그룹으로 폴링하는 데서 나옵니다—저희 실행에서는 5개의 동시 작업을 완료하는 데 걸리는 실제 시간이 하나의 작업과 거의 같았습니다. 최소 파이프라인:
import json
import subprocess
import time
API = "https://api.hiapi.ai/v1/tasks"
TOKEN = "sk-..." # your hiapi API key
def _curl(args):
out = subprocess.run(["curl", "-s", *args], capture_output=True, text=True, timeout=90)
return json.loads(out.stdout)
def submit(prompt, aspect_ratio="1:1", image_urls=None):
inp = {"prompt": prompt, "aspect_ratio": aspect_ratio}
if image_urls:
inp["image_urls"] = image_urls
data = _curl(["-X", "POST", API,
"-H", f"Authorization: Bearer {TOKEN}",
"-H", "Content-Type: application/json",
"-d", json.dumps({"model": "Nano-Banana-2-Lite", "input": inp})])
return data["data"]["taskId"]
def wait(task_id, timeout_s=600):
deadline = time.time() + timeout_s
while time.time() < deadline:
task = _curl([f"{API}/{task_id}", "-H", f"Authorization: Bearer {TOKEN}"])["data"]
if task["status"] == "success":
return task["output"][0]["url"]
if task["status"] == "fail":
raise RuntimeError(f"{task_id}: {task.get('error')}")
time.sleep(5)
raise TimeoutError(task_id)
HERO_TMPL = ("Professional e-commerce product photo of {product}, centered on a "
"seamless pure white background, soft even studio lighting, subtle "
"natural shadow, crisp focus, marketplace catalog style, no text, no logo")
skus = [
{"id": "SKU-001", "product": "a matte-white wireless earbuds charging case"},
{"id": "SKU-002", "product": "an amber glass serum bottle with black dropper cap"},
{"id": "SKU-003", "product": "a white minimalist running sneaker with light gray sole"},
]
# 1) submit everything up front
tasks = {sku["id"]: submit(HERO_TMPL.format(product=sku["product"])) for sku in skus}
# 2) collect results and persist bytes immediately — output URLs expire
for sku_id, task_id in tasks.items():
url = wait(task_id)
subprocess.run(["curl", "-s", "-o", f"{sku_id}.jpg", url], timeout=120)
print(f"{sku_id} done")
운영 규모의 경우 두 가지 업그레이드를 적용할 가치가 있습니다: 폴링 대신 webhook 콜백 사용(작업 생성 시 callback.url과 when: "final" 전달), 그리고 각 taskId를 SKU 기록과 함께 영속화하여 크래시된 워커가 중복 비용을 지불하지 않고 복구할 수 있도록 하는 것입니다. 둘 다 작업 API 튜토리얼과 hiapi 문서에 소개되어 있습니다.
카탈로그 하나의 실제 비용
이미지당 $0.033으로 표준 3장 처리(대표 이미지 + 라이프스타일 이미지 + 다크/디테일 변형)를 적용할 경우:
| 카탈로그 규모 | 이미지 수(×3) | Nano-Banana-2-Lite | 동일 작업을 nano-banana-pro로 수행 |
|---|---|---|---|
| 100개 SKU | 300 | $9.90 | $51.00 |
| 500개 SKU | 1,500 | $49.50 | $255.00 |
| 1,000개 SKU | 3,000 | $99.00 | $510.00 |
합리적인 하이브리드 방안: 전체 카탈로그를 Lite로 실행한 다음, 수익이 가장 높은 20개 SKU만 nano-banana-pro에서 2K/4K로 다시 촬영하여 홈페이지와 캠페인 집행에 사용하세요. 100개 SKU 예시의 경우 $9.90 + 약 $10의 Pro 이미지 비용입니다—여전히 하루 스튜디오 비용의 일부에 불과합니다.
두 번째 시도가 필요한 프롬프트(보통 라벨의 불필요한 텍스트)를 위해 5–10%의 재시도 여유분을 확보하고, 실패한 작업은 fail과 오류 객체로 보고된다는 점을 기억하세요—품질 게이트에 연결할 가치가 있는 것은 성공한 생성뿐입니다.
요약
Nano-Banana-2-Lite는 플래그십 키 비주얼 파이프라인을 대체하지 않습니다—그것은 Pro 등급의 용도입니다. 하지만 카탈로그의 롱테일 부분에서 모든 SKU에 전시 가능하고 일관된 이미지가 필요하고 예산이 1000장 단위로 측정될 때, 1K 해상도에 참조 이미지를 지원하는 $0.033의 가격은 반박하기 어렵습니다.
API 키를 발급받은 다음 Nano-Banana-2-Lite 모델 페이지에서 시작하세요—위의 요청은 토큰만 교체하면 바로 사용할 수 있으며, 배치 스크립트는 이를 하나의 SKU에서 천 개로 확장할 수 있습니다.
관련 글
모든 아티클 보기 →-
사용 가이드
seedream-5.0-pro/image-to-image 시작 가이드: 기능, 가격 및 연동 핵심 포인트
ByteDance 이미지 편집 모델의 기능 경계, 과금 방식 및 엔지니어링 연동 실무
-
사용 가이드
seedream-5.0-pro 텍스트-이미지 생성 입문 가이드: 능력 경계, API 연동 및 비용 관리
개발자를 위한 실무 관점: 파라미터 핵심부터 장당 $0.05 비용 추정까지
-
사용 가이드
Hailuo 2.3 Fast 이미지-투-비디오 입문 가이드: 성능 범위, 가격 및 연동 실무
개발자를 위한 MiniMax 이미지-투-비디오 모델 선택과 연동 핵심 포인트