Runway: Gen-4.5
Runway Gen-4.5 crée des vidéos à partir d’une description de scène ou d’une image accompagnée de consignes de mouvement. Ses clips de 2 à 10 secondes, les instructions explicites de caméra et les choix de composition distincts selon l’entrée texte ou image conviennent aux concepts cinématographiques, aux plans d’illustration et aux scènes visuelles animées.
À 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.
Runway Gen-4.5 est un modèle de génération vidéo doté de modes à partir de texte ou d’une image. Il peut suivre un brief décrivant la composition d’une scène, l’action du sujet, la chorégraphie de la caméra et une suite d’événements. Le résultat utile est un court plan généré qui peut être examiné, conservé ou assemblé avec d’autres images filmées.
Choisir le mode d’entrée du plan
La génération de vidéo à partir de texte commence par une description écrite de la scène. Précisez à la fois le contenu visible et le mouvement : sujet, décor, éclairage, cadrage, action et comportement de la caméra. Ce mode convient à une nouvelle scène, à un plan d’illustration, à un plan de fond ou à un concept visuel dont l’image initiale n’a pas à reproduire une image fournie.
La génération de vidéo à partir d’une image commence par une image qui sert de première image du clip. Elle fournit la composition, le contenu, l’éclairage et le style. Concentrez le prompt écrit sur la suite : action du sujet, mouvements dans l’environnement, mouvement de caméra et progression du plan.
Préparez une image nette où les détails importants sont déjà visibles. Les visages flous, les mains floues ou d’autres artefacts peuvent devenir plus visibles une fois animés. Une référence qui suggère un mouvement rapide par de la poussière ou du flou de mouvement peut aussi contredire un prompt demandant un sujet immobile.
Décrire directement les visuels et le mouvement
Utilisez un langage naturel clair et des descriptions positives du résultat souhaité. Un brief à partir de texte peut commencer par le point de vue de la caméra, le sujet et l’action, puis préciser le traitement de la scène. Une description détaillée est utile lorsque le plan répond à des exigences définies ; une description plus simple laisse davantage de place à l’exploration. Aucun nombre de mots idéal ne remplace la clarté.
Par exemple, décrivez une vue rapprochée d’une lampe de bureau en laiton qui s’allume, suivie d’un lent mouvement de caméra révélant un carnet à côté. Pour la génération à partir de texte, précisez les matériaux visibles et la lumière. Si une image fournie définit déjà ces détails, le prompt de génération à partir d’image peut se concentrer sur le changement de lumière et la révélation par la caméra.
Évitez les consignes contradictoires. Une vue fixe avec de légers mouvements du sujet diffère d’un travelling énergique à caméra portée. Ajoutez les détails qui définissent le plan utile plutôt qu’une longue liste de styles visuels sans rapport entre eux.
Vocabulaire de caméra et actions en séquence
Le guide de caméra du producteur distingue le cadrage, les angles, le mouvement et la mise au point. Un gros plan change ce qui remplit l’image, une contre-plongée change la perspective, un panoramique fait pivoter la vue de la caméra et un travelling d’accompagnement suit un sujet. Une consigne de bascule de point déplace la mise au point entre des sujets visibles. Précisez ce qui doit rester visible ou être révélé pendant le mouvement.
Les prompts séquentiels peuvent exprimer les événements en langage courant ou avec des repères temporels approximatifs. Ces repères guident l’ordre et les temps approximatifs ; ils ne garantissent pas une exécution à l’image près. Laissez aux actions demandées le temps de se dérouler naturellement dans la durée de clip choisie.
Pour un plan fixe, décrivez le mouvement qui doit se produire à l’intérieur de l’image et renforcez l’intention d’une caméra immobile. Le producteur indique que les vues totalement immobiles peuvent être difficiles, surtout pour certains plans larges ou d’ensemble. Examinez les petits mouvements indésirables dans le résultat réel au lieu de supposer qu’une formule demandant une caméra fixe les rend impossibles.
Durée, dimensions et fréquence d’images
Gen-4.5 prend en charge des clips de 2 à 10 secondes. Une durée plus longue peut accueillir plusieurs actions ordonnées, tandis qu’une brève réaction ou révélation peut utiliser un plan plus court. La sortie documentée est en 720p, à 24 ou 25 images par seconde dans le processus de génération du producteur.
La spécification de génération à partir de texte indique le 16:9 en 1280 × 720 pixels. La génération à partir d’image ajoute le 9:16 en 720 × 1280, le 1:1 en 960 × 960, le 4:3 en 1104 × 832, le 3:4 en 832 × 1104 et le 21:9 en 1584 × 672. Associez toujours le mode à ses dimensions réelles, au lieu de supposer que les deux modes d’entrée proposent les mêmes rapports largeur/hauteur.
Le rapport de l’image peut définir la composition par défaut, et sa modification peut recadrer l’entrée. Vérifiez l’emplacement du sujet avant de juger le mouvement : une action correcte n’est pas utile si une partie essentielle de l’image source a été coupée.
Construire une séquence plus longue à partir de plans terminés
Pour les travaux guidés par une image, le producteur décrit le prolongement d’une séquence en utilisant la dernière image d’un clip terminé comme image d’entrée d’une autre génération. Les clips sont ensuite combinés dans un logiciel de montage, où sont traités leur image commune et leurs temps. Il s’agit d’une suite de plans distincts, et non d’une génération unique de durée illimitée.
Conservez l’image finale et le brief correspondant afin que le plan suivant commence dans l’état visuel prévu. Vérifiez la continuité dans les séquences assemblées, notamment l’apparence du sujet, la direction de la caméra et la transition entre les clips.
Conserver et examiner le livrable de production
Après la génération, examinez le clip entier et conservez la sortie terminée. Le processus du producteur propose aussi des choix distincts d’agrandissement et d’export de production, tels que ProRes ou une séquence PNG. Ce sont des options supplémentaires du processus ; les dimensions natives de génération restent distinctes d’un résultat agrandi ultérieurement.
Utilisez Gen-4.5 pour des concepts cinématographiques, des idées visuelles animées, des plans d’illustration et le développement de courtes scènes. Conservez ensemble le prompt, l’image d’entrée lorsqu’elle est utilisée, la durée, le mode et le clip renvoyé. Vérifiez l’ordre des actions, le comportement de la caméra, les détails du sujet, les coupes indésirables et le cadrage souhaité, puis apportez une correction ciblée au plan.
Ailoot Ultra · Vidéo POST /v1/videos runway/gen-4.5
runway/gen-4.5Premiers pas
Runway Gen-4.5 crée des vidéos à partir d’une description de scène ou d’une image accompagnée de consignes de mouvement. Ses clips de 2 à 10 secondes, les instructions explicites de caméra et les choix de composition distincts selon l’entrée texte ou image conviennent aux concepts cinématographiques, aux plans d’illustration et aux scènes visuelles animées.
- 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
- Types d’entrée
text,image- Types de sortie
video- Format de sortie
- Octets MP4 d’origine ; sans normalisation ni transcodage
| Champ | Type | Exigence | Valeurs et limites | Par défaut |
|---|---|---|---|---|
Champmodel | Typestring | ExigenceObligatoire | Valeurs et limites runway/gen-4.5 | Par défaut— |
Champprompt | Typestring | ExigenceObligatoire | Valeurs et limites | Par défaut— |
Champduration | Typeinteger | ExigenceObligatoire | Valeurs et limites 2, 3, 4, 5, 6, 7, 8, 9, 10 Minimum: 1 Maximum: 600 | Par défaut— |
Champresolution | Typestring | ExigenceFacultatif | Valeurs et limites 720p | Par défaut— |
Champaspect_ratio | Typestring | ExigenceFacultatif | Valeurs et limites 16:9, 9:16 | Par défaut— |
Champgenerate_audio | Typeboolean | ExigenceFacultatif | Valeurs et limites false | Par défaut— |
Champframe_images | Typearray | ExigenceFacultatif | Valeurs et limites Nombre minimal d’éléments: 1 Nombre maximal d’éléments: 1 Contenu en entrée: Tableau d’objets d’image. Chaque objet comporte type=image_url, image_url contenant url et frame_type. Utilisez une URL HTTPS pour l’image et définissez frame_type sur first_frame. Chaque rôle d’image apparaît au plus une fois. Clés exactes: type, image_url, frame_type Conditions: Ces clés décrivent chaque objet d’image ; image_url contient uniquement url. Omettez frame_images pour une requête contenant uniquement du texte. | Par défaut— |
Champinput_references | Typearray | ExigenceFacultatif | Valeurs et limites | Par défaut— |
Champsize | Typestring | ExigenceFacultatif | Valeurs et limites 1280x720, 720x1280 Motif: ^[1-9][0-9]*x[1-9][0-9]*$ | Par défaut— |
Champseed | Typeinteger | ExigenceFacultatif | Valeurs et limites Minimum: -9 223 372 036 854 775 808 Maximum: 9 223 372 036 854 775 807 | Par défaut— |
Champcallback_url | Typestring | ExigenceFacultatif | Valeurs et limites Motif: ^https:// | Par défaut— |
Champsession_id | Typestring | ExigenceFacultatif | Valeurs et limites | Par défaut— |
Champtrace | Typeobject | ExigenceFacultatif | Valeurs et limites | Par défaut— |
Champuser | Typestring | ExigenceFacultatif | Valeurs et limites | Par défaut— |
Combinaisons d’éléments d’entrée
Texte vers vidéo · Une consigne écrite. · Obligatoire : model, prompt, duration
Fournissez prompt sous forme de texte et duration en secondes entières. Choisissez une résolution prise en charge ; ajoutez un rapport d’image ou utilisez une taille indiquée.
model: Type : string · runway/gen-4.5
prompt: Type : string · Nombre maximal d’octets UTF-8: 10 000 · Caractères autres que des espaces requis: Oui
Image vers vidéo · Une consigne écrite et une image initiale. · Obligatoire : model, prompt, duration, frame_images
frame_images est un tableau. Chaque objet d’image comporte type, image_url et frame_type ; image_url contient url. Définissez type sur image_url. Utilisez first_frame. Chaque rôle d’image apparaît au plus une fois. Fournissez une URL HTTPS publique pour chaque image. Choisissez une résolution prise en charge ; ajoutez un rapport d’image ou utilisez une taille indiquée.
Clés exactes : type, image_url, frame_type
model: Type : string · runway/gen-4.5
prompt: Type : string · Nombre maximal d’octets UTF-8: 10 000 · Caractères autres que des espaces requis: Oui
Paramètres et cycle de vie de la méthode
| Paramètre | Contrat |
|---|---|
Paramètrecontent_type | Contratapplication/json |
Paramètrerequired | Contratmodel, prompt, duration |
Paramètrematerial_types | Contrattext, image |
Paramètreadditional_properties | Contratfalse |
Paramètreoptional_controls | Contratresolution, aspect_ratio, generate_audio, frame_images, input_references, size, seed, callback_url, session_id, trace, user |
Cycle de vie : submit_once_poll_original
GET /v1/videos/{public_id}
GET /v1/videos/{public_id}/content
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 | Unité de facturation | Conditions de facturation | Coût |
|---|---|---|---|---|---|
| ConfigurationTarifs de base par jeton | Barème tarifaireTarif de base | Quantité prévisionnelle— | Unité de facturation— | Conditions de facturation— | 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 |
| ConfigurationTarif vidéo | Barème tarifaire— | Quantité prévisionnelle— | Unité de facturationpar seconde de vidéo | Conditions de facturationCette clé de tarification ne déclare aucune condition supplémentaire. | Coût Sortie · Tarif vidéo · Estimation à des fins de comparaison uniquement $0.24 par seconde de vidéo |
| ConfigurationCoût de génération estimé | Barème tarifaire— | Quantité prévisionnelleEstimation pour une génération | Unité de facturation— | Conditions de facturation— | Coût Sortie · Coût estimé de génération · Estimation à des fins de comparaison uniquement $0.48 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 →
Détails du tarif de référence
Les barèmes de référence du modèle ne modifient ni la sélection de méthode, ni les devis, ni les coûts. Les frais actifs utilisent les tarifs de la méthode Ailoot sélectionnée.
Références tarifaires des configurations vidéo
Prix par configuration
| Configuration | Conditions de facturation | Coût |
|---|---|---|
| ConfigurationTarif vidéo | Conditions de facturationCette clé de tarification ne déclare aucune condition supplémentaire. | Coût Sortie · Tarif vidéo $0.24 par seconde de vidéo Tarif publié de référence pour la configuration affichée. Les frais définitifs correspondent à la configuration réellement facturée. |
Exemples de requêtes
Ailoot Ultra · Vidéo
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
from pathlib import Path
Path('request.json').write_text('{"aspect_ratio":"16:9","duration":8,"model":"runway/gen-4.5","prompt":"A serene mountain landscape at sunset","resolution":"720p"}', encoding='utf-8')
PY_REQUEST
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
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('result.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
Recevoir et enregistrer les résultats
Ailoot Ultra · Vidéo
URL signées de contenu vous appartenant
GET /v1/videos/{public_id}GET /v1/videos/{public_id}/content
Vérifier l’état de la tâche
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_STATUS_URL'
import json
from pathlib import Path
from urllib.parse import quote
r=json.loads(Path('result.json').read_text())
if not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')
Path('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))
PY_STATUS_URL
curl --fail-with-body --silent --show-error "$(cat status-url.txt)" \
-H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('status.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
Autres lectures de contenu
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())
if r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')
if not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')
urls=[]
for i,u in enumerate(r.get('data',[])):
if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')
urls.append((str(i),u))
for label,path in urls:
u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)
if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')
target=Path('owned-'+label+'.bin')
subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)
print('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')
PY_ASSETS
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 toutes les sorties réelles vous appartenant et les métadonnées mesurées renvoyées pour chacune.
Si la réponse d’origine doit être vérifiée
503 result_pending_check + originalid + X-Should-Retry:false ; ne rejouez jamais la demande d’origine
Champs de la réponse
| Champ | Type | Signification |
|---|---|---|
Champindex | Typeinteger | SignificationPosition de cette vidéo dans la liste des sorties, en commençant à zéro. |
Champcontent_url | Typestring | SignificationURL HTTPS signée pour télécharger cette vidéo terminée. |
Champsha256 | Typestring | null | SignificationEmpreinte SHA-256 des octets vidéo d’origine ; null si indisponible. |
Champsize_bytes | Typeinteger | null | SignificationTaille du fichier vidéo d’origine en octets ; null si indisponible. |
Champduration_ms | Typeinteger | null | SignificationDurée vidéo mesurée en millisecondes ; null si indisponible. |
Champwidth | Typeinteger | null | SignificationLargeur de la vidéo en pixels ; null si indisponible. |
Champheight | Typeinteger | null | SignificationHauteur de la vidéo en pixels ; null si indisponible. |
Champvideo_codec | Typestring | null | SignificationIdentifiant du codec vidéo ; null s’il n’est pas enregistré. |
Champhas_audio | Typeboolean | null | SignificationIndique si la vidéo contient une piste audio ; null si cela n’a pas été mesuré. |
Champaudio_codec | Typestring | null | SignificationIdentifiant du codec audio ; null lorsqu’aucun identifiant n’est enregistré. |
Erreurs et étapes suivantes
| Réponse | Condition | Étape suivante |
|---|---|---|
Réponse404 · not_found_error | ConditionL’accès vidéo n’est pas disponible, ou cet identifiant vidéo est introuvable. | Étape suivanteVérifiez l’accès vidéo. Pour une vidéo existante, utilisez son identifiant public d’origine et la même clé API. |
Réponse401 · authentication_error | ConditionLa clé API ne correspond pas au compte authentifié. | Étape suivanteVérifiez votre clé API et l’accès à votre compte avant de soumettre la demande. |
Réponse400 · invalid_request_error | ConditionLa requête n’a pas pu être lue ou l’index de téléchargement n’est pas valide. | Étape suivanteCorrigez le corps de la requête. Pour un téléchargement, choisissez un index de sortie renvoyé par la tâche d’origine. |
Réponse422 · price_unavailable | ConditionLa configuration vidéo sélectionnée ne peut pas être tarifée. | Étape suivanteChoisissez une configuration vidéo prise en charge et renseignez ses options obligatoires avant de soumettre une demande corrigée. |
Réponse422 · invalid_request_error | ConditionUne entrée vidéo ou une tâche de continuation d’origine n’est pas valide. | Étape suivanteUtilisez des entrées HTTPS valides. Pour une continuation, utilisez l’identifiant vidéo public de votre original terminé avec la même clé API. |
Réponse402 · billing_error | ConditionLe solde disponible ou les limites ne permettent pas de réserver les fonds nécessaires. | Étape suivanteVérifiez votre solde disponible et vos limites avant d’envoyer une nouvelle demande. |
Réponse503 · server_error | ConditionLa vérification vidéo, le stockage ou l’accès au service est temporairement indisponible. | Étape suivanteAttendez que le service soit disponible. Si vous possédez déjà un identifiant vidéo, consultez cette tâche d’origine au lieu de créer une autre génération. |
Réponse503 · result_pending_check | ConditionLe résultat vidéo d’origine et sa facturation nécessitent une vérification. | Étape suivanteConservez l’identifiant vidéo renvoyé et consultez cette tâche. N’envoyez pas de demande de génération de remplacement tant que sa vérification est en cours. |
Réponse503 · owned_result_unavailable | ConditionLe téléchargement de la vidéo existante est temporairement indisponible. | Étape suivanteConsultez cette même tâche vidéo ultérieurement et téléchargez sa sortie existante. Une nouvelle génération crée une opération distincte. |
Réponse409 · video_not_ready | ConditionLe contenu vidéo n’a pas été publié. | Étape suivanteVérifiez le statut de la tâche d’origine. Téléchargez après l’apparition de completed ; si elle indique failed, suivez son avis de vérification de la facturation. |
Alias
Alias du modèle
Ailoot Ultra runway/gen-4.5
Alias des chemins de méthode
Utilisez les chemins de méthode indiqués ci-dessus.
ID d’appel associés
FAQ · Runway: Gen-4.5
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/videos·runway/gen-4.5:text,image→video- Quels champs la requête utilise-t-elle ?
POST /v1/videos·runway/gen-4.5:model,prompt,duration,resolution,aspect_ratio,generate_audio,frame_images,input_references,size,seed,callback_url,session_id,trace,user- Quelles limites s’appliquent ?
POST /v1/videos·runway/gen-4.5:duration.minimum:1;duration.maximum:600;frame_images.max_items:1;frame_images.min_items:1;seed.minimum:-9223372036854775808;seed.maximum:9223372036854775807