Zhipu AI: CogVideoX 2
CogVideoX 2 génère une vidéo à partir d’une description textuelle ou d’une image fournie. L’éditeur documente des dimensions d’image sélectionnables, 30 ou 60 images par seconde, des modes de qualité ou de vitesse et des effets sonores générés en option pour façonner une courte scène visuelle.
À propos du modèle
Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.
CogVideoX 2 est le modèle de génération vidéo de Zhipu AI pour une description écrite de scène ou une image fournie. Le texte définit le sujet, le décor et l’action ; une image peut servir de base visuelle à la séquence générée. Utilisez l’entrée qui correspond le mieux aux éléments déjà disponibles pour le plan, puis décrivez le mouvement visible que la vidéo terminée doit contenir.
Pour une création à partir de texte, définissez un événement cohérent. Une personne ouvrant la porte d’un atelier, une petite embarcation passant devant une jetée ou un objet tournant sous un éclairage stable donnent chacun au plan un objectif lisible. Précisez les caractéristiques importantes du sujet, le point de vue et la direction du mouvement. Choisissez une fin exploitable dans le montage prévu, plutôt que de laisser indéterminée la composition finale de la scène.
Pour une création à partir d’une image, préparez une vue claire du sujet et décrivez le mouvement qui doit en découler. L’éditeur accepte des références PNG, JPEG et JPG jusqu’à 5 MB, fournies par une URL d’image ou des données d’image encodées. Gardez visibles les contours importants, les traits du visage et les détails des objets dans la référence, et laissez de l’espace dans la composition pour l’action demandée.
L’éditeur limite le prompt écrit à 512 caractères. Consacrez cet espace aux détails décisifs : sujet, action, décor et point de vue. Une description courte précisant quel objet bouge et ce qui reste fixe est plus facile à évaluer qu’une liste d’adjectifs stylistiques généraux. Si le résultat manque l’objectif, révisez l’instruction liée au problème de mouvement ou de cadrage observé.
Les dimensions de sortie publiées comprennent des formats carrés, paysage et portrait, avec des choix allant de 720×480 à 3840×2160 pixels. L’éditeur documente également 30 ou 60 images par seconde. Sélectionnez le format et la fréquence d’images en fonction de la destination avant la génération, puis examinez le clip réel pour vérifier si le sujet et ses détails importants restent lisibles dans ce cadrage.
La qualité et la vitesse sont des modes de sortie nommés dans le processus de l’éditeur. Les effets sonores générés par l’IA, facultatifs, se règlent séparément de la description visuelle. Conservez le mode et le réglage des effets sonores sélectionnés avec le prompt et toute image de référence pour comparer les clips candidats selon leurs paramètres de génération réels.
La génération est asynchrone : un identifiant de tâche est renvoyé avant que la vidéo terminée soit disponible. Conservez cet identifiant pendant la vérification du résultat et préservez tous les fichiers vidéo terminés associés à l’opération. Enregistrez le clip lui-même pour le montage, avec l’image source lorsqu’elle est utilisée, plutôt que de dépendre d’un emplacement de résultat temporaire ou d’une image d’aperçu.
Examinez la séquence entière pour vérifier la continuité, le rythme et l’action demandée. Un plan de produit nécessite une forme et des détails de matériau stables pendant le mouvement ; un plan de personnage nécessite une apparence et des gestes cohérents. Vérifiez la composition finale et tout son généré par rapport à l’objectif du plan. Conservez les éléments réussis de la scène lorsque vous corrigez un écart concret et utilisez les mêmes conditions de visionnage pour comparer les vidéos originales et révisées.
Ailoot Ultra · Vidéo POST /v1/videos cogvideox-2
cogvideox-2Premiers pas
CogVideoX 2 génère une vidéo à partir d’une description textuelle ou d’une image fournie. L’éditeur documente des dimensions d’image sélectionnables, 30 ou 60 images par seconde, des modes de qualité ou de vitesse et des effets sonores générés en option pour façonner une courte scène visuelle.
- Entrées acceptées
- Texte
- Résultats
- Vidéo
Disponible dans Ailoot · entrées et méthodes
Ailoot Ultra · Vidéo POST /v1/videos
- Types d’entrée
text- Types de sortie
video
| Champ | Type | Exigence | Valeurs et limites | Par défaut |
|---|---|---|---|---|
Champmodel | Typestring | ExigenceObligatoire | Valeurs et limites cogvideox-2 Conditions: Utilisez le sélecteur exact de modèle Ailoot. | Par défaut— |
Champprompt | Typestring | ExigenceObligatoire | Valeurs et limites Conditions: Décrivez la scène et le mouvement. | Par défaut— |
Champquality | Typeboolean | ExigenceFacultatif | Valeurs et limites Conditions: Indicateur facultatif de qualité ; le schéma sélectionné ne fournit aucune énumération compatible ni valeur par défaut. | Par défaut— |
Champwith_audio | Typeboolean | ExigenceFacultatif | Valeurs et limites Conditions: Génère des effets sonores par IA lorsque cette option est activée. | Par défautfalse |
Champsize | Typestring | ExigenceFacultatif | Valeurs et limites Conditions: Fournissez la chaîne size documentée lorsque vous sélectionnez des dimensions explicites. | Par défaut— |
Champfps | Typestring | ExigenceFacultatif | Valeurs et limites 30, 60 Conditions: La fréquence d’images est représentée par une chaîne sur cette méthode native sélectionnée. | Par défaut30 |
Champduration | Typestring | ExigenceFacultatif | Valeurs et limites 5, 10 Conditions: La durée en secondes est représentée par une chaîne sur cette méthode native sélectionnée. | Par défaut5 |
Paramètres et cycle de vie de la méthode
| Paramètre | Contrat |
|---|---|
Paramètrecontent_type | Contratapplication/json |
Paramètrerequired | Contratmodel, prompt |
Paramètreoptional | Contratquality, with_audio, size, fps, duration |
Paramètrematerial_types | Contrattext |
Paramètreconditions | ContratUtilisez le sélecteur exact de modèle Ailoot., Décrivez la scène et le mouvement., Indicateur facultatif de qualité ; le schéma sélectionné ne fournit aucune énumération compatible ni valeur par défaut., Génère des effets sonores par IA lorsque cette option est activée., Fournissez la chaîne size documentée lorsque vous sélectionnez des dimensions explicites., La fréquence d’images est représentée par une chaîne sur cette méthode native sélectionnée., La durée en secondes est représentée par une chaîne sur cette méthode native sélectionnée. |
Alias de méthode : /v1/videos/generations
Cycle de vie : submit_once_poll_original
GET /v1/videos/{request_id}
GET /v1/videos/generations/{request_id}
GET /v1/videos/{request_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Tarifs
Calcul du coût final
Les tarifs affichés servent à estimer le coût avant la génération. Le montant final est calculé à partir du coût enregistré pour la génération d’origine. La durée mesurée du résultat et les quantités prévisionnelles ne constituent pas la quantité finale facturable.
Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.
- Mode rapide
- Non précisé Lorsque le mode rapide est sélectionné
- Mode Flex
- Non précisé Lorsque le mode flex est sélectionné
- Effort de raisonnement maximal
- Non précisé Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)
Tarifs estimés à des fins de comparaison
Prix par configuration
Associez chaque coût aux conditions indiquées. Utilisez un seul tarif pour chaque ensemble de configurations alternatives.
| Configuration | Barème tarifaire | Quantité prévisionnelle | Quantité facturée | Coût |
|---|---|---|---|---|
| ConfigurationTarifs de base par jeton | Barème tarifaireTarif de base | Quantité prévisionnelle— | Quantité facturée— | Coût Entrée · Tokens en entrée · Estimation à des fins de comparaison uniquement — / 1K tokens Sortie · Tokens en sortie · Estimation à des fins de comparaison uniquement — / 1K tokens Entrée · Lecture du cache · Estimation à des fins de comparaison uniquement — / 1K tokens Entrée · Écriture dans le cache · Estimation à des fins de comparaison uniquement — / 1K tokens Entrée · Écriture dans le cache, 1 h · Estimation à des fins de comparaison uniquement — / 1K tokens |
| ConfigurationPar requête | Barème tarifaire— | Quantité prévisionnelle— | Quantité facturéeune requête | Coût Entrée · Estimation à des fins de comparaison uniquement $0.2 par requête |
| ConfigurationCoût de génération estimé | Barème tarifaire— | Quantité prévisionnelleEstimation pour une génération | Quantité facturée— | Coût Sortie · Coût estimé de génération · Estimation à des fins de comparaison uniquement $0.2 estimation avant génération Cette estimation ne constitue ni des frais supplémentaires ni un tarif fixe pour la génération terminée. |
Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. Fonctionnement de la réservation et du débit →
Exemples de requêtes
Ailoot Ultra · Vidéo
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON'
{
"model": "cogvideox-2",
"prompt": "A cat is walking on grass."
}
JSON
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
# Create once; retain id, polling_url, original task identifiers and every header.
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_STATUS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
u=urljoin("https://api.ailoot.ai",r["polling_url"])
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or p.username or p.password:
raise SystemExit("Unexpected returned polling URL; preserve the response")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-D","status-headers.txt","-o","status.json"],check=True)
# Read this same original polling_url again while pending.
# Preserve unknown/result_pending_check; do not repeat creation.
PY_STATUS
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("status.json").read_text())
roles={}
def visit(v,path=""):
if isinstance(v,dict):
for k,x in v.items(): visit(x,path+"/"+k)
elif isinstance(v,list):
for i,x in enumerate(v): visit(x,path+"/"+str(i))
elif isinstance(v,str):
u=urljoin("https://api.ailoot.ai",v); p=urlsplit(u)
if p.scheme=="https" and p.netloc=="api.ailoot.ai" and not p.username and not p.password and p.path.startswith("/v1/media/assets/") and p.path.endswith("/content"):
roles.setdefault(u,[]).append(path)
visit(r)
if not roles: raise SystemExit("No completed owned assets; retain the original status")
manifest=[]
for i,(u,paths) in enumerate(roles.items()):
target=Path(f"asset-{i}.bin")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-o",str(target)],check=True)
raw=target.read_bytes()
if not raw: raise SystemExit("Empty asset; retain original status and metadata")
ext="glb" if raw[:4]==b"glTF" else "png" if raw[:8]==b"\x89PNG\r\n\x1a\n" else "jpg" if raw[:3]==b"\xff\xd8\xff" else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "mp4" if raw[4:8]==b"ftyp" else "bin"
name=f"asset-{i}.{ext}"
if target.name!=name: target.rename(name)
manifest.append({"file":name,"response_paths":paths,"bytes":len(raw)})
Path("asset-manifest.json").write_text(json.dumps(manifest,indent=2))
print("Saved",len(manifest),"unique owned assets; every response role retained")
PY_ASSETS
Recevoir et enregistrer les résultats
Ailoot Ultra · Vidéo
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Conserver tous les résultats terminés
Enregistrez chaque vidéo terminée ou fichier renvoyé ; récupérez chaque URL de ressource effectivement renvoyée.
Conservez la réponse et les en-têtes complets, les identifiants d’origine, chaque sortie réelle et tous les champs d’utilisation et de comptabilisation. Enregistrez chaque ressource unique vous appartenant et conservez chaque rôle qui y fait référence.
Si la réponse d’origine doit être vérifiée
Conservez l’id public renvoyé pour la tâche ou l’opération ainsi que tous les en-têtes. Consultez uniquement la tâche d’origine ; unknown ou result_pending_check n’autorise pas une nouvelle création.
Champs de la réponse
| Champ | Type |
|---|---|
Champid | Typestring |
Champpolling_url | Typestring |
Champprovider_task_id | Typestring |
Champid | Typestring |
Champtask_status | Typestring |
Champvideo_result[].url | Typestring |
Alias
Alias du modèle
Ailoot Ultra cogvideox-2
Alias des chemins de méthode
/v1/videos/generations
ID d’appel associés
FAQ · Zhipu AI: CogVideoX 2
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/videos·cogvideox-2:text→video- Quels champs la requête utilise-t-elle ?
POST /v1/videos·cogvideox-2:model,prompt,quality,with_audio,size,fps,duration