MiniMax: I2V 01 Director
I2V 01 Director anime une image initiale avec des commandes explicites de mouvement de caméra dans le prompt. Combinez la composition fournie avec des instructions truck, pan, push, tilt, zoom, tracking ou de caméra fixe pour préparer un plan court.
À 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.
I2V 01 Director est l’édition de génération vidéo à partir d’image de MiniMax avec des commandes de caméra documentées. Une image fournie définit l’image initiale, et le prompt dirige à la fois l’action visible et la caméra. Cela est utile lorsqu’une composition existante nécessite une approche, une révélation, un suivi ou une vue fixe contrôlée particulière, plutôt qu’une animation indéterminée.
Préparez l’image comme l’ouverture du plan souhaité. Pour une révélation, montrez le sujet et la partie de l’environnement que la caméra doit dévoiler. Pour une approche rapprochée, partez d’un espace environnant suffisant pour rendre lisible le changement de cadrage. Vérifiez que les caractéristiques importantes du sujet sont visibles avant le début du mouvement, notamment lorsque la forme d’un produit ou l’apparence d’un personnage doit rester reconnaissable.
L’éditeur accepte des références JPG, JPEG, PNG et WebP de moins de 20 MB, dont le côté court dépasse 300 pixels et dont le rapport d’aspect est compris entre 2:5 et 5:2. Une URL d’image accessible ou des données d’image encodées peuvent identifier l’image initiale dans le processus de l’éditeur. Conservez la référence originale pour qu’une révision ultérieure utilise la même composition plutôt qu’une approximation recréée.
Le prompt prend en charge jusqu’à 2 000 caractères et comprend quinze commandes de caméra nommées. Truck déplace la caméra horizontalement, pan modifie sa direction horizontale, pedestal la déplace verticalement et tilt modifie sa direction verticale. Push, pull et zoom proposent différentes formes d’approche ou de recul ; tracking, shake et le plan fixe couvrent d’autres intentions de caméra. Utilisez l’orthographe documentée des commandes lorsque vous précisez un mouvement.
Placez les commandes entre crochets à l’endroit de la description où le mouvement doit se produire. Plusieurs commandes dans les mêmes crochets demandent un mouvement simultané, tandis que des commandes placées successivement décrivent une séquence. L’éditeur recommande de combiner au maximum trois mouvements. Une simple approche push vers un sujet peut communiquer un détail plus clairement que plusieurs mouvements en concurrence dans le même plan court.
Décrivez le mouvement du sujet séparément de celui de la caméra. Une personne marchant vers une porte et une caméra qui la suit constituent deux instructions aux effets visuels différents. Précisez la relation souhaitée entre elles, par exemple garder le visage visible pendant l’approche ou maintenir la caméra immobile tandis que le sujet traverse le cadre. Définissez la composition finale pour donner à l’action générée une destination utile.
Le tableau historique de génération vidéo à partir d’image de l’éditeur indique le 720P comme valeur par défaut pour cette édition et ne mentionne pas d’option de dix secondes. L’optimisation automatique du prompt est activée par défaut et peut être désactivée pour contrôler plus précisément la description écrite. Conservez son réglage avec l’image source et les instructions de caméra lorsque vous comparez des plans, afin qu’un changement de formulation ou d’interprétation soit visible dans l’enregistrement de génération.
Examinez le clip complet pour vérifier la trajectoire de caméra demandée, la continuité du sujet et le cadrage des détails importants. Vérifiez si un mouvement push ou pan révèle les informations souhaitées et si la vue finale laisse assez d’espace pour l’étape de montage suivante. Enregistrez la vidéo terminée avec le prompt exact, l’image source et les paramètres. Pour une révision, modifiez la direction de caméra, le rythme ou l’action du sujet à l’origine du problème observé et comparez le résultat au même découpage de plan.
Ailoot Ultra · Vidéo POST /v1/videos minimaxi-i2v-01-director
minimaxi-i2v-01-directorPremiers pas
I2V 01 Director anime une image initiale avec des commandes explicites de mouvement de caméra dans le prompt. Combinez la composition fournie avec des instructions truck, pan, push, tilt, zoom, tracking ou de caméra fixe pour préparer un plan court.
- Entrées acceptées
- Texte · Images
- Résultats
- Vidéo
Disponible dans Ailoot · entrées et méthodes
Ailoot Ultra · Vidéo POST /v1/videos
- Entrée
text,image- Sortie
video
| Champ | Type | Exigence | Valeurs et limites | Par défaut |
|---|---|---|---|---|
Champmodel | Typestring | ExigenceObligatoire | Valeurs et limites minimaxi-i2v-01-director 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— |
Champend_image | Typestring | ExigenceFacultatif | Valeurs et limites Conditions: Une image de fin s’applique uniquement dans un mode d’entrée image pris en charge. | Par défaut— |
Champimage | Typestring or array<string> | ExigenceFacultatif | Valeurs et limites Conditions: Utilisez une URL d’image réelle et accessible publiquement ou une chaîne d’image base64 ; aucun nombre maximal d’images n’est affirmé ici. | Par défaut— |
Paramètres et cycle de vie de la méthode
| Paramètre | Contrat |
|---|---|
Paramètrecontent_type | Contratapplication/json |
Paramètrerequired | Contratmodel, prompt |
Paramètreoptional | Contratend_image, image |
Paramètrematerial_types | Contrattext, image |
Paramètreconditions | ContratUtilisez le sélecteur exact de modèle Ailoot., Décrivez la scène et le mouvement., Une image de fin s’applique uniquement dans un mode d’entrée image pris en charge., Utilisez une URL d’image réelle et accessible publiquement ou une chaîne d’image base64 ; aucun nombre maximal d’images n’est affirmé ici. |
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 des jetons | 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 $1 par requête |
| ConfigurationCoût estimé de la génération | 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 $1 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
# Replace YOUR_ACCESSIBLE_IMAGE_URL with your actual reachable reference image URL.
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON'
{
"model": "minimaxi-i2v-01-director",
"prompt": "A cat is walking on grass.",
"image": "YOUR_ACCESSIBLE_IMAGE_URL"
}
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 complète et les en-têtes, les identifiants d’origine, chaque résultat réel et tous les champs de consommation et de comptabilisation. Enregistrez chaque ressource unique dont vous êtes propriétaire et conservez tous les rôles qui y font référence.
Si la réponse d’origine doit être vérifiée
Conservez l’identifiant public id de la tâche ou de l’opération renvoyée, 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 |
Champtask_id | Typestring |
Champstatus | Typestring |
Champvideo_url | Typestring |
Alias
Alias du modèle
Ailoot Ultra minimaxi-i2v-01-director
Alias des chemins de méthode
/v1/videos/generations
ID d’appel associés
FAQ · MiniMax: I2V 01 Director
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/videos·minimaxi-i2v-01-director:text,image→video- Quels champs la requête utilise-t-elle ?
POST /v1/videos·minimaxi-i2v-01-director:model,prompt,end_image,image