Image
Seedream 5.5
Appelez Seedream 5.5 pour créer des images à partir de texte, retoucher avec jusqu’à 10 références, obtenir des fonds transparents et décomposer en calques avec reconnaissance de texte, au prix par image et sous forme de tâche.
Seedream 5.5 est le modèle d’images de ByteDance. Une requête crée une image à partir d’un prompt, ou d’un prompt et de jusqu’à 10 images de référence, ou décompose une image en une image de fond et des calques transparents, avec éventuellement le texte reconnu dans chaque calque de texte. Envoyez la requête, conservez l’identifiant de tâche renvoyé et récupérez les images terminées dans la tâche. Les images de référence sont transmises sous forme d’URL.
ID de modèle
| ID de modèle | Entrées | Taille de sortie | Images par requête |
|---|---|---|---|
seedream-5-5 | texte, 0–10 images | 1K, 1.5K, 2K ou WIDTHxHEIGHT | 1, ou 2–100 avec la décomposition en calques (image de fond comprise) |
Consultez la page du modèle pour les prix actuels.
Exemple rapide
curl https://api.seedrouter.ai/v1/images/generations \
-H "Authorization: Bearer $SEEDROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedream-5-5",
"prompt": "A ceramic teapot shaped like a sleeping fox on a linen tablecloth, soft morning window light, shallow depth of field. No text.",
"size": "1K"
}'Point de terminaison
POST https://api.seedrouter.ai/v1/images/generations| En-tête | Valeur |
|---|---|
| Authorization | Bearer YOUR_API_KEY |
| Content-Type | application/json |
La réponse est une tâche ({"id": "task_...", "status": "processing"}), pas l’image terminée. Interrogez GET /v1/tasks/{task_id} pour obtenir le résultat. Gardez les clés API dans le code côté serveur. Les références et la décomposition en calques sont transmises dans la même requête via image ; /v1/images/edits n’est pas utilisé pour ce modèle et renvoie 400.
Paramètres
| Champ | Type | Par défaut | Remarques |
|---|---|---|---|
model | chaîne | requis | seedream-5-5 |
prompt | chaîne | requis | Décrit l’image à créer. Facultatif avec layer_decomposition : indiquez les éléments à séparer, ou omettez-le pour que le modèle trouve lui-même les sujets, le texte et le fond. |
image | URL ou liste d’URL | aucune | Une URL d’image publique, ou une liste de 10 URL au maximum. Sans ce champ, la requête génère une image à partir de texte. Avec layer_decomposition, exactement une. Chaque référence est facturée. |
size | chaîne | 2K | Un palier 1K, 1.5K ou 2K, ou des dimensions précises WIDTHxHEIGHT — voir Taille de sortie. Avec layer_decomposition : uniquement auto (par défaut), 1K, 1.5K ou 2K. |
output_format | énumération | png | png ou jpeg. Avec layer_decomposition, définit uniquement l’image de fond ; les calques sont toujours en PNG. |
background | énumération | auto | auto, opaque ou transparent. transparent fonctionne avec ou sans références et nécessite une sortie png. Omettez ce champ avec layer_decomposition, même pour auto. |
layer_decomposition | booléen | false | Décompose l’unique image d’entrée en une image de fond et des calques PNG transparents. |
layer_decomposition_options.max_images | entier | 30 | Uniquement avec layer_decomposition. 2–100, image de fond comprise. C’est une limite maximale : le modèle peut en renvoyer moins. |
layer_decomposition_options.text_recognition | booléen | false | Uniquement avec layer_decomposition. Ajoute le texte reconnu aux calques de texte ordinaire — voir Reconnaissance de texte. |
optimize_prompt_options.mode | énumération | standard | Uniquement standard. L’optimisation du prompt est toujours activée et ne peut pas être désactivée. |
watermark | booléen | false | true ajoute une mention « AI generated ». |
content_filter | booléen | true | Disponible uniquement via l’API. Le Playground le garde toujours activé. |
Les champs ne figurant pas dans cette liste sont supprimés avant la transmission de la requête ; ils ne provoquent jamais d’erreur et ne modifient jamais la sortie. n, stream, seed et response_format ne sont pas disponibles : chaque requête renvoie une image ou, avec layer_decomposition, jusqu’à max_images. callback_url n’est pas disponible ; interrogez plutôt la tâche.
Taille de sortie
| Forme | Exemple | Règles |
|---|---|---|
| Palier | "size": "2K" | 1K, 1.5K ou 2K. Décrivez la forme dans prompt ; le modèle s’en sert pour choisir le format d’image. |
| Dimensions précises en pixels | "size": "2560x1440" | De 921 600 à 4 624 220 pixels au total ; rapport largeur/hauteur entre 1/16 et 16. |
Il n’existe pas de palier 3K ou 4K et on ne peut pas saisir directement un format d’image : pour un cadre fixe en 16:9 et 2K, envoyez 2560x1440. 1K et 1.5K coûtent le même prix ; 2K et toute taille dépassant 2,61 millions de pixels coûtent plus cher (voir les facteurs de coût).
Images de référence
Passez une image pour la retoucher, ou plusieurs pour les combiner, et indiquez dans prompt ce qu’il faut conserver et modifier. Désignez-les par leur ordre (« la veste de l’image 1 »).
{
"model": "seedream-5-5",
"prompt": "Turn this scene into a snowy winter night with warm light from the lighthouse windows, keep the composition",
"image": "https://example.com/lighthouse.jpg",
"size": "2560x1440"
}Fond transparent
Définissez background: "transparent" pour obtenir un PNG au fond transparent, à partir d’un prompt seul ou de références :
{
"model": "seedream-5-5",
"prompt": "A glossy red enamel pin shaped like a cherry, product cutout",
"background": "transparent",
"output_format": "png",
"size": "1K"
}Décomposition en calques
Envoyez exactement une image avec layer_decomposition: true. La tâche renvoie d’abord l’image de fond, puis chaque calque en PNG transparent.
{
"model": "seedream-5-5",
"image": "https://example.com/poster.jpg",
"layer_decomposition": true,
"size": "1K",
"layer_decomposition_options": { "max_images": 4, "text_recognition": true }
}Chaque calque contient z_index (l’image de fond vaut 0 ; les nombres supérieurs se placent au-dessus), background et, lorsque le modèle les fournit, name, description et bounding_box. bounding_box.absolute correspond à [left, top, right, bottom] en pixels de l’image de fond ; bounding_box.normalized représente la même boîte ramenée à une échelle de 0–1000. Les fichiers des calques sont produits au palier choisi ; leurs dimensions en pixels peuvent donc différer de celles de la boîte : pour reconstruire l’image, redimensionnez chaque calque à sa boîte et placez-le sur l’image de fond par ordre croissant de z_index.
Un palier fixe la taille de l’image de fond et de chaque calque. Avec auto, la sortie suit l’image d’entrée, agrandie au minimum à 1K et réduite au maximum à 2K.
Reconnaissance de texte
Avec layer_decomposition_options.text_recognition: true, un calque contenant du texte imprimé ordinaire contient aussi text_recognition : le text complet (lignes réunies par \n) et lines, chaque ligne avec sa propre bounding_box et des runs de texte aux styles différents. Le style d’un segment contient similar_font_family, foreground_color (#RRGGBB) et les attributs bold, italic, underline, strikethrough, shadow et translucent. Les polices et les attributs sont estimés par le modèle. Les lettrages artistiques ou manuscrits ne renvoient pas de texte, et un prompt envoyé avec la décomposition peut empêcher ce renvoi ; considérez donc ce champ comme facultatif.
Entrées média
Chaque référence est une URL HTTP(S) publique. Les data URI en base64 ne sont pas acceptées : téléversez le fichier sur votre propre stockage et transmettez son URL. Les formats acceptés sont JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC et HEIF, jusqu’à 30 Mo chacun et au plus 36 000 000 pixels au total. AVIF et JP2 ne sont pas pris en charge ; une tâche qui ne peut pas lire son entrée échoue et n’est pas facturée.
Facteurs de coût
Consultez la section tarifs du modèle pour les tarifs actuels. Seedream 5.5 est facturé par image de sortie selon le palier de pixels, plus chaque image de référence :
cost = Σ each returned image's price for its own tier + reference images × reference price- Le palier inférieur couvre les images jusqu’à 2,61 millions de pixels (
1Ket1.5K) ; toute image plus grande relève du palier supérieur. - Chaque image de référence est facturée, dès la première. La décomposition en calques facture son unique image d’entrée.
- La décomposition en calques facture l’image de fond et chaque calque, chacun au palier correspondant à sa propre taille.
- Le montant réservé à l’acceptation d’une tâche couvre le résultat maximal : une image au palier demandé, ou
max_imagesimages (30 si le champ est omis) pour la décomposition en calques, avecautocompté au palier supérieur. La tâche est ensuite facturée pour les images réellement renvoyées et la différence est libérée.
Consultez les frais définitifs dans l’historique d’utilisation de votre compte. Les tâches échouées ne sont pas facturées.
Schéma de sortie
L’envoi renvoie la tâche :
{"id": "task_...", "model": "seedream-5-5", "status": "processing", "created_at": 1794323757}Récupérer la tâche
GET https://api.seedrouter.ai/v1/tasks/{task_id}Interrogez toutes les 10 à 20 secondes jusqu’à ce que status vaille completed ou failed. Un dépassement de délai réseau pendant l’interrogation ne signifie pas que la génération a échoué : conservez l’identifiant de tâche et reprenez la vérification. Ne créez pas une autre tâche pour vérifier l’avancement.
Tâche terminée
{
"id": "task_...",
"model": "seedream-5-5",
"status": "completed",
"created_at": 1794323757,
"finished_at": 1794323804,
"output": {
"data": [
{
"url": "https://static.seedrouter.ai/media/tasks/task_example/0.png",
"size": "1248x832",
"output_format": "png",
"background": "opaque"
}
]
}
}Une tâche de décomposition en calques liste d’abord l’image de fond, puis chaque calque. Voici une décomposition réelle d’une affiche avec la reconnaissance de texte activée ; l’image de fond et le premier de ses trois calques sont présentés :
{
"data": [
{ "url": "https://static.seedrouter.ai/media/tasks/task_example/0.png", "size": "836x1254", "output_format": "png", "background": "opaque", "z_index": 0 },
{
"url": "https://static.seedrouter.ai/media/tasks/task_example/1.png",
"size": "1455x721",
"output_format": "png",
"background": "transparent",
"z_index": 1,
"name": "Dark blue serif main title text with dash decorations",
"description": "Dark blue serif main title text reading \"BLUE TIDE SESSIONS\", with short horizontal dash decorations on its left and right sides.",
"bounding_box": { "absolute": [0, 0, 836, 414], "normalized": [0, 0, 1000, 330] },
"text_recognition": {
"text": "BLUE TIDE\nSESSIONS",
"lines": [
{
"bounding_box": { "absolute": [146, 69, 694, 196], "normalized": [175, 55, 830, 156] },
"runs": [
{
"text": "BLUE TIDE",
"style": { "similar_font_family": "HTF Didot", "foreground_color": "#122C4D", "bold": false, "italic": false, "underline": false, "strikethrough": false, "shadow": false, "translucent": false }
}
]
},
{
"bounding_box": { "absolute": [175, 168, 664, 300], "normalized": [209, 134, 794, 239] },
"runs": [
{
"text": "SESSIONS",
"style": { "similar_font_family": "HTF Didot", "foreground_color": "#122C4D", "bold": false, "italic": false, "underline": false, "strikethrough": false, "shadow": false, "translucent": false }
}
]
}
]
}
}
]
}Lors de nos tests, une image 1K a pris 47 secondes, une retouche en 2K avec une référence 40 secondes et une décomposition en calques en 1K renvoyant quatre images 39 secondes. Les décompositions plus importantes peuvent prendre plusieurs minutes.
Erreurs
Les requêtes rejetées avant la création d’une tâche renvoient une erreur HTTP avec un objet error et ne sont pas facturées. Une tâche qui échoue après acceptation renvoie HTTP 200 lorsqu’on l’interroge, avec status: "failed" et un objet error.
Voir le catalogue d’erreurs commun pour les codes, les statuts HTTP et les conseils de reprise.
{
"id": "task_...",
"model": "seedream-5-5",
"status": "failed",
"error": {
"code": 60001,
"message": "The request was rejected by the content policy. Please revise the prompt or input images."
}
}Si l’envoi lui-même dépasse le délai, vérifiez vos tâches avant de renvoyer : la première requête a peut-être été acceptée.
Conseils
- Commencez en
1Kou1.5Kpour vos essais ;1.5Kcoûte autant que1K. - Utilisez des dimensions précises en pixels pour une forme fixe, comme
2560x1440pour du 16:9 en 2K. - Chaque référence est payante : envoyez uniquement les images nécessaires à la retouche.
- Pour la décomposition en calques, réglez
max_imagesprès du nombre d’éléments attendu ; le montant réservé en dépend. - Si vous voulez surtout le texte, omettez
promptlors d’une décomposition avectext_recognitionactivé.
