Référence API

Génération de vidéo SeeDance

Appelez les modèles Volcengine Ark Doubao Seedance via TENSORAXIS — texte-vers-vidéo, image-vers-vidéo, première/dernière image, référence/continuation vidéo, ainsi que les paramètres avancés de metadata et la facturation.

SeeDance est l'intégration TENSORAXIS des modèles vidéo Volcengine Ark Doubao Seedance (canal doubao-video). Comme tout modèle vidéo, il est asynchrone : soumettez une tâche pour obtenir un task_id, interrogez le statut de la tâche, puis lisez l'URL de la vidéo une fois terminée. Le flux commun de soumission/interrogation se trouve dans la présentation de la génération de vidéo ; cette page ne couvre que les capacités et paramètres spécifiques à SeeDance.

Utilisez les champs de requête TENSORAXIS prompt, images et metadata ; le relais les traduit dans la forme de tâche de génération de contenu Volcengine. N'envoyez pas directement le corps content[] de premier niveau en amont à /v1/video/generations, sinon TENSORAXIS ne trouvera pas de prompt et renverra 400 prompt is required.

Modèles et matrice des capacités

ModèleTexte-vers-vidéoImage-vers-vidéo (première image)Première/dernière imageRéférence multimodale (image/vidéo/audio)Audio natif
doubao-seedance-1-0-lite-t2v
doubao-seedance-1-0-lite-i2v
doubao-seedance-1-0-pro-250528
doubao-seedance-1-5-pro-251215
doubao-seedance-2-0-260128
doubao-seedance-2-0-fast-260128

2-0-fast correspond à 2-0 en termes de capacités, mais il est optimisé pour une génération plus rapide. La prise en charge des capacités est en définitive déterminée par le modèle en amont.

Champs de la requête

POST /v1/video/generations

ChampTypeObligatoireDescription
modelstringOuiNom du modèle SeeDance (voir le tableau ci-dessus)
promptstringOuiInvite (prompt) vidéo ; si vide, renvoie 400 prompt is required
imagesstring[]NonURLs d'images de référence pour l'image-vers-vidéo (première image) ; les références multiples vont également ici
imagestringNonURL d'une image de référence unique ; normalisée dans images lorsque images est vide
secondsstringNonDurée en secondes ; un entier positif correspond au champ duration en amont, équivalent à metadata.duration
metadataobjectNonParamètres avancés SeeDance — voir paramètres avancés de metadata

Texte-vers-vidéo

Fournissez uniquement prompt ; ajoutez la résolution, la durée, le format d'image, etc. via metadata.

curl https://api.tensoraxis.ai/v1/video/generations \
  -H "Authorization: Bearer $TENSORAXIS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "doubao-seedance-2-0-260128",
    "prompt": "An old man wearing a hat smiles and walks forward down an autumn street",
    "metadata": {
      "resolution": "1080p",
      "ratio": "16:9",
      "duration": 5
    }
  }'

Image-vers-vidéo

Première image

Transmettez une image de référence via images pour l'utiliser comme première image ; les autres paramètres correspondent à ceux du texte-vers-vidéo.

curl https://api.tensoraxis.ai/v1/video/generations \
  -H "Authorization: Bearer $TENSORAXIS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "doubao-seedance-1-0-lite-i2v",
    "prompt": "Slow push-in, the subject smiles",
    "images": ["https://example.com/first-frame.jpg"],
    "metadata": {
      "resolution": "1080p",
      "duration": 5
    }
  }'

Première/dernière image (Seedance 2.0)

La première/dernière image nécessite que metadata.content étiquette chaque image avec un role explicite (first_frame / last_frame) ; cela remplace la liste de contenu générée à partir de images. Voir forme de metadata.content.

{
  "model": "doubao-seedance-2-0-260128",
  "prompt": "A time-lapse from dawn to sunset",
  "metadata": {
    "resolution": "1080p",
    "duration": 5,
    "content": [
      { "type": "image_url", "image_url": { "url": "https://example.com/start.jpg" }, "role": "first_frame" },
      { "type": "image_url", "image_url": { "url": "https://example.com/end.jpg" }, "role": "last_frame" }
    ]
  }
}

Référence/continuation vidéo (équivalent à « modification vidéo »)

Le backend SeeDance ne dispose d'aucun point de terminaison dédié à la modification vidéo au niveau de l'image. La capacité de « référence multimodale vidéo » de Seedance 2.0 vous permet de fournir une vidéo comme source de référence/continuation — transmettez un élément metadata.content avec video_url.

{
  "model": "doubao-seedance-2-0-260128",
  "prompt": "Continue the motion in this clip, the camera keeps panning right",
  "metadata": {
    "resolution": "1080p",
    "content": [
      { "type": "video_url", "video_url": { "url": "https://example.com/source.mp4" } }
    ]
  }
}

Lorsqu'une requête contient une entrée vidéo, TENSORAXIS la classe comme « entrée vidéo » en fonction du contenu média réel (et non de la déclaration metadata) et la facture selon le palier le moins cher — voir Facturation. Si vous avez besoin d'une modification vidéo au niveau de l'image (remplacement/retouche de segments spécifiques), utilisez plutôt HappyHorse video edit (happyhorse-1.0-video-edit) à la place.

Paramètres avancés de metadata

Les champs sous metadata correspondent aux champs de premier niveau de la tâche Volcengine. La colonne « Plage / Valeur par défaut » provient de la documentation officielle Volcengine et est en définitive déterminée par le modèle en amont ; TENSORAXIS se contente de recevoir et de transmettre ces champs.

ChampTransmis en tant queTypePlage / Valeur par défautDescription
resolutionresolutionstring480p / 720p / 1080p / 2k, par défaut 1080pRésolution de sortie
ratioratiostring16:9 / 9:16 / 4:3 / 3:4 / 21:9 / 1:1 / adaptiveFormat d'image
durationdurationinteger415, par défaut 5Durée en secondes ; équivalent au champ de premier niveau seconds
framesframesintegerDéterminé par le modèleNombre total d'images (lié au fps/à la durée)
seedseedintegerGraine aléatoireFixe l'aléatoire pour reproduire les résultats
camera_fixedcamera_fixedbooleanPar défaut falseIndique si la caméra doit être fixée
watermarkwatermarkbooleanPar défaut falseIndique s'il faut ajouter un filigrane
generate_audiogenerate_audiobooleanPar défaut falseGénère un audio natif (Seedance 2.0)
return_last_framereturn_last_framebooleanPar défaut falseRenvoie l'image de la dernière frame
draftdraftbooleanPar défaut falseMode brouillon/aperçu
service_tierservice_tierstringDéterminé par le modèlePalier de service
execution_expires_afterexecution_expires_afterintegerDéterminé par le modèleExpiration de la tâche (secondes)
callback_urlcallback_urlstringURL de rappel à la fin de la tâche
toolstoolsarrayConfiguration des outils (par ex. recherche web)
contentcontentarrayTableau de contenu avancé, voir ci-dessous

Remarques :

  • metadata.model est supprimé et ne peut pas remplacer le modèle facturé.
  • Les clés de metadata non mappées aux champs ci-dessus ne sont généralement pas transmises en amont.
  • Si seconds et metadata.duration sont envoyés tous les deux, metadata.duration a priorité.

Forme de metadata.content

metadata.content est un tableau de contenu avancé utilisé pour la première/dernière image, la référence vidéo, la référence audio, etc. Une fois fourni, il remplace la liste de contenu générée à partir de images (tout élément type: text est ignoré ; le corps provient de prompt).

Type d'élémentChampsContraintes officielles (définies en amont)
image_urlimage_url.url, role optionnelImage ≤30 Mo, ≤9 éléments ; role sert pour la première/dernière image
video_urlvideo_url.urlVidéo 2 à 15 s, ≤3 clips
audio_urlaudio_url.urlAudio ≤15 Mo, ≤3 clips
texttextIgnoré ; le corps provient du champ de premier niveau prompt

Facturation

SeeDance est facturé au jeton (token) ; la résolution est déjà reflétée dans le nombre de jetons, donc aucun coefficient de résolution distinct ne s'applique.

  • La génération classique (texte/image-vers-vidéo) utilise le palier generate.
  • L'entrée vidéo (référence/continuation vidéo) est détectée à partir du contenu média réel et relève du palier réduit video_input moins cher (prix unitaire inférieur à la génération classique).

Les prix unitaires exacts suivent la configuration « Video Pricing » de la console et la page de tarification ; les opérateurs peuvent remplacer les valeurs par défaut par les derniers tarifs officiels.

Interrogation de la tâche

Le flux commun de soumission/interrogation, les codes de statut et les chemins de récupération compatibles OpenAI/Sora se trouvent dans la présentation de la génération de vidéo.