Wan 3.0 Prime
Video Generationalibaba/wan-3.0-primeWan 3.0 Prime est l'édition optimisée pour la vitesse de Wan 3.0 d'Alibaba Tongyi Wanxiang, sortie le 2026-08-24, qui augmente nettement la vitesse de génération tout en conservant la qualité de sortie de la 3.0. Elle garde le même ensemble unifié de capacités : texte-vers-vidéo, image-vers-vidéo (première image ou première et dernière image) et vidéo à partir de références dans un seul modèle, avec des entrées mêlant texte, image, vidéo et audio. Elle produit des clips 480P, 720P ou 1080P de 2 à 30 secondes selon six rapports d'aspect plus un mode adaptatif et émet un audio synchronisé par défaut. Facturée à la seconde de sortie, à un tarif supérieur à Wan 3.0. Accessible via le protocole compatible OpenAI.
Fournisseurs
provider.type: "alicloud"| Résolution | Mode | Audio | Prix / seconde |
|---|---|---|---|
| 480p | Tous | Tous | $0.064/s |
| 720p | Tous | Tous | $0.13/s |
| 1080p | Tous | Tous | $0.26/s |
| Toutes les autres combinaisons | $0.26/s | ||
/v1/videosprovider.type: "aliyun"| Résolution | Mode | Audio | Prix / seconde |
|---|---|---|---|
| 480p | Tous | Tous | $0.064/s |
| 720p | Tous | Tous | $0.13/s |
| 1080p | Tous | Tous | $0.26/s |
| Toutes les autres combinaisons | $0.26/s | ||
/v1/videosFacturation à la seconde de vidéo générée. Les combinaisons de paramètres prises en charge et les prix sont déterminés par l'API en temps réel et peuvent varier selon la version du modèle.
Exemples de code
import timeimport requestsBASE = "https://api.ofox.ai/v1/videos"HEADERS = {"Authorization": "Bearer YOUR_OFOX_API_KEY"}# Create the generation tasktask = requests.post(BASE, headers=HEADERS, json={"model": "alibaba/wan-3.0-prime","prompt": "A golden retriever running on the beach at sunset","duration": 2,"resolution": "1080p","generate_audio": True,"provider": {"type": "alicloud"},# Or: "provider": {"type": "aliyun"}}).json()# Poll until the task reaches a terminal statewhile True:task = requests.get(f"{BASE}/{task['id']}", headers=HEADERS).json()if task["status"] in ("completed", "failed", "cancelled", "expired"):breaktime.sleep(10)# Prefer mirror_urls (persistent) then fall back to unsigned_urls (24h)print((task.get("mirror_urls") or task.get("unsigned_urls") or [None])[0])