Introduction
Wan 2.7 Spicy Image vers vidéo est l’un des deux points de terminaison de la famille de modèles non censurée Wan 2.7 Spicy. Une image d’ouverture dans image_url et un prompt obligatoire donnent 2 à 15 secondes de vidéo en 720p ou 1080p, avec du son. L’image fixe apporte la personne, la tenue, le corps, le décor, la direction de la lumière et la forme du clip ; le prompt apporte le mouvement, la caméra et le son.
Il n’y a aucun indicateur de contenu dans le corps de la requête, aucune déclaration par requête et aucune étape de validation : le clip prolonge ce que montre l’image autorisée. Cette famille ne propose ni texte vers vidéo ni tâche de référence ; chaque nouveau clip part donc d’une image fixe, et pour poursuivre un clip que vous avez déjà, utilisez Prolongation vidéo.
Fonctionnalités et points forts
L’image envoyée est l’image qui bouge
image_url accepte le JPEG, le PNG sans transparence, le BMP ou le WEBP, de 240 à 8 000 pixels par côté, avec un rapport entre 1:8 et 8:1 et un poids de 20 Mo maximum. Il n'existe aucun champ de format : le recadrage envoyé est celui qui revient. Tout ce que montre l'image de départ passe tel quel dans le clip.
N’importe quelle durée entière de 2 à 15 secondes
duration_seconds accepte tout entier de 2 à 15, 5 par défaut, et resolution vaut 720p (par défaut) ou 1080p. Les deux influent sur le prix et le temps de traitement. Au-delà de dix secondes, la dérive des mains et du tissu devient visible : les plans longs réussissent mieux à partir d’une plaque qui tient déjà la pose voulue.
Son généré ou votre propre piste
generate_audio est activé par défaut et renvoie une ambiance et des effets calés sur l’image. Pour piloter la synchronisation labiale et le rythme avec une réplique enregistrée ou un repère musical, passez audio_url — un WAV ou un MP3 de 2 à 30 secondes, 15 Mo au maximum — et laissez generate_audio activé : à false, une piste fournie n’est pas utilisée non plus.
L’expansion du prompt est activée d’emblée
Sur ce point de terminaison, enable_prompt_expansion vaut true par défaut, sans supplément, et réécrit le prompt avant la génération. C’est utile pour un brief d’une ligne. Quand votre description du mouvement est précise, passez-le à false pour que votre formulation arrive telle quelle au modèle.
Paramètres de requête
| Paramètre | Obligatoire | Description |
|---|---|---|
image_url | Oui | L’image d’ouverture, et le plus gros levier ici. Tenue, corps, décor, direction de la lumière et ratio du clip en sont tous hérités. |
prompt | Oui | Obligatoire. Servez-vous-en uniquement pour le mouvement et la caméra — une action, un comportement de caméra, une note sur le son. 1 caractères minimum |
negative_prompt | Non | Ce qui ne doit pas apparaître : une deuxième personne, un accessoire, du texte sur un mur, un filigrane que la plaque continue de reproduire. 500 caractères maximum |
duration_seconds | Non | N’importe quel entier de 2 à 15, 5 par défaut. La dérive des mains et des tissus devient visible au-delà de dix secondes. |
resolution | Non | 720p ou 1080p, 720p par défaut. Influe à la fois sur le prix et sur le temps de retour de la tâche. |
audio_url | Non | Une piste audio que le clip doit suivre, pilotant la synchronisation labiale et le rythme. |
seed | Non | De 0 à 2147483647. Gardez-la pendant que vous comparez le 720p au 1080p ou cinq secondes à dix. |
generate_audio | Non | Actif par défaut ; le clip revient avec un son aligné sur l’image. À false, une piste fournie via |
enable_prompt_expansion | Non | Activée par défaut, sans surcoût. Le prompt est réécrit avant la génération — utile pour un brief d’une ligne. Valeur par défaut: |
Tarification
| Spécification | Prix |
|---|---|
| $0.1235 / seconde |
| $0.19 / seconde |
Cas d’utilisation
Scènes sans censure à partir d’une plaque autorisée
Des scènes que d'autres API vidéo refusent : envoyez l'image fixe, décrivez le mouvement, obtenez le clip. Rien dans la requête ne déclare le contenu. Seuls des adultes consentants et des contenus dûment sous licence peuvent être utilisés, et vous êtes responsable des droits, de l'âge et du droit local pour toutes les personnes représentées.
Un même personnage sur de nombreux clips
Réutilisez une seule plaque de personnage comme image d’ouverture de chaque clip et ne changez que la ligne d’action. C’est la plaque, pas le prompt, qui porte son visage et sa tenue : elle reste la même personne d’un plan à l’autre. Fixez aussi seed quand vous comparez des prises.
Tissu, vent et mouvements secondaires
L’exemple de la dune lance plusieurs mètres de soie indigo au-dessus de la tête, de nuit, pendant que le sable file sur la crête, que la flamme d’une lanterne vacille et qu’une longue ombre traverse les rides du sable. Un grand tissu souple est un sujet exigeant : vérifiez sur les cinq secondes que la soie ne se déchire pas et ne se fige pas.
Des clips parlants sur votre propre audio
Importez une réplique enregistrée via audio_url et le clip est généré sur elle : le mouvement des lèvres et le rythme suivent la prise dont vous disposez déjà. Vous obtenez un personnage qui dit votre texte au lieu de simplement remuer les lèvres.
Guide de prompt et conseils pratiques
Construire d’abord l’image d’ouverture
Recadrez l’image au format de livraison et vérifiez qu’elle montre déjà la personne, le costume, la pièce et la direction de lumière voulus. Utilisez ensuite negative_prompt (jusqu’à 500 caractères) pour ce que la plaque suggère sans cesse : une deuxième personne, un accessoire, du texte sur un mur, un filigrane. C’est le seul endroit pour exclure quelque chose, puisque le prompt sert au mouvement.
Adapter l’exemple fourni
L’exemple des coulisses tourne avec duration_seconds 5 et resolution 720p, à partir d’une danseuse de revue devant un miroir à ampoules. La plaque porte déjà le costume, les plumes et la lumière ; le prompt dit seulement ce qu’elle fait et ce que l’on entend dans la pièce.
She finishes adjusting the sequin strap, checks herself in the bulb-lit mirror, then turns her head to camera and raises one eyebrow before stepping out of frame toward the stage. Bulbs flicker, feathers stir in the draft, smoke drifts, muffled orchestra and applause building behind the wall.
La requête exacte derrière le clip de ce point de terminaison, générée à partir de l’image d’ouverture affichée à côté.
Changer un seul champ par essai
Calez le plan à cinq secondes et en 720p, puis gardez seed pendant que vous testez 1080p ou une durée plus longue ; changez deux choses à la fois et la paire ne vous apprend rien. Au-delà de dix secondes, surveillez de près la dérive des mains et du tissu, et lisez le clip avec le son avant la livraison.
Démarrage rapide de l’API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "alibaba/wan-2.7-spicy/image-to-video",
"input": {
"duration_seconds": 5,
"image_url": "https://example.com/reference.png",
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "720p"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
La référence API détaille l’authentification, le schéma complet, le polling et la gestion des erreurs.




























