이미지 생성
curl --request POST \
--url https://api.gravitex.ai/v1/images/generations \
--header 'Authorization: <authorization>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "<string>",
"prompt": "<string>",
"response_format": "<string>",
"contents": [
{}
]
}
'import requests
url = "https://api.gravitex.ai/v1/images/generations"
payload = {
"model": "<string>",
"prompt": "<string>",
"response_format": "<string>",
"contents": [{}]
}
headers = {
"Authorization": "<authorization>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<authorization>', 'Content-Type': 'application/json'},
body: JSON.stringify({
model: '<string>',
prompt: '<string>',
response_format: '<string>',
contents: [{}]
})
};
fetch('https://api.gravitex.ai/v1/images/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gravitex.ai/v1/images/generations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model' => '<string>',
'prompt' => '<string>',
'response_format' => '<string>',
'contents' => [
[
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.gravitex.ai/v1/images/generations"
payload := strings.NewReader("{\n \"model\": \"<string>\",\n \"prompt\": \"<string>\",\n \"response_format\": \"<string>\",\n \"contents\": [\n {}\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.gravitex.ai/v1/images/generations")
.header("Authorization", "<authorization>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"<string>\",\n \"prompt\": \"<string>\",\n \"response_format\": \"<string>\",\n \"contents\": [\n {}\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gravitex.ai/v1/images/generations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<authorization>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"model\": \"<string>\",\n \"prompt\": \"<string>\",\n \"response_format\": \"<string>\",\n \"contents\": [\n {}\n ]\n}"
response = http.request(request)
puts response.read_body이미지 시리즈
이미지 생성
POST
/
v1
/
images
/
generations
이미지 생성
curl --request POST \
--url https://api.gravitex.ai/v1/images/generations \
--header 'Authorization: <authorization>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "<string>",
"prompt": "<string>",
"response_format": "<string>",
"contents": [
{}
]
}
'import requests
url = "https://api.gravitex.ai/v1/images/generations"
payload = {
"model": "<string>",
"prompt": "<string>",
"response_format": "<string>",
"contents": [{}]
}
headers = {
"Authorization": "<authorization>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<authorization>', 'Content-Type': 'application/json'},
body: JSON.stringify({
model: '<string>',
prompt: '<string>',
response_format: '<string>',
contents: [{}]
})
};
fetch('https://api.gravitex.ai/v1/images/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gravitex.ai/v1/images/generations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model' => '<string>',
'prompt' => '<string>',
'response_format' => '<string>',
'contents' => [
[
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.gravitex.ai/v1/images/generations"
payload := strings.NewReader("{\n \"model\": \"<string>\",\n \"prompt\": \"<string>\",\n \"response_format\": \"<string>\",\n \"contents\": [\n {}\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.gravitex.ai/v1/images/generations")
.header("Authorization", "<authorization>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"<string>\",\n \"prompt\": \"<string>\",\n \"response_format\": \"<string>\",\n \"contents\": [\n {}\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gravitex.ai/v1/images/generations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<authorization>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"model\": \"<string>\",\n \"prompt\": \"<string>\",\n \"response_format\": \"<string>\",\n \"contents\": [\n {}\n ]\n}"
response = http.request(request)
puts response.read_body소개
이미지 생성 API는 텍스트-이미지, 이미지-이미지, 이미지 편집 등을 지원합니다. 통합 API 인터페이스를 통해 Gemini, Doubao Seedream, GPT Image, Tongyi Qianwen 등 여러 주요 이미지 생성 모델을 호출할 수 있습니다.인증
string
필수
Bearer Token, 예:
Bearer sk-xxxxxxxxxx요청 매개변수
string
필수
모델 식별자, 지원 모델:
- Gemini 시리즈:
gemini-2.5-flash-image(Nano Banana),gemini-3-pro-image-preview(Nano Banana Pro) 등 - Doubao Seedream 시리즈:
dola-seedream-5-0-pro-260628(Seedream 5.0 Pro),doubao-seedream-3-0-t2i-250415,doubao-seedream-4-0-250828,doubao-seedream-4-5-251128,doubao-seededit-3-0-i2i-250628등 - GPT Image 시리즈:
gpt-image-2등 - Tongyi Qianwen 시리즈:
qwen-image-plus,qwen-image-edit-plus등
string
텍스트-이미지 생성용 텍스트 프롬프트
string
기본값:"url"
응답 형식:
b64_json 또는 url참고: 모델마다 response_format 지원이 다릅니다:- Gemini 시리즈:
b64_json만 지원, 전달 값과 관계없이 항상 base64 인코딩 이미지 데이터 반환 - Doubao Seedream 시리즈: 보통 URL 링크 반환,
response_format매개변수가 적용되지 않을 수 있음 - GPT Image 시리즈:
b64_json만 지원, base64 인코딩 이미지 데이터 강제 반환 - Tongyi Qianwen 시리즈:
b64_json과url모두 지원, 매개변수 값에 따라 해당 형식 반환(b64_json은 URL에서 다운로드 후 base64로 변환)
array
이미지-이미지 또는 맥락 대화용 다중 턴 콘텐츠
기본 예제
- Gemini
- Doubao Seedream
- GPT Image
- Tongyi Qianwen
- 텍스트-이미지
- 이미지-이미지
- 다중 이미지 융합
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-2.5-flash-image",
"prompt": "A cute orange kitten sitting in a garden, sunny day, high quality photography",
"size": "16:9",
"quality": "high",
"n": 1,
"temperature": 1.1,
"top_p": 0.95,
"response_format": "b64_json",
"image_size": "2K",
"mime_type": "image/png",
"response_modalities": "image"
}'
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-2.5-flash-image",
"size": "16:9",
"quality": "high",
"image_size": "3K",
"temperature": 1.1,
"top_p": 0.95,
"response_format": "b64_json",
"contents": [
{
"role": "user",
"parts": [
{"text": "Generate an aerial view of Canton Tower based on this image"},
{"image": "data:image/png;base64,iVBORw0KGgoAAxxxx..."}
]
}
]
}'
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-2.5-flash-image",
"size": "16:9",
"image_size": "3K",
"temperature": 1.1,
"top_p": 0.95,
"response_format": "b64_json",
"contents": [
{
"role": "user",
"parts": [
{"text": "Apply the oil painting style from the first image to the content of the second image"},
{"image": "https://example.com/style.jpg"},
{"image": "https://example.com/content.jpg"}
]
}
]
}'
- 5.0 Pro
- 텍스트-이미지
- 이미지-이미지
- 연속 이미지 생성
- 이미지 편집
- 3.0 모델 (Guidance Scale)
- 4.5 모델 (표준/빠른 모드)
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "dola-seedream-5-0-pro-260628",
"prompt": "미래 도시 야경, 영화 포스터 스타일",
"size": "1024x1024",
"n": 1,
"watermark": false
}'
images URL 배열을 전달하세요. 자세한 내용은 Seedream 5.0 Pro를 참고하세요.curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedream-4-0-250828",
"prompt": "A cute orange kitten sitting in a garden, sunny day, high quality photography",
"size": "2048x2048",
"watermark": false,
"seed": 12345,
"optimize_prompt_options": {
"mode": "standard"
}
}'
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedream-4-0-250828",
"prompt": "Change this image to oil painting style",
"size": "2048x2048",
"watermark": false,
"seed": 12345,
"contents": [
{
"role": "user",
"parts": [
{"image": "data:image/png;base64,iVBORw0KGgoAAxxxx..."},
{"text": "Change this image to oil painting style"}
]
}
]
}'
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedream-4-0-250828",
"prompt": "A cute orange kitten sitting in a garden, sunny day, high quality photography",
"size": "2048x2048",
"watermark": false,
"sequential_image_generation": "auto",
"sequential_image_generation_options": {
"max_images": 4
},
"optimize_prompt_options": {
"mode": "standard"
}
}'
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seededit-3-0-i2i-250628",
"prompt": "Change this image to oil painting style",
"watermark": false,
"guidance_scale": 2.5,
"seed": 12345,
"contents": [
{
"role": "user",
"parts": [
{"image": "data:image/png;base64,iVBORw0KGgoAAxxxx..."},
{"text": "Change this image to oil painting style"}
]
}
]
}'
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedream-3-0-t2i-250415",
"prompt": "A cute orange kitten sitting in a garden, sunny day, high quality photography",
"size": "1024x1024",
"watermark": false,
"guidance_scale": 7.5,
"seed": 12345
}'
# 표준 모드
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedream-4-5-251128",
"prompt": "A cute kitten",
"size": "2048x2048",
"watermark": false,
"optimize_prompt_options": {
"mode": "standard"
}
}'
# 빠른 모드
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedream-4-0-250828",
"prompt": "A cute kitten",
"size": "2048x2048",
"watermark": false,
"optimize_prompt_options": {
"mode": "fast"
}
}'
- 텍스트-이미지
- 이미지-이미지
- 다중 이미지 융합
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2",
"prompt": "A cute orange kitten sitting in a garden, sunny day, high quality photography",
"size": "1024x1024",
"quality": "high",
"n": 1
}'
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2",
"prompt": "Change this image to oil painting style",
"size": "1024x1024",
"quality": "high",
"input_fidelity": "medium",
"n": 1,
"image": "data:image/png;base64,iVBORw0KGgoAAxxxx..."
}'
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2",
"prompt": "Apply the style from the first image to the content of the second image",
"size": "1024x1024",
"quality": "high",
"input_fidelity": "high",
"n": 2,
"images": [
"data:image/png;base64,iVBORw0KGgoAAxxxx...",
"data:image/png;base64,iVBORw0KGgoAAyyyy..."
]
}'
- 텍스트-이미지
- 이미지 편집
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen-image-plus",
"input": {
"messages": [
{
"role": "user",
"content": [
{
"text": "一副典雅庄重的对联悬挂于厅堂之中,房间是个安静古典的中式布置,桌子上放着一些青花瓷,对联上左书“义本生知人机同道善思新”,右书“通云赋智乾坤启数高志远”, 横批“智启通义”,字体飘逸,在中间挂着一幅中国风的画作,内容是岳阳楼。"
}
]
}
]
},
"parameters": {
"negative_prompt": "1",
"prompt_extend": true,
"seed": "4",
"watermark": true
}
}'
curl -X POST "https://api.gravitex.ai/v1/images/generations" \
-H "Authorization: Bearer sk-xxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen-image-edit-plus",
"input": {
"messages": [
{
"role": "user",
"content": [
{
"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/fpakfo/image36.webp"
},
{
"text": "Generate an image that matches the depth map. Description: a red, worn-out bicycle parked on a muddy path, with a dense primeval forest in the background."
}
]
}
]
},
"parameters": {
"n": 2,
"negative_prompt": "low quality",
"watermark": true,
"size": "2048*2048",
"seed": 1
}
}'
모델별 매개변수
모델마다 지원하는 매개변수가 다릅니다. 아래는 모델별 상세 매개변수 설명입니다:- Doubao Seedream
- GPT Image
- Gemini
- Tongyi Qianwen
string
doubao-seedream-3-0-t2i-250415는 입력 이미지에 이 매개변수를 지원하지 않습니다.
URL 또는 Base64 인코딩을 지원합니다. doubao-seedream-4.5와 doubao-seedream-4.0은 단일 또는 다중 이미지 입력을 지원하며(다중 이미지 융합 예제 참고), doubao-seededit-3.0-i2i는 단일 이미지 입력만 지원합니다.
string
이미지 크기, 지원 크기는 모델 버전에 따라 다름:
- doubao-seedream-3.0:
1024x1024,1152x864,864x1152,1280x720,720x1280,1248x832,832x1248,1512x648 - doubao-seedream-4.0/4.5:
2048x2048,2304x1728,1728x2304,2560x1440,1440x2560,2496x1664,1664x2496,3024x1296(2K) or4096x4096,4704x3520,3520x4704,5504x3040,3040x5504,4992x3328,3328x4992,6240x2656(4K)
boolean
기본값:"false"
워터마크 추가 여부
integer
생성 결과의 무작위성을 제어하는 시드. 동일 시드는 유사한 결과를 생성합니다. 범위:
0~2147483647number
가이던스 스케일, 생성 이미지가 프롬프트와 얼마나 일치하는지 제어. 값이 높을수록 엄격하고, 낮을수록 자유로움. 권장 범위:
1.0-10.0, 기본값: 2.5. doubao-seedream-3.0-t2i-250415와 doubao-seededit-3.0-i2i-250628만 지원string
연속 이미지 생성 토글,
doubao-seedream-4.0과 doubao-seedream-4.5만 지원:"auto": 연속 이미지 생성 활성화"disabled": 연속 이미지 생성 비활성화(기본값)
object
연속 이미지 생성 구성 옵션,
sequential_image_generation이 "auto"일 때만 적용:max_images(integer): 최대 이미지 수, 범위1-4, 기본값4
object
doubao-seedream-4.5(현재 standard 모드만 지원)와 doubao-seedream-4.0만 이 매개변수 지원
mode(string): 최적화 모드"standard": 표준 모드, 품질은 높지만 시간이 더 걸림(기본값, 4.0과 4.5 모두 지원)"fast": 빠른 모드, 시간은 짧지만 품질은 보통(4.0만 지원)
string
이미지 크기, 지원:
1024x1024, 1024x1536, 1536x1024. 기본값: 1024x1024string
기본값:"high"
이미지 품질:
"low": 가장 빠른 생성 속도, 최저 비용"medium": 품질과 속도의 균형"high": 최고 품질, 가장 풍부한 디테일(gpt-image-2 기본값)
integer
기본값:"1"
생성할 이미지 수, 범위:
1-10. 생성마다 해당 할당량 소비string
입력 충실도, 이미지-이미지 모드에서만 적용:
"low": 더 많은 창의적 자유, 원본과 차이 큼"medium": 충실도와 창의성의 균형"high": 원본 특징 유지, 변화 작음"auto": 적절한 충실도 자동 선택
string
단일 입력 이미지, URL 또는 Base64 형식 지원(
data:image/...;base64,...)array
다중 입력 이미지 배열, 최대 10장. 각 이미지는 URL 또는 Base64 형식 지원
string
이미지 종횡비, 지원:
1:1, 3:2, 2:3, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9. 픽셀 크기(예: 1024x1024)도 사용 가능하며, 시스템이 해당 비율로 자동 변환string
이미지 품질,
imageSize 매개변수에 매핑:"hd","high","2K":2K해상도로 매핑"standard","medium","low","auto","1K":1K해상도로 매핑(기본값)
integer
기본값:"1"
생성할 이미지 수(
sample_count 매개변수에 해당)string
종횡비,
size 매개변수와 동일한 기능string
기본값:"allow_adult"
인물 생성 제어, 기본값:
"allow_adult"integer
기본값:"32768"
출력 토큰 제한, 기본값:
32768number
기본값:"0.95"
Top-P 샘플링 값, 범위:
0.0-1.0, 기본값: 0.95string
이미지 크기, 지원:
1K(기본값), 2K, 4Kstring
기본값:"image/png"
출력 형식, 지원:
image/png(기본값), image/jpegstring
기본값:"image"
응답 모달리티, 지원:
image(기본값), image-textobject
필수
생성 매개변수 객체, 다음 필드 포함:
role(string, 필수): 메시지 발신자 역할,user로 설정해야 함image(string): qwen-image-edit-plus 모델 전용. URL 또는 Base64 인코딩 이미지 데이터. 입력 이미지 1-3장 지원. 다중 이미지 시 배열 순서로 순서가 정해지며, 출력 종횡비는 마지막 이미지 기준n(integer, 필수): 출력 이미지 수, 기본값 1. qwen-image-edit-plus 시리즈는 1-6장 출력 가능. qwen-image-edit은 1장만 지원negative_prompt(string): 네거티브 프롬프트, 원하지 않는 요소 제외용prompt_extend(boolean, default: true): 프롬프트 확장 활성화 여부. 짧은 프롬프트는 활성화, 상세 프롬프트는 비활성화 권장. qwen-image-edit-plus 시리즈만 지원watermark(boolean, default: true): 워터마크 추가 여부seed(integer): 랜덤 시드, 범위0-2147483647
응답 형식
{
"code": 200,
"msg": "Success",
"data": {
"data": [
{
"url": "",
"b64_json": "iVBORw0KGgoAAAANSUhEUgAABAAAAAQA...",
"revised_prompt": ""
}
],
"created": 1757320007
}
}
지원 모델
Gemini 시리즈
모델명:gemini-2.5-flash-image (Nano Banana)
핵심 기능:
- ✅ 텍스트-이미지(순수 텍스트 설명으로 이미지 생성)
- ✅ 이미지-이미지(단일 이미지 + 텍스트로 새 이미지 생성)
- ✅ 다중 이미지-단일 이미지(2-5장 융합 생성)
- ✅ 다중 턴 대화형 이미지 생성(맥락 기반 연속 수정)
gemini-3-pro-image-preview (Nano Banana Pro)
핵심 기능:
- ✅ 텍스트-이미지(순수 텍스트 설명으로 이미지 생성)
- ✅ 이미지-이미지(단일 이미지 + 텍스트로 새 이미지 생성)
- ✅ 다중 이미지-단일 이미지(2-5장 융합 생성)
- ✅ 다중 턴 대화형 이미지 생성(맥락 기반 연속 수정)
- ✅ 더 높은 품질 출력
Doubao Seedream 시리즈
모델명:dola-seedream-5-0-pro-260628(Seedream 5.0 Pro 전용 페이지)
핵심 기능:
- ✅ 텍스트-이미지
- ✅ 이미지-이미지(단일 이미지 + 텍스트)
- ✅ 다중 이미지 참조/융합
- ✅ 동기 OpenAI 호환
/v1/images/generations - ✅
1K/2K또는 커스텀가로x세로지원 - ⚠️ 현재 요청당 실제 출력 1장(
images는 입력 참조, 출력 장수 아님)
images(URL 배열)
모델명: doubao-seedream-3-0-t2i-250415
핵심 기능:
- ✅ 텍스트-이미지(순수 텍스트 설명으로 이미지 생성)
- ✅ 가이던스 스케일 조절 지원
- ✅ 랜덤 시드 제어 지원
- ❌ 이미지-이미지 미지원
doubao-seedream-4-0-250828
핵심 기능:
- ✅ 텍스트-이미지(순수 텍스트 설명으로 이미지 생성)
- ✅ 이미지-이미지(단일 이미지 + 텍스트로 새 이미지 생성)
- ✅ 다중 이미지 융합(2-5장 융합 생성)
- ✅ 연속 이미지 생성
- ✅ 2K/4K 해상도 지원
- ✅ 다양한 이미지 형식 지원
- 2K: 2048×2048, 2304×1728, 1728×2304, 2560×1440, 1440×2560, 2496×1664, 1664×2496, 3024×1296
- 4K: 4096×4096, 4704×3520, 3520×4704, 5504×3040, 3040×5504, 4992×3328, 3328×4992, 6240×2656
doubao-seedream-4-5-251128
핵심 기능:
- ✅ 텍스트-이미지(순수 텍스트 설명으로 이미지 생성)
- ✅ 이미지-이미지(단일 이미지 + 텍스트로 새 이미지 생성)
- ✅ 다중 이미지 융합(2-5장 융합 생성)
- ✅ 연속 이미지 생성
- ✅ 2K/4K 해상도 지원
- ✅ 프롬프트 최적화 옵션 지원
- ✅ 다양한 이미지 형식 지원
doubao-seededit-3-0-i2i-250628
핵심 기능:
- ✅ 이미지 편집(단일 이미지 + 텍스트 편집)
- ✅ 가이던스 스케일 조절 지원
- ✅ 랜덤 시드 제어 지원
- ✅ 이미지 편집(콘텐츠 수정, 스타일 전환 등)
- ❌ 순수 텍스트-이미지 미지원
GPT 이미지 생성 시리즈
모델명:gpt-image-2
핵심 기능:
- ✅ 텍스트-이미지(순수 텍스트 설명으로 이미지 생성)
- ✅ 이미지-이미지(최대 10장 + 텍스트)
- ✅ 이미지 품질 선택 지원
- ✅ 입력 충실도 조절 지원
- ✅ 다중 이미지 융합 생성
low, medium, high
생성 수: 요청당 1-10장 생성 가능
이미지 입력: JPEG, PNG, GIF, WEBP 형식 지원, 최대 10MB, 최대 10장
Tongyi Qianwen 시리즈
모델명:qwen-image-plus
핵심 기능:
- ✅ 텍스트-이미지(순수 텍스트 설명으로 이미지 생성)
- ✅ 중영문 텍스트 렌더링(이미지 내 복잡한 텍스트 생성에 강점)
- ✅ 다양한 예술 스타일
- ✅ 지능형 프롬프트 확장
- ❌ 이미지-이미지 미지원
qwen-image-edit-plus
핵심 기능:
- ✅ 이미지 편집(이미지 1장 입력, 최대 6장 출력)
- ✅ 이미지 내 텍스트 수정
- ✅ 객체 추가/삭제/이동
- ✅ 이미지 스타일 전환
- ✅ 이미지 디테일 향상
모범 사례
프롬프트 최적화 팁
- Gemini (Nano Banana)
- Doubao Seedream
- GPT Image
- Tongyi Qianwen
-
종횡비 요구 명시: 프롬프트에서 구도 방향 설명
- 가로: “horizontal composition”, “widescreen view” 사용
- 세로: “vertical composition”, “vertical view” 사용
-
고품질 키워드:
- “high quality”, “HD”, “professional photography”
- “8k resolution”, “rich details”
-
다중 이미지 융합 기법:
- 각 이미지의 역할을 명확히 설명
- 융합 방식 지정(스타일 전환, 요소 결합 등)
-
스타일 요구 명시:
- 사실적 스타일: “photorealistic”, “ultra-realistic” 추가
- 예술적 스타일: “oil painting style”, “watercolor”, “sketch” 추가
- 애니메이션 스타일: “anime style”, “2D”, “cartoon” 추가
-
고품질 키워드:
- “4K resolution”, “8K quality”, “ultra-high details”
- “professional photography”, “cinematic lighting”
-
연속 이미지 생성 기법(doubao-seedream-4.x):
- 프롬프트 스타일 일관성 유지
sequential_image_generation매개변수로 연속 모드 활성화max_images매개변수로 이미지 수 제어(1-4장)
-
프롬프트 최적화(doubao-seedream-4.5):
optimize_prompt_options매개변수로 프롬프트 최적화- 선택 모드:
standard(표준),creative(창의),precise(정밀)
-
이미지 품질 명시:
quality매개변수로 품질 제어:low,medium,high- 고품질 이미지에는 “professional photography”, “high detail”, “8K” 등 설명어 추가
-
다중 이미지 입력 기법:
- 최대 10장 입력 지원
input_fidelity매개변수로 입력 이미지 충실도 제어:low,medium,high,auto- 각 참조 이미지의 역할을 명확히 설명
-
프롬프트 최적화:
- 원하는 이미지 콘텐츠를 상세히 설명
- 예술 스타일, 조명 조건, 구도 방식 지정
- 원하지 않는 콘텐츠 제외를 위한 네거티브 설명 추가
-
이미지 수 제어:
n매개변수로 생성 수 제어(1-10장)- 복잡한 장면은 여러 장 생성 후 최적 결과 선택 권장
-
텍스트 렌더링 기법:
- 프롬프트에서 텍스트 콘텐츠를 따옴표로 명확히 표시
- 예: “A poster with title “Summer Sale""
-
프롬프트 확장:
- 짧은 프롬프트:
prompt_extend: true활성화 - 상세 프롬프트:
prompt_extend: false비활성화
- 짧은 프롬프트:
-
네거티브 프롬프트:
- 원하지 않는 요소 제외: “blurry, low quality, watermark”
- 텍스트 렌더링: “blurry text, typos”
크기 선택 팁
- 소셜 미디어
- 디자인 용도
- WeChat Moments: 1328×1328 (1:1) 또는 1140×1472 (3:4)
- Weibo 헤더: 1664×928 (16:9)
- TikTok 커버: 928×1664 (9:16)
- Xiaohongshu: 1140×1472 (3:4)
- 웹사이트 배너: 1664×928 (16:9) 또는 21:9
- 포스터: 1140×1472 (3:4) 또는 928×1664 (9:16)
- 제품 이미지: 1328×1328 (1:1)
- 모바일 배경화면: 928×1664 (9:16)
FAQ
- 일반 질문
- Gemini (Nano Banana)
- Doubao Seedream
- GPT Image
- Tongyi Qianwen
지원하는 이미지 형식은?
지원하는 이미지 형식은?
모델마다 지원 형식이 다릅니다:
- Gemini: PNG, JPEG, JPG, WEBP, 최대 7MB
- Doubao Seedream 3.0/4.0: JPEG, PNG, 최대 10MB
- Doubao Seedream 4.5: JPEG, PNG, WEBP, BMP, TIFF, GIF, 최대 10MB
- GPT Image: JPEG, PNG, GIF, WEBP, 최대 10MB
- Tongyi Qianwen: JPEG, JPG, PNG, BMP, TIFF, WEBP, 최대 10MB
생성된 이미지 URL 유효 기간은?
생성된 이미지 URL 유효 기간은?
이미지 URL은 약 24시간 유효합니다. 응답 수신 후 즉시 다운로드·저장하거나 자체 스토리지에 업로드하는 것을 권장합니다.
한 번에 여러 이미지를 생성할 수 있나요?
한 번에 여러 이미지를 생성할 수 있나요?
Tongyi Qianwen 시리즈는 요청당 1장 생성합니다. 여러 장이 필요하면 동시에 여러 요청을 보내세요.
대화에서 동일 종횡비를 유지하려면?
대화에서 동일 종횡비를 유지하려면?
contents 대화 배열에서 각 요청에 size 매개변수를 포함해야 하며, 시스템이 지정된 종횡비를 현재 요청에 적용합니다.URL 이미지 사용 요구 사항은?
URL 이미지 사용 요구 사항은?
URL은 공개 접근 가능한 HTTP/HTTPS 주소여야 하며, PNG, JPEG, JPG, WEBP 형식 지원, 최대 7MB.
다중 이미지 융합은 몇 장까지 지원하나요?
다중 이미지 융합은 몇 장까지 지원하나요?
2-5장 동시 입력 지원, 2-3장이 최적 결과에 권장됩니다.
doubao-seedream-3.0은 이미지-이미지를 지원하나요?
doubao-seedream-3.0은 이미지-이미지를 지원하나요?
아니요. doubao-seedream-3-0-t2i-250415는 순수 텍스트-이미지 모델로, 텍스트 설명을 통한 이미지 생성만 지원합니다.
doubao-seedream-4.x가 지원하는 이미지 형식은?
doubao-seedream-4.x가 지원하는 이미지 형식은?
doubao-seedream-4.0과 4.5는 JPEG, PNG, WEBP, BMP, TIFF, GIF 형식 지원, 최대 10MB.
연속 이미지 생성은 어떻게 사용하나요?
연속 이미지 생성은 어떻게 사용하나요?
sequential_image_generation 매개변수를 auto로 설정해 연속 모드를 활성화합니다. max_images로 이미지 수(1-4장)를 제어할 수 있습니다.프롬프트 최적화 옵션의 역할은?
프롬프트 최적화 옵션의 역할은?
doubao-seedream-4.5는
optimize_prompt_options 매개변수를 지원하며, standard(표준), creative(창의), precise(정밀) 모드로 프롬프트 효과를 최적화합니다.doubao-seededit가 지원하는 편집 기능은?
doubao-seededit가 지원하는 편집 기능은?
doubao-seededit-3-0-i2i-250628은 콘텐츠 수정, 스타일 전환, 디테일 향상 등 이미지 편집을 지원하며, 이미지 1장과 편집 지시가 필요합니다.
GPT Image가 지원하는 이미지 형식은?
GPT Image가 지원하는 이미지 형식은?
JPEG, PNG, GIF, WEBP 형식 지원, 최대 10MB.
최대 몇 장까지 입력할 수 있나요?
최대 몇 장까지 입력할 수 있나요?
gpt-image-2는 최대 10장 입력을 지원합니다.
이미지 품질 매개변수는 어떻게 선택하나요?
이미지 품질 매개변수는 어떻게 선택하나요?
quality 매개변수 옵션: low, medium, high:low: 가장 빠른 생성 속도, 최저 비용medium: 품질과 속도의 균형high: 최고 품질, 가장 풍부한 디테일
입력 충실도의 역할은?
입력 충실도의 역할은?
input_fidelity 매개변수는 입력 이미지 충실도를 제어하며, 옵션: low, medium, high, auto:low: 더 많은 창의적 자유, 원본과 차이 큼high: 원본 특징 유지, 변화 작음auto: 적절한 충실도 자동 선택
한 번에 여러 이미지를 생성할 수 있나요?
한 번에 여러 이미지를 생성할 수 있나요?
예,
n 매개변수로 생성 수(1-10장)를 제어할 수 있으며, 각 이미지마다 해당 할당량이 소비됩니다.qwen-image-plus는 이미지-이미지를 지원하나요?
qwen-image-plus는 이미지-이미지를 지원하나요?
아니요. qwen-image-plus는 순수 텍스트-이미지 모델로, 텍스트 설명을 통한 이미지 생성만 지원합니다.
중국어 텍스트가 포함된 이미지는 어떻게 생성하나요?
중국어 텍스트가 포함된 이미지는 어떻게 생성하나요?
프롬프트에서 텍스트 콘텐츠를 명확히 지정하세요. 예: “A poster with title “Double Eleven Sale”, subtitle “All Items 50% Off""
프롬프트 확장과 네거티브 프롬프트를 함께 사용할 수 있나요?
프롬프트 확장과 네거티브 프롬프트를 함께 사용할 수 있나요?
예! 충돌하지 않습니다. 권장: 짧은 프롬프트 + 확장 활성화 + 네거티브 프롬프트 추가.
관련 리소스
비디오 생성
비디오 생성 API 문서 보기
모델 목록
지원하는 모든 모델 정보 보기
