신청 절차
SeeDream Images Generation API를 사용하려면 먼저 Ace Data Cloud 콘솔에서 API Token을 발급받아 예비용으로 보관하세요.
아직 로그인하거나 등록하지 않은 경우 로그인 페이지로 자동 이동하여 등록 및 로그인을 안내하며, 완료 후 현재 페이지로 자동 돌아옵니다.
하나의 API Token으로 플랫폼의 모든 서비스를 호출할 수 있으며, 서비스별로 별도 신청할 필요가 없습니다. 최초 신청 시 무료 크레딧이 제공되어 무료로 체험할 수 있으며, 크레딧이 부족할 경우 콘솔에서 공용 잔액을 충전할 수 있습니다.
📘 전체 문서: SeeDream Images Generation API →
기본 사용
먼저 기본 사용 방식을 알아보겠습니다. 즉, 프롬프트prompt, 생성 동작 action, 이미지 크기 size를 입력하면 처리된 결과를 얻을 수 있습니다. 먼저 action 필드를 간단히 전달해야 하며, 그 값은 generate입니다. 그런 다음 프롬프트도 입력해야 하며, 구체적인 내용은 다음과 같습니다:

accept: 어떤 형식의 응답 결과를 받을지 지정하며, 여기서는 JSON 형식인application/json으로 입력합니다.authorization: API 호출 키이며, 신청 후 직접 드롭다운에서 선택할 수 있습니다.
prompt: 프롬프트.model: 생성 모델이며, 기본값은doubao-seedream-5-0-lite-260128(SeeDream 5.0 Lite, 최신)입니다.doubao-seedream-5-0-pro-260628,doubao-seedream-5-0-lite-260128,doubao-seedream-4-5-251128,doubao-seedream-4-0-250828을 지원합니다. 이 중doubao-seedream-5-0-pro-260628(SeeDream 5.0 Pro)는 플래그십 단일 이미지 모델로, 단일 이미지만 생성하며 이미지 그룹(sequential_image_generation), 스트리밍(stream) 및 웹 검색(tools)을 지원하지 않습니다.model에는 전체 모델 문자열(예:doubao-seedream-5-0-lite-260128)을 반드시 전달해야 하며,doubao-seedream-5.0-lite와 같은 축약형을 전달하면 400이 반환됩니다.image: 입력 이미지 정보로, URL 또는 Base64 인코딩을 지원합니다.doubao-seedream-5-0-pro-260628은 단일 이미지 또는 여러 이미지 입력(최대 10장)을 지원하며,doubao-seedream-5-0-lite-260128,doubao-seedream-4-5-251128,doubao-seedream-4-0-250828은 단일 이미지 또는 여러 이미지 입력을 지원합니다.size: 생성 이미지의 크기 정보를 지정하며, 다음 두 가지 방식을 지원하고 혼용할 수 없습니다. 방식 1 | 생성 이미지의 해상도를 지정하고, prompt에서 자연어로 이미지의 가로세로 비율을 설명합니다. 각 모델이 지원하는 프리셋은 서로 다릅니다:doubao-seedream-5-0-pro-260628은1K/1.5K/2K를 지원하며,doubao-seedream-5-0-lite-260128은2K/3K/4K를 지원하고,doubao-seedream-4-5-251128은2K/4K만 지원하며,doubao-seedream-4-0-250828은1K/2K/4K를 지원합니다. 방식 2 | 생성 이미지의 가로세로 픽셀값을 지정합니다: 기본값은2048x2048이며, 총 픽셀 수와 가로세로 비율의 범위는 모델마다 다릅니다(예: 5.0 Pro의 총 픽셀 범위는 [921600, 4624220]이고, 5.0 Lite / 4.5의 총 픽셀 하한은 3,686,400이며, 4.0의 하한은 921,600입니다).sequential_image_generation: 이미지 그룹: 입력한 내용을 기반으로 내용이 서로 연관된 이미지 그룹을 생성합니다.doubao-seedream-5-0-lite-260128,doubao-seedream-4-5-251128,doubao-seedream-4-0-250828은 이 파라미터를 지원하며, 기본값은disabled입니다.stream: 스트리밍 출력 모드를 활성화할지 제어합니다.doubao-seedream-5-0-lite-260128,doubao-seedream-4-5-251128,doubao-seedream-4-0-250828은 이 파라미터를 지원하며, 기본값은false입니다.response_format: 생성 이미지의 반환 형식을 지정합니다. 기본값은url이며,b64_json도 지원합니다.watermark: 생성된 이미지에 워터마크를 추가할지 여부입니다. 기본값은true입니다.output_format: 생성 이미지의 파일 형식을 지정하며,jpeg(기본값) 및png를 지원합니다.doubao-seedream-5-0-pro-260628및doubao-seedream-5-0-lite-260128만 지원합니다.tools: 모델이 호출할 도구를 구성하며, 현재web_search(웹 검색)를 지원합니다. Seedream 5.0 Lite만 지원합니다.optimize_prompt_options: 프롬프트 최적화 구성입니다. 5.0 Pro는standard/fast를 지원하며, 5.0 Lite와 4.5는standard만 지원하고, 4.0은standard/fast를 지원합니다.background: 5.0 Pro 단일 이미지 편집만 지원합니다.transparent는 투명 채널이 있는 PNG 한 장의 입력을 요구하며,output_format은 반드시png여야 합니다.opaque는 일반 불투명 배경입니다.layer_decomposition: 5.0 Pro만 지원합니다.true로 설정하면 PNG/JPEG 한 장을 반드시 입력해야 하며,prompt를 전달하지 않아도 자동으로 분할하거나 자연어/<bbox>로 요소를 지정할 수 있습니다.size는auto/1K/1.5K/2K를 지원합니다. 이 모드는 이미지 그룹, 스트리밍, 웹 검색 또는background와 함께 사용할 수 없습니다.callback_url: 결과 콜백이 필요한 URL입니다.async: 비동기 모드로 처리할지 여부입니다.true로 설정하면 인터페이스는 즉시task_id를 반환하며,callback_url을 제공할 필요 없이 이후/seedream/tasks를 통해 폴링하여 결과를 가져옵니다.

success, 현재 비디오 생성 작업의 상태입니다.task_id, 현재 비디오 생성 작업 ID입니다.trace_id, 현재 비디오 생성 추적 ID입니다.data, 현재 이미지 생성 작업의 결과 목록입니다.image_url, 현재 이미지 생성 작업의 링크입니다.prompt, 프롬프트입니다.size: 생성 이미지의 픽셀입니다.
data에 있는 이미지 링크 주소를 통해 생성된 SeeDream 이미지를 가져오기만 하면 됩니다.
또한 해당 연동 코드를 생성하려면 직접 복사하여 생성할 수 있으며, 예를 들어 CURL 코드는 다음과 같습니다:
이미지 편집 작업
특정 이미지를 편집하려는 경우, 먼저 매개변수image에 편집할 이미지 링크를 반드시 전달해야 합니다.
- model: 이번 이미지 편집 작업에 사용되는 모델이며,
doubao-seedream-5-0-pro-260628,doubao-seedream-5-0-lite-260128,doubao-seedream-4-5-251128,doubao-seedream-4-0-250828은 모두 이미지 입력을 지원합니다. - image: 편집할 이미지를 업로드하며, 한 장 또는 여러 장일 수 있습니다.

레이어 분해(Seedream 5.0 Pro)
레이어 분해는 하나의 입력 이미지를 1장의 배경 이미지와 최대 16개의 독립적으로 편집 가능한 투명 PNG 레이어로 분해합니다. 아래 요청은 모델이 주요 요소를 자동으로 인식하도록 합니다. 요소를 지정해야 하는 경우prompt를 추가할 수 있으며, 프롬프트에서 정규화된 <bbox> 좌표를 사용할 수도 있습니다.
data는 z_index에 따라 아래에서 위 순으로 정렬됩니다. 배경 이미지의 z_index는 0이며, 레이어에는 name, description, bounding_box.absolute/normalized도 포함됩니다. 절대 좌표를 사용하여 재구성할 때는 레이어를 [right-left, bottom-top]으로 크기 조정하고, [left, top]에 배치한 후 z_index 오름차순으로 쌓습니다. 어떤 레이어라도 생성에 실패하면 전체 분해가 실패합니다.
스트리밍 출력
Lite/4.x에서stream: true를 설정할 경우, 요청 헤더로 accept: application/x-ndjson를 사용합니다. 인터페이스는 줄마다 image_generation.partial_succeeded 또는 image_generation.partial_failed를 반환하며, 마지막으로 유일한 image_generation.completed 이벤트와 최종 usage를 반환합니다. 완료 이벤트만 한 번 과금됩니다. 스트리밍 모드는 async 또는 callback_url과 함께 사용할 수 없습니다.
비동기 콜백
SeeDream Images Generation API의 생성 시간은 비교적 길며, 약 1~2분이 소요됩니다. API가 장시간 응답하지 않으면 HTTP 요청이 계속 연결 상태를 유지하여 추가 시스템 리소스가 소모되므로, 본 API는 비동기 콜백도 지원합니다. 전체 프로세스는 다음과 같습니다. 클라이언트가 요청을 시작할 때callback_url 필드를 추가로 지정합니다. 클라이언트가 API 요청을 시작한 후 API는 즉시 현재 작업 ID를 나타내는 task_id 필드 정보를 포함한 결과를 반환합니다. 작업이 완료된 후 생성된 이미지 결과는 POST JSON 형식으로 클라이언트가 지정한 callback_url로 전송되며, 이 안에도 task_id 필드가 포함되어 있으므로 작업 결과를 ID로 연결할 수 있습니다.
콜백에 사용할 수 있는 공용 네트워크 주소가 없다면 callback_url을 지정하지 않고 요청에서 async 필드를 true로 설정할 수도 있습니다. 이 경우 인터페이스 역시 즉시 task_id를 반환하지만 결과를 푸시하지 않으므로, 해당 task_id를 가지고 /seedream/tasks 인터페이스를 호출하여 작업 상태를 폴링하고 최종 결과를 가져와야 합니다.
아래에서 예시를 통해 구체적으로 어떻게 조작하는지 알아보겠습니다.
실행을 클릭하면 즉시 다음과 같은 결과를 얻는 것을 확인할 수 있습니다:
task_id 필드가 있는 것을 확인할 수 있으며, 다른 필드는 위와 유사합니다. 이 필드를 통해 작업의 연결을 구현할 수 있습니다.
오류 처리
API를 호출할 때 오류가 발생하면 API는 해당 오류 코드와 정보를 반환합니다. 예를 들면 다음과 같습니다.400 token_mismatched: 잘못된 요청으로, 매개변수가 누락되었거나 유효하지 않기 때문일 수 있습니다.400 api_not_implemented: 잘못된 요청으로, 매개변수가 누락되었거나 유효하지 않기 때문일 수 있습니다.401 invalid_token: 권한 없음, 인증 토큰이 유효하지 않거나 누락되었습니다.429 too_many_requests: 요청이 너무 많습니다. 속도 제한을 초과했습니다.500 api_error: 내부 서버 오류로, 서버에서 문제가 발생했습니다.

