Vous pouvez utiliser Gemini Omni Flash ou Veo sur Gemini Enterprise Agent Platform pour étendre des vidéos. La durée de la vidéo d'entrée est limitée à une durée comprise entre 1 et 30 secondes. Les vidéos peuvent être prolongées jusqu'à 40 secondes pour Gemini Omni Flash ou 37 secondes pour Veo sur Gemini Enterprise Agent Platform. Vous pouvez étendre des vidéos à l'aide de la console Cloud de Confiance ou de l'API Agent Platform.
Les modèles suivants sont compatibles avec l'extension de vidéos :
Gemini Omni Flash
Cliquez pour développer la liste des modèles compatibles
Veo
Cliquez pour développer la liste des modèles compatibles
Pour savoir comment rédiger des prompts textuels efficaces pour la génération de vidéo, consultez le Guide sur les prompts vidéo.
Essayer Gemini Omni Flash dans un notebook Colab
Avant de commencer
-
In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
Enable the Agent Platform API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Configurez l'authentification pour votre environnement.
Sélectionnez l'onglet correspondant à la façon dont vous prévoyez d'utiliser les exemples de cette page :
Console
Lorsque vous utilisez la console Cloud de Confiance pour accéder aux services et aux API Cloud de Confiance by S3NS , vous n'avez pas besoin de configurer l'authentification.
REST
Pour utiliser les exemples API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à la gcloud CLI.
Installez la Google Cloud CLI, puis connectez-vous à la gcloud CLI avec votre identité fédérée.
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Cloud de Confiance .
Limites de Veo
Lorsque vous utilisez Veo pour étendre des vidéos, les vidéos d'entrée sont soumises aux limites suivantes :
- Le fichier d'entrée doit être au format MP4.
- La durée doit être comprise entre 1 et 30 secondes.
- La fréquence d'images doit être de 24 images par seconde.
- La résolution doit être de 720p, 1080p ou 4K.
- Le format des vidéos d'entrée peut être 9:16 ou 16:9.
Lorsque vous utilisez Veo pour prolonger des vidéos, les vidéos générées sont soumises aux limitations suivantes :
- Le fichier de sortie est au format MP4.
- La durée étendue est de sept secondes.
- La fréquence d'images est de 24 images par seconde.
- La résolution peut être de 720p, 1080p ou 4K.
- Le format des vidéos de sortie peut être 9:16 ou 16:9.
Étendre des vidéos avec Gemini Omni Flash
Pour prolonger des vidéos à l'aide de Gemini Omni Flash :
REST
La génération de la vidéo peut prendre plus d'une minute. Vous pouvez choisir parmi plusieurs modes d'interaction en fonction de votre workflow :
- Synchrones : sans état : générez une vidéo en une seule requête sans conserver l'état de l'interaction sur le serveur.
- Synchronisation : avec état : définissez
storesurtruepour conserver l'état de l'interaction, ce qui vous permet de récupérer le résultat ultérieurement ou de faire référence à l'ID d'interaction pour le montage vidéo en plusieurs étapes. - Synchrone : streaming avec état : définissez
storeetstreamsurtruepour recevoir les pensées du modèle de manière incrémentielle au fur et à mesure qu'elles sont générées, suivies de la vidéo de sortie. - Asynchrone : définissez
backgroundsurtruepour exécuter la génération de vidéo en arrière-plan et récupérer le résultat ultérieurement à l'aide de l'ID d'interaction.
Les interactions stockées et asynchrones sont conservées pendant 14 jours maximum.
Pour en savoir plus sur l'utilisation de l'API Gemini Omni Flash, consultez API Interactions.
Synchrone : sans état
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
-
PROJECT_ID: chaîne représentant l'ID de votre projet Cloud de Confiance by S3NS . -
MODEL_ID: chaîne représentant l'ID du modèle à utiliser. Les valeurs suivantes sont acceptées :"gemini-omni-1.1-flash-preview"
-
TEXT_PROMPT: prompt textuel utilisé pour guider la génération de vidéos. -
CLOUD_STORAGE_INPUT_URI: Chaîne représentant le bucket Cloud Storage contenant le contenu multimédia d'entrée. Exemple :"gs://video-bucket/input/". -
CLOUD_STORAGE_OUTPUT_URI(facultatif) : chaîne représentant le bucket Cloud Storage dans lequel stocker les vidéos de sortie. Si cette valeur n'est pas fournie, les octets vidéo sont renvoyés dans la réponse. Exemple :"gs://video-bucket/output/". -
ASPECT_RATIO(facultatif) : chaîne représentant le format attendu de la vidéo de sortie. Si aucune valeur n'est fournie, le format est déduit de la requête. Voici les valeurs acceptées :"16:9""9:16"
-
DURATION: chaîne représentant la durée des fichiers vidéo générés. Les chaînes autorisées sont des nombres entiers compris entre3et10, suivis de "s" pour les secondes. Par exemple,"10s".
Méthode HTTP et URL :
POST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions
Corps JSON de la requête :
{
"model": "MODEL_ID",
"input": [
{
"type": "text",
"text": "TEXT_PROMPT"
},
{
"type": "image",
"uri": "CLOUD_STORAGE_INPUT_URI",
"mime_type": "image/png"
}
],
"response_format": [
{
"type": "video",
"delivery": "uri",
"gcs_uri": "CLOUD_STORAGE_OUTPUT_URI",
"aspect_ratio": "ASPECT_RATIO",
"duration": "DURATION"
}
],
"generation_config": {
"video_config": {
"task": "extend"
}
}
}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions" | Select-Object -Expand Content
{
"id":"INTERACTION_ID",
"model":"gemini-omni-flash-preview",
"status":"completed",
"usage":{
"total_tokens":479,
"total_input_tokens":26,
"input_tokens_by_modality":[
{
"modality":"text",
"tokens":26
},
{
"modality":"image",
"tokens":124
}
],
"output_tokens_by_modality": [
{
"modality": "video",
"tokens": 28832
}
],
"total_output_tokens":28832,
"total_thought_tokens":453
},
"steps":[
{
"type":"thought",
"summary":[
{
"type":"text",
"text":"MODEL THOUGHTS"
}
],
},
{
"type":"model_output",
"content":[
{
"type":"video",
"uri":"gs://some/output_path/123.mp4",
"mime_type":"video/mp4"
}
]
}
],
"object":"interaction",
"role":"model",
"created":"2026-05-29T02:17:56Z",
"updated":"2026-05-29T02:17:56Z",
}
Synchrone : avec état
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
-
PROJECT_ID: chaîne représentant l'ID de votre projet Cloud de Confiance by S3NS . -
MODEL_ID: chaîne représentant l'ID du modèle à utiliser. Les valeurs suivantes sont acceptées :"gemini-omni-1.1-flash-preview"
-
TEXT_PROMPT: prompt textuel utilisé pour guider la génération de vidéos. -
CLOUD_STORAGE_INPUT_URI: Chaîne représentant le bucket Cloud Storage contenant le contenu multimédia d'entrée. Exemple :"gs://video-bucket/input/". -
CLOUD_STORAGE_OUTPUT_URI(facultatif) : chaîne représentant le bucket Cloud Storage dans lequel stocker les vidéos de sortie. Si cette valeur n'est pas fournie, les octets vidéo sont renvoyés dans la réponse. Exemple :"gs://video-bucket/output/". -
ASPECT_RATIO(facultatif) : chaîne représentant le format attendu de la vidéo de sortie. Si aucune valeur n'est fournie, le format est déduit de la requête. Voici les valeurs acceptées :"16:9""9:16"
-
DURATION: chaîne représentant la durée des fichiers vidéo générés. Les chaînes autorisées sont des nombres entiers compris entre3et10, suivis de "s" pour les secondes. Par exemple,"10s".
Méthode HTTP et URL :
POST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions
Corps JSON de la requête :
{
"model": "MODEL_ID",
"background": false,
"store": true,
"stream": false,
"input": [
{
"type": "user_input",
"content": [
{
"type": "text",
"text": "TEXT_PROMPT"
},
{
"type": "image",
"uri": "CLOUD_STORAGE_INPUT_URI",
"mime_type": "image/png"
}
]
}
],
"response_format": [
{
"type": "video",
"delivery": "uri",
"gcs_uri": "CLOUD_STORAGE_OUTPUT_URI",
"aspect_ratio": "ASPECT_RATIO",
"duration": "DURATION"
}
]
}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions" | Select-Object -Expand Content
{
"id":"INTERACTION_ID",
"model":"gemini-omni-flash-preview",
"status":"completed",
"usage":{
"total_tokens":479,
"total_input_tokens":26,
"input_tokens_by_modality":[
{
"modality":"text",
"tokens":26
},
{
"modality":"image",
"tokens":124
}
],
"output_tokens_by_modality": [
{
"modality": "video",
"tokens": 28832
}
],
"total_output_tokens":28832,
"total_thought_tokens":453
},
"steps":[
{
"type":"thought",
"summary":[
{
"type":"text",
"text":"MODEL THOUGHTS"
}
],
},
{
"type":"model_output",
"content":[
{
"type":"video",
"uri":"gs://some/output_path/123.mp4",
"mime_type":"video/mp4"
}
]
}
],
"object":"interaction",
"role":"model",
"created":"2026-05-29T02:17:56Z",
"updated":"2026-05-29T02:17:56Z",
}
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
-
PROJECT_ID: chaîne représentant l'ID de votre projet Cloud de Confiance by S3NS . -
INTERACTION_ID: ID d'interaction de la requête asynchrone.
Méthode HTTP et URL :
GET https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X GET \
-H "Authorization: Bearer TOKEN" \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID"
PowerShell
Exécutez la commande suivante :
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID" | Select-Object -Expand Content
{
"id":"INTERACTION_ID",
"model":"gemini-omni-flash-preview",
"status":"completed",
"usage":{
"total_tokens":479,
"total_input_tokens":26,
"input_tokens_by_modality":[
{
"modality":"text",
"tokens":26
},
{
"modality":"image",
"tokens":124
}
],
"output_tokens_by_modality": [
{
"modality": "video",
"tokens": 28832
}
],
"total_output_tokens":28832,
"total_thought_tokens":453
},
"steps":[
{
"type": "user_input",
"content": [
{
"type": "text",
"text": "5 second, 9:16 video. Use the image as the first frame."
},
{
"type": "image",
"uri": "gs://some/path",
"mime_type": "image/png"
}
]
},
{
"type":"thought"
"summary":[
{
"type":"text",
"text":"MODEL THOUGHTS"
}
],
},
{
"type":"model_output",
"content":[
{
"type":"video",
"data":"VIDEO DATA",
"mime_type":"video/mp4"
}
]
}
],
"object":"interaction"
"role":"model",
"created":"2026-05-29T02:17:56Z",
"updated":"2026-05-29T02:17:56Z",
}
Synchrone : streaming avec état
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
-
PROJECT_ID: chaîne représentant l'ID de votre projet Cloud de Confiance by S3NS . -
MODEL_ID: chaîne représentant l'ID du modèle à utiliser. Voici les valeurs acceptées :"gemini-omni-1.1-flash-preview"
-
TEXT_PROMPT: prompt textuel utilisé pour guider la génération de vidéos. -
CLOUD_STORAGE_INPUT_URI: Chaîne représentant le bucket Cloud Storage contenant le contenu multimédia d'entrée. Exemple :"gs://video-bucket/input/". -
CLOUD_STORAGE_OUTPUT_URI(facultatif) : chaîne représentant le bucket Cloud Storage dans lequel stocker les vidéos de sortie. Si cette valeur n'est pas fournie, les octets vidéo sont renvoyés dans la réponse. Exemple :"gs://video-bucket/output/". -
ASPECT_RATIO(facultatif) : chaîne représentant le format attendu de la vidéo de sortie. Si aucune valeur n'est fournie, le format est déduit de la requête. Voici les valeurs acceptées :"16:9""9:16"
-
DURATION: chaîne représentant la durée des fichiers vidéo générés. Les chaînes autorisées sont des nombres entiers compris entre3et10, suivis de "s" pour les secondes. Par exemple,"10s".
Méthode HTTP et URL :
POST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions
Corps JSON de la requête :
{
"model": "MODEL_ID",
"background": false,
"store": true,
"stream": true,
"input": [
{
"type": "user_input",
"content": [
{
"type": "text",
"text": "TEXT_PROMPT"
},
{
"type": "image",
"uri": "CLOUD_STORAGE_INPUT_URI",
"mime_type": "image/png"
}
]
}
],
"response_format": [
{
"type": "video",
"delivery": "uri",
"gcs_uri": "CLOUD_STORAGE_OUTPUT_URI",
"aspect_ratio": "ASPECT_RATIO",
"duration": "DURATION"
}
]
}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions" | Select-Object -Expand Content
event: interaction.created
data: {"interaction":{"id":"INTERACTION_ID","status":"in_progress","object":"interaction","model":"gemini-omni-flash-preview"},"event_type":"interaction.created"}
event: interaction.status_update
data: {"interaction_id":"INTERACTION_ID","status":"in_progress","event_type":"interaction.status_update"}
event: step.start
data: {"index":0,"step":{"type":"thought"},"event_type":"step.start"}
event: step.delta
data: {"index":0,"delta":{"content":{"text":"MODEL THOUGHTS","type":"text"},"type":"thought_summary"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.delta
data: {"index":0,"delta":{"content":{"text":"MODEL THOUGHTS","type":"text"},"type":"thought_summary"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.delta
data: {"index":0,"delta":{"signature":"...","type":"thought_signature"},"event_type":"step.delta"}
event: step.stop
data: {"index":0,"event_type":"step.stop"}
event: step.start
data: {"index":1,"step":{"type":"model_output"},"event_type":"step.start"}
event: step.delta
data: {"index":1,"delta":{"mime_type":"video/mp4","uri":"gs://some/output_path/123.mp4","type":"video"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.stop
data: {"index":1,"event_type":"step.stop"}
event: interaction.completed
data: {"interaction":{"id":"INTERACTION_ID","status":"completed","usage":{"total_tokens":17812,"total_input_tokens":21,"input_tokens_by_modality":[{"modality":"text","tokens":21}],"total_output_tokens":17376,"output_tokens_by_modality":[{"modality":"video","tokens":17376}],"total_thought_tokens":415},"created":"2026-08-12T21:26:20Z","updated":"2026-08-12T21:26:20Z","event_id":"EVENT_ID","object":"interaction","model":"gemini-omni-flash-preview"},"event_id":"EVENT_ID","event_type":"interaction.completed"}
event: done
data: [DONE]
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
-
PROJECT_ID: chaîne représentant l'ID de votre projet Cloud de Confiance by S3NS . -
INTERACTION_ID: ID d'interaction de la requête.
Méthode HTTP et URL :
GET https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID?stream=true
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X GET \
-H "Authorization: Bearer TOKEN" \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID?stream=true"
PowerShell
Exécutez la commande suivante :
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID?stream=true" | Select-Object -Expand Content
event: interaction.created
data: {"interaction":{"id":"INTERACTION_ID","status":"in_progress","object":"interaction","model":"gemini-omni-flash-preview"},"event_type":"interaction.created"}
event: interaction.status_update
data: {"interaction_id":"INTERACTION_ID","status":"in_progress","event_type":"interaction.status_update"}
event: step.start
data: {"index":0,"step":{"type":"thought"},"event_type":"step.start"}
event: step.delta
data: {"index":0,"delta":{"content":{"text":"MODEL THOUGHTS","type":"text"},"type":"thought_summary"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.delta
data: {"index":0,"delta":{"content":{"text":"MODEL THOUGHTS","type":"text"},"type":"thought_summary"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.delta
data: {"index":0,"delta":{"signature":"...","type":"thought_signature"},"event_type":"step.delta"}
event: step.stop
data: {"index":0,"event_type":"step.stop"}
event: step.start
data: {"index":1,"step":{"type":"model_output"},"event_type":"step.start"}
event: step.delta
data: {"index":1,"delta":{"mime_type":"video/mp4","uri":"gs://some/output_path/123.mp4","type":"video"},"event_id":"EVENT_ID","event_type":"step.delta"}
event: step.stop
data: {"index":1,"event_type":"step.stop"}
event: interaction.completed
data: {"interaction":{"id":"INTERACTION_ID","status":"completed","usage":{"total_tokens":17664,"total_input_tokens":21,"input_tokens_by_modality":[{"modality":"text","tokens":21}],"total_output_tokens":17376,"output_tokens_by_modality":[{"modality":"video","tokens":17376}],"total_thought_tokens":267},"created":"2026-08-12T21:33:08Z","updated":"2026-08-12T21:33:08Z","event_id":"EVENT_ID","object":"interaction","model":"gemini-omni-flash-preview"},"event_id":"EVENT_ID","event_type":"interaction.completed"}
event: done
data: [DONE]
Asynchrone
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
-
PROJECT_ID: chaîne représentant l'ID de votre projet Cloud de Confiance by S3NS . -
MODEL_ID: chaîne représentant l'ID du modèle à utiliser. Les valeurs suivantes sont acceptées :"gemini-omni-1.1-flash-preview"
-
TEXT_PROMPT: prompt textuel utilisé pour guider la génération de vidéos. -
CLOUD_STORAGE_INPUT_URI: Chaîne représentant le bucket Cloud Storage contenant le contenu multimédia d'entrée. Exemple :"gs://video-bucket/input/". -
CLOUD_STORAGE_OUTPUT_URI(facultatif) : chaîne représentant le bucket Cloud Storage dans lequel stocker les vidéos de sortie. Si cette valeur n'est pas fournie, les octets vidéo sont renvoyés dans la réponse. Exemple :"gs://video-bucket/output/". -
ASPECT_RATIO(facultatif) : chaîne représentant le format attendu de la vidéo de sortie. Si aucune valeur n'est fournie, le format est déduit de la requête. Voici les valeurs acceptées :"16:9""9:16"
-
DURATION: chaîne représentant la durée des fichiers vidéo générés. Les chaînes autorisées sont des nombres entiers compris entre3et10, suivis de "s" pour les secondes. Par exemple,"10s".
Méthode HTTP et URL :
POST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions
Corps JSON de la requête :
{
"model": "MODEL_ID",
"input": [
{
"background": true,
"type": "text",
"text": "TEXT_PROMPT"
},
{
"type": "image",
"uri": "CLOUD_STORAGE_INPUT_URI",
"mime_type": "image/png"
}
],
"response_format": [
{
"type": "video",
"delivery": "uri",
"gcs_uri": "CLOUD_STORAGE_OUTPUT_URI",
"aspect_ratio": "ASPECT_RATIO",
"duration": "DURATION"
}
],
"generation_config": {
"video_config": {
"task": "extend"
}
}
}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions" | Select-Object -Expand Content
{
"id":"INTERACTION_ID",
"status":"in_progress",
"object":"interaction"
}
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
-
PROJECT_ID: chaîne représentant l'ID de votre projet Cloud de Confiance by S3NS . -
INTERACTION_ID: ID d'interaction de la requête asynchrone.
Méthode HTTP et URL :
GET https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X GET \
-H "Authorization: Bearer TOKEN" \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID"
PowerShell
Exécutez la commande suivante :
$headers = @{ "Authorization" = "Bearer TOKEN" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID" | Select-Object -Expand Content
{
"id":"INTERACTION_ID",
"model":"gemini-omni-flash-preview",
"status":"completed",
"usage":{
"total_tokens":479,
"total_input_tokens":26,
"input_tokens_by_modality":[
{
"modality":"text",
"tokens":26
},
{
"modality":"image",
"tokens":124
}
],
"output_tokens_by_modality": [
{
"modality": "video",
"tokens": 28832
}
],
"total_output_tokens":28832,
"total_thought_tokens":453
},
"steps":[
{
"type": "user_input",
"content": [
{
"type": "text",
"text": "5 second, 9:16 video. Use the image as the first frame."
},
{
"type": "image",
"uri": "gs://some/path",
"mime_type": "image/png"
}
]
},
{
"type":"thought"
"summary":[
{
"type":"text",
"text":"MODEL THOUGHTS"
}
],
},
{
"type":"model_output",
"content":[
{
"type":"video",
"data":"VIDEO DATA",
"mime_type":"video/mp4"
}
]
}
],
"object":"interaction"
"role":"model",
"created":"2026-05-29T02:17:56Z",
"updated":"2026-05-29T02:17:56Z",
}
Prolonger des vidéos avec Veo
Les exemples suivants montrent comment étendre une vidéo Veo :
Console
Dans la console Cloud de Confiance , accédez à la page Agent Platform>Media Studio.
Cliquez sur Vidéo.
Dans le menu Tâche, sélectionnez Extension vidéo.
Dans le menu Modèle, sélectionnez un modèle parmi les options affichées.
Dans la section Vidéo d'entrée, cliquez sur Ajouter.
Dans la zone Prompt, saisissez un prompt textuel décrivant les vidéos à générer.
Facultatif : Ajustez les paramètres suivants :
Nombre de résultats : ajustez le curseur ou saisissez une valeur comprise entre 1 et 4.
Durée de la vidéo : sélectionnez une durée de vidéo dans le menu.
- Répertoire de sortie : cliquez sur Parcourir pour créer ou sélectionner un bucket Cloud Storage afin d'y stocker les fichiers générés.
- Cliquez sur Exécuter.
Python
Installer
pip install --upgrade google-genai
Pour en savoir plus, consultez la documentation de référence du SDK.
Définissez des variables d'environnement pour utiliser le SDK Google Gen AI avec Vertex AI :
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
REST
Pour en savoir plus sur l'API Veo, consultez les ressources suivantes :
- Méthode :
endpoints.predict VideoGenerationModelInstanceVideoGenerationModelParamsVideoGenerationModelResult
Utilisez la commande suivante pour envoyer une requête de génération de vidéo. Cette requête lance une opération de longue durée et stocke le résultat dans un bucket Cloud Storage que vous spécifiez.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
-
PROJECT_ID: chaîne représentant l'ID de votre projet Cloud de Confiance by S3NS . -
MODEL_ID: chaîne représentant l'ID du modèle à utiliser. Utilisez l'une des options suivantes lorsque vous spécifiez la première ou la dernière image vidéo :- Veo 3 :
veo-3.1-generate-001 - Veo 3 :
veo-3.1-fast-generate-001
- Veo 3 :
-
TEXT_PROMPT: prompt textuel utilisé pour guider la génération de vidéos. -
PATH_TO_VIDEO: chaîne représentant le chemin d'accès Cloud Storage à la vidéo Veo que vous prolongez. Par exemple :"gs://video-bucket/input/veo-video.mp4". -
OUTPUT_STORAGE_URI: (facultatif) chaîne représentant le bucket Cloud Storage dans lequel stocker les vidéos de sortie. Si cette valeur n'est pas fournie, les octets vidéo sont renvoyés dans la réponse. Par exemple :"gs://video-bucket/output/". -
RESPONSE_COUNT: nombre de fichiers vidéo à générer. La plage de valeurs acceptée est1-4. -
Paramètres facultatifs supplémentaires
Utilisez les variables facultatives suivantes en fonction de votre cas d'utilisation. Ajoutez l'ensemble ou une partie des paramètres suivants dans l'objet
"parameters": {}."parameters": { "aspectRatio": "ASPECT_RATIO", "negativePrompt": "NEGATIVE_PROMPT", "personGeneration": "PERSON_SAFETY_SETTING", // "resolution": RESOLUTION, // Veo 3 models only "sampleCount": RESPONSE_COUNT, "seed": SEED_NUMBER }-
ASPECT_RATIO: (facultatif) : valeur de chaîne décrivant le format des vidéos générées. Vous pouvez utiliser les valeurs suivantes :"16:9"pour le mode paysage"9:16"pour le mode Portrait
La valeur par défaut est
"16:9". -
NEGATIVE_PROMPT(facultatif) : valeur de chaîne décrivant le contenu que vous souhaitez empêcher le modèle de générer. -
PERSON_SAFETY_SETTING: (Facultatif) Valeur de chaîne qui contrôle le paramètre de sécurité pour la génération de personnes ou de visages. Vous pouvez utiliser les valeurs suivantes :-
"allow_adult": n'autoriser que la génération de personnes et de visages d'adultes. -
"disallow": ne génère pas de personnes ni de visages.
La valeur par défaut est
"allow_adult". -
-
RESOLUTION(facultatif) : valeur de chaîne qui contrôle la résolution de la vidéo générée. Compatible uniquement avec les modèles Veo 3. Vous pouvez utiliser les valeurs suivantes :"720p""1080p""4k"(modèles Veo 3.1 Preview uniquement)
La valeur par défaut est
"720p". -
RESPONSE_COUNT: Facultatif. Valeur entière décrivant le nombre de vidéos à générer. La plage de valeurs acceptée est1-4. -
SEED_NUMBER: Facultatif. Valeur uint32 que le modèle utilise pour générer des vidéos déterministes. Si vous spécifiez un numéro source avec votre requête sans modifier d'autres paramètres, vous indiquez au modèle de produire les mêmes vidéos. La plage de valeurs acceptée est comprise entre0et4294967295.
-
Méthode HTTP et URL :
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning
Corps JSON de la requête :
{ "instances": [ { "prompt": "TEXT_PROMPT", "video": { "gcsUri": "PATH_TO_VIDEO", "mimeType": "video/mp4" } } ], "parameters": { "storageUri": "OUTPUT_STORAGE_URI", "sampleCount": RESPONSE_COUNT } }Pour envoyer votre requête, choisissez l'une des options suivantes :
Cette requête renvoie un nom d'opération complet avec un ID d'opération unique. Utilisez ce nom d'opération complet pour interroger l'état de la requête de génération de vidéo.curl
Enregistrez le corps de la requête dans un fichier nommé
request.json, puis exécutez la commande suivante :curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning"PowerShell
Enregistrez le corps de la requête dans un fichier nommé
request.json, puis exécutez la commande suivante :$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning" | Select-Object -Expand Content{ "name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8" }-
Facultatif : vérifiez l'état de l'opération de longue durée de génération de la vidéo.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Cloud de Confiance by S3NS .
- MODEL_ID : ID du modèle à utiliser.
- OPERATION_ID : ID d'opération unique renvoyé dans la requête de génération de vidéo d'origine.
Méthode HTTP et URL :
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation
Corps JSON de la requête :
{ "operationName": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/OPERATION_ID" }Pour envoyer votre requête, choisissez l'une des options suivantes :
Cette requête renvoie des informations sur l'opération, y compris si elle est toujours en cours d'exécution ou si elle est terminée.curl
Enregistrez le corps de la requête dans un fichier nommé
request.json, puis exécutez la commande suivante :curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation"PowerShell
Enregistrez le corps de la requête dans un fichier nommé
request.json, puis exécutez la commande suivante :$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation" | Select-Object -Expand Content