Skip to main content
Venice의 이미지 생성은 동기 방식입니다. /image/generate에 prompt를 보내면 같은 응답에 JSON 내부의 base64로, 또는 return_binary가 true일 때는 raw 바이너리로 이미지가 돌아옵니다.

Endpoint

1단계: 생성 요청 보내기

크기 지정은 모델별입니다. 일부 모델은 명시적 width와 height를 받습니다. 일부는 aspect_ratio를 노출하고, 해상도 등급 모델은 aspect_ratio와 함께 1K, 2K, 4K 같은 resolution 값을 노출합니다.
qwen-image, qwen-image-3, qwen-image-3-pro는 더 이상 width나 height를 받지 않습니다. 둘 중 하나를 보내면 400과 함께 *“width and height are no longer supported for this model. Use aspect_ratio instead.”*가 반환됩니다. 크기 필드를 선택하기 전에 GET /models?type=image의 model_spec.constraints를 확인하세요.
픽셀 기반 크기 예시:
종횡비 크기 예시:
해상도 등급 크기 예시:
다른 해상도 등급 모델에도 같은 패턴이 적용됩니다:
각 모델이 어떤 크기 필드를 받는지는 이미지 모델 또는 Models API에서 확인하세요. 응답(200):
images 배열에는 base64로 인코딩된 이미지 데이터가 들어 있습니다. 첫 항목을 디코딩해 저장하거나 표시하세요. timing.total은 전체 요청 소요 시간(밀리초)입니다.

2단계: 이미지 디코딩 및 저장

3단계: JSON 대신 바이너리 반환(선택)

응답 본문 자체를 이미지 파일로 받고 싶다면 return_binary: true로 설정하세요. base64 디코딩 없이 이미지를 바로 스트리밍하거나 저장하고 싶을 때 유용합니다.
return_binary가 true이면 응답 본문은 요청한 format에 따라 raw image/jpeg, image/png, 또는 image/webp 데이터입니다.
variants는 return_binary가 false일 때만 지원됩니다.

4단계: 사용 가능한 이미지 스타일 목록 보기(선택)

style_preset을 사용하려면 먼저 /image/styles에서 사용 가능한 스타일을 가져오세요:
응답(200):
스타일 이름은 최상위 레벨이 아니라 data 안에 있습니다 — 응답 객체를 직접 순회하지 말고 response.data를 읽으세요. 그런 다음 그 값 중 하나를 생성 요청에 전달하세요:
프리셋 이름을 짐작하지 않고 정확히 알고 싶을 때 styles endpoint를 사용하세요.

요청 파라미터

검증은 모델별입니다. 여러 모델에 걸쳐 파라미터를 사용하기 전에 이미지 모델과 Models API를 확인하세요.

모델별 옵션

고해상도 생성

일부 이미지 모델은 선택 가능한 resolution 등급 없이 aspect_ratio를 지원합니다. 예를 들어 qwen-image-2는 종횡비를 받아 모델별 출력 크기에 매핑합니다:
다른 이미지 모델은 aspect_ratio와 resolution 등급을 함께 지원합니다. 예를 들어 gpt-image-2, nano-banana-2, nano-banana-pro는 1K, 2K, 4K를 지원합니다:
어떤 모델이 더 높은 해상도를 지원하는지, 그리고 가격은 어떻게 되는지는 이미지 모델에서 확인하세요.

성인 콘텐츠 및 safe mode

safe_mode는 생성 output의 성인 콘텐츠를 블러 처리할지 여부를 제어합니다. 기본값은 true입니다. 사용 사례에서 성인 콘텐츠가 허용되고 원본 output을 원한다면 false로 설정하세요:
일부 이미지 모델은 성인 / 무검열 생성을 위해 특별히 설계되어 safe_mode: false와 잘 어울립니다. 가격 페이지의 예시로는 lustify-sdxl, lustify-v7, lustify-v8이 있습니다. 현재 목록과 모델별 비용은 이미지 모델과 가격을 참고하세요. 기존 이미지 편집의 경우, 기본 편집 모델 qwen-edit는 노골적인 성적 이미지를 차단합니다. 무검열 편집이 필요하다면 이미지 편집을 통해 qwen-edit-uncensored를 사용하세요. safe_mode가 활성화되어 있고 모델이 블러 처리되거나 조정된 output을 반환할 때, 프로그래밍 방식으로 이를 감지해야 한다면 x-venice-is-blurred와 x-venice-is-content-violation 응답 헤더를 확인하세요.

스타일 프리셋

선택한 모델이 지원한다면 style_preset을 사용해 전체 prompt를 다시 쓰지 않고도 출력을 유도할 수 있습니다. 유효한 프리셋 이름은 Image Styles에서 가져올 수 있습니다:
현재 스타일 목록은 Image Styles를 참고하세요.

OpenAI 호환 endpoint

OpenAI 이미지 SDK나 기존 DALL-E 통합을 이미 사용하고 있다면, Venice는 POST /images/generations도 지원합니다. 더 단순한 요청 포맷을 제공하지만, Venice 네이티브 endpoint보다 기능이 적습니다. 요청:
빠른 마이그레이션에는 OpenAI 호환 라우트를 사용하세요. cfg_scale, style_preset, variants, 바이너리 응답 같은 Venice 전용 옵션이 필요하면 /image/generate를 사용하세요.

/images/generations에서 성인 콘텐츠 블러 제어하기

OpenAI 호환 endpoint는 safe_mode를 받지 않습니다. 이를 보내면 Unrecognized key(s) in object: 'safe_mode'와 함께 400이 반환됩니다. 대신 OpenAI 스타일의 moderation 파라미터를 사용하세요:
safe_mode는 네이티브 POST /image/generate endpoint에서만 동작합니다. moderation은 OpenAI 호환 POST /images/generations endpoint에서만 동작합니다.

Prompt 작성 팁

  1. 피사체로 시작한 다음 매체, 조명, 구도, 분위기를 더하세요.
  2. 메인 prompt에 과부하를 주지 말고 피해야 할 세부 사항은 negative_prompt에 넣으세요.
  3. 반복 시 seed를 재사용해 구도를 완전히 바꾸지 않고 prompt 변화의 비교가 가능하게 하세요.
  4. 크기는 모델을 의식해서 설정하세요. 어떤 모델은 width/height를, 어떤 모델은 aspect_ratio를, 해상도 등급 모델은 aspect_ratio와 resolution을 함께 사용합니다.
  5. 탐색 단계에서는 variants를 사용하고, 방향이 정해지면 단일 출력으로 돌아오세요.

에러

Safe Venice가 활성화된 경우, 프로그래밍 방식으로 모더레이션 결과를 감지하려면 x-venice-is-blurred, x-venice-is-content-violation 같은 응답 헤더를 확인하세요.

사용 가능한 모델

현재 모델 목록, 가격, 기능 지원은 이미지 모델을 참고하세요.