Skip to main content
Este artículo presentará unas instrucciones de integración de SeeDream Images Generation API, que permite generar imágenes oficiales de SeeDream introduciendo parámetros personalizados.

Proceso de solicitud

Para utilizar SeeDream Images Generation API, primero obtenga su API Token en la consola de Ace Data Cloud y guárdelo para usarlo más adelante. Si aún no ha iniciado sesión o no se ha registrado, se le redirigirá automáticamente a la página de inicio de sesión para invitarle a registrarse e iniciar sesión; al completarlo, volverá automáticamente a la página actual. Un API Token permite llamar a todos los servicios de la plataforma, sin necesidad de solicitar uno por separado para cada servicio. La primera solicitud incluye saldo gratuito para una experiencia sin costo; cuando el saldo sea insuficiente, puede recargar el saldo general en la consola.
📘 Documentación completa: SeeDream Images Generation API →

Uso básico

Primero, veamos el uso básico: introduciendo el texto de indicación prompt, la acción de generación action y el tamaño de imagen size, puede obtener el resultado procesado. Primero debe pasar simplemente un campo action con el valor generate, y después también debe introducir el texto de indicación; el contenido específico es el siguiente:

Aquí podemos ver que configuramos los Request Headers, incluidos:
  • accept: el formato de resultado de respuesta que desea recibir; aquí se rellena como application/json, es decir, formato JSON.
  • authorization: la clave para llamar a la API; después de solicitarla, puede seleccionarla directamente en el menú desplegable.
También se configuró el Request Body, incluido:
  • prompt: texto de indicación.
  • model: modelo de generación, el predeterminado es doubao-seedream-5-0-lite-260128 (SeeDream 5.0 Lite, el más reciente). Admite doubao-seedream-5-0-pro-260628, doubao-seedream-5-0-lite-260128, doubao-seedream-4-5-251128, doubao-seedream-4-0-250828. Entre ellos, doubao-seedream-5-0-pro-260628 (SeeDream 5.0 Pro) es un modelo insignia de imagen única, que solo genera una imagen, no admite grupos de imágenes (sequential_image_generation), transmisión en flujo (stream) ni búsqueda web (tools). model debe recibir la cadena completa del modelo (como doubao-seedream-5-0-lite-260128); pasar abreviaturas como doubao-seedream-5.0-lite devolverá 400.
  • image: información de la imagen de entrada; admite URL o codificación Base64. doubao-seedream-5-0-pro-260628 admite entrada de una o varias imágenes (hasta 10), y doubao-seedream-5-0-lite-260128, doubao-seedream-4-5-251128, doubao-seedream-4-0-250828 admiten entrada de una o varias imágenes.
  • size: especifica la información de tamaño de la imagen generada; admite las siguientes dos formas, que no se pueden mezclar. Forma 1 | Especificar la resolución de la imagen generada y describir la relación de aspecto de la imagen con lenguaje natural en el prompt. Los preajustes admitidos por cada modelo son diferentes: doubao-seedream-5-0-pro-260628 admite 1K/1.5K/2K; doubao-seedream-5-0-lite-260128 admite 2K/3K/4K; doubao-seedream-4-5-251128 solo admite 2K/4K; doubao-seedream-4-0-250828 admite 1K/2K/4K. Forma 2 | Especificar los valores de píxeles de ancho y alto de la imagen generada: el valor predeterminado es 2048x2048; el rango de valores del total de píxeles y de la relación de aspecto varía según el modelo (por ejemplo, el rango total de píxeles de 5.0 Pro es [921600, 4624220], el límite inferior total de píxeles de 5.0 Lite / 4.5 es 3,686,400 y el límite inferior de 4.0 es 921,600).
  • sequential_image_generation: grupo de imágenes: un conjunto de imágenes con contenido relacionado generado según el contenido introducido. doubao-seedream-5-0-lite-260128, doubao-seedream-4-5-251128, doubao-seedream-4-0-250828 admiten este parámetro; el valor predeterminado es disabled.
  • stream: controla si se activa el modo de salida en flujo. doubao-seedream-5-0-lite-260128, doubao-seedream-4-5-251128, doubao-seedream-4-0-250828 admiten este parámetro; el valor predeterminado es false.
  • response_format: especifica el formato de retorno de la imagen generada. El valor predeterminado es url, y también admite b64_json.
  • watermark: si se añade una marca de agua a la imagen generada. El valor predeterminado es true.
  • output_format: especifica el formato de archivo de la imagen generada; admite jpeg (predeterminado) y png. Solo doubao-seedream-5-0-pro-260628 y doubao-seedream-5-0-lite-260128 lo admiten.
  • tools: configura las herramientas que debe llamar el modelo; actualmente admite web_search (búsqueda web). Solo Seedream 5.0 Lite lo admite.
  • optimize_prompt_options: configuración de optimización del texto de indicación. 5.0 Pro admite standard/fast; 5.0 Lite y 4.5 solo admiten standard; 4.0 admite standard/fast.
  • background: solo es compatible con la edición de imagen única de 5.0 Pro. transparent requiere introducir una PNG con canal transparente, y output_format debe ser png; opaque corresponde a un fondo opaco normal.
  • layer_decomposition: solo 5.0 Pro lo admite. Cuando se establece en true, debe introducirse una PNG/JPEG; puede no pasarse prompt para realizar la separación automática, o especificar elementos mediante lenguaje natural/<bbox>; size admite auto/1K/1.5K/2K. Este modo no se puede usar junto con grupos de imágenes, transmisión en flujo, búsqueda web ni background.
  • callback_url: URL que necesita recibir el resultado de la devolución de llamada.
  • async: si se procesa en modo asíncrono. Cuando se establece en true, la interfaz devuelve inmediatamente task_id, sin necesidad de proporcionar callback_url; posteriormente, obtenga el resultado mediante sondeo a través de /seedream/tasks.
Después de seleccionarlos, puede observar que también se genera el código correspondiente a la derecha, como se muestra en la imagen:

Haga clic en el botón «Try» para realizar una prueba; como se muestra en la imagen anterior, aquí obtenemos el siguiente resultado:
El resultado devuelto tiene varios campos en total, descritos a continuación:
  • success, el estado actual de la tarea de generación de video.
  • task_id, el ID actual de la tarea de generación de video.
  • trace_id, el ID actual de seguimiento de la generación de video.
  • data, la lista de resultados de la tarea actual de generación de imágenes.
    • image_url, el enlace de la tarea actual de generación de imágenes.
    • prompt, la palabra de indicación.
    • size: los píxeles de la imagen generada
Podemos ver que hemos obtenido información satisfactoria de la imagen; solo necesitamos obtener la imagen SeeDream generada según la dirección del enlace de la imagen en data del resultado. Además, si deseas generar el código de integración correspondiente, puedes copiarlo directamente; por ejemplo, el código CURL es el siguiente:

Tarea de edición de imágenes

Si deseas editar una imagen, primero el parámetro image debe incluir el enlace de la imagen que se necesita editar.
  • model: el modelo utilizado para esta tarea de edición de imágenes; doubao-seedream-5-0-pro-260628, doubao-seedream-5-0-lite-260128, doubao-seedream-4-5-251128, doubao-seedream-4-0-250828 admiten todos entrada de imágenes.
  • image: carga la imagen que se necesita editar, una o varias
El ejemplo de relleno es el siguiente:

El código correspondiente:
Haz clic en ejecutar y podrás ver que se obtiene inmediatamente un resultado, como el siguiente:
Se puede ver que el efecto generado es el efecto de editar la imagen original, y el resultado es similar al anterior.

Descomposición de capas (Seedream 5.0 Pro)

La descomposición de capas dividirá una imagen de entrada en 1 imagen de fondo y hasta 16 capas PNG transparentes que pueden editarse de forma independiente. La siguiente solicitud permite al modelo identificar automáticamente los elementos principales; si necesitas especificar elementos, puedes añadir prompt, y también puedes utilizar coordenadas <bbox> normalizadas en la palabra de indicación.
Los data devueltos se ordenan de abajo hacia arriba según z_index. El z_index de la imagen de fondo es 0; las capas también incluyen name, description y bounding_box.absolute/normalized. Al recomponer utilizando coordenadas absolutas, escala las capas a [right-left, bottom-top], colócalas en [left, top] y luego superpónlas en orden ascendente de z_index. Si la generación de cualquier capa falla, toda la descomposición falla.

Salida en streaming

Cuando Lite/4.x establece stream: true, utiliza accept: application/x-ndjson en el encabezado de la solicitud. La interfaz devuelve línea por línea image_generation.partial_succeeded o image_generation.partial_failed, y finalmente devuelve el único evento image_generation.completed y el usage final; solo el evento de finalización activa una facturación. El modo de streaming no puede utilizarse junto con async o callback_url.

Devolución de llamada asíncrona

Dado que la API de generación de imágenes SeeDream tarda relativamente mucho tiempo en generar, aproximadamente 1-2 minutos, si la API no responde durante mucho tiempo, la solicitud HTTP mantendrá la conexión abierta, lo que provoca un consumo adicional de recursos del sistema; por lo tanto, esta API también proporciona soporte para devoluciones de llamada asíncronas. El flujo general es: cuando el cliente inicia una solicitud, especifica adicionalmente un campo callback_url; después de que el cliente inicia la solicitud API, la API devolverá inmediatamente un resultado, que incluye información de un campo task_id, que representa el ID de la tarea actual. Cuando la tarea se completa, el resultado de la generación de imágenes se enviará mediante POST JSON al callback_url especificado por el cliente, que también incluye el campo task_id, de modo que los resultados de la tarea pueden asociarse mediante el ID. Si no tienes una dirección pública disponible para la devolución de llamada, tampoco puedes especificar callback_url, sino establecer el campo async en true en la solicitud. En este momento, la interfaz también devolverá inmediatamente task_id, pero no enviará el resultado; debes llevar este task_id para llamar a la interfaz /seedream/tasks y sondear el estado de la tarea para obtener el resultado final. A continuación, comprenderemos mediante ejemplos cómo operar específicamente. Haz clic en ejecutar y podrás ver que se obtiene inmediatamente un resultado, como el siguiente:
El contenido es el siguiente:
Se puede ver que hay un campo task_id en el resultado; los demás campos son similares a los anteriores, y la asociación de tareas se puede lograr mediante este campo.

Manejo de errores

Al llamar a la API, si se produce un error, la API devolverá el código de error y la información correspondientes. Por ejemplo:
  • 400 token_mismatched: Solicitud incorrecta, posiblemente debido a parámetros faltantes o no válidos.
  • 400 api_not_implemented: Solicitud incorrecta, posiblemente debido a parámetros faltantes o no válidos.
  • 401 invalid_token: No autorizado, token de autorización no válido o faltante.
  • 429 too_many_requests: Demasiadas solicitudes, has superado el límite de velocidad.
  • 500 api_error: Error interno del servidor, algo salió mal en el servidor.

Ejemplo de respuesta de error

Conclusión

A través de este documento, ya has aprendido cómo utilizar SeeDream Images Generation API para generar imágenes introduciendo textos de indicación. Esperamos que este documento pueda ayudarte a integrar y utilizar mejor esta API. Si tienes alguna pregunta, no dudes en ponerte en contacto con nuestro equipo de soporte técnico.