Veo est le nom du modèle compatible avec la génération de vidéos. Veo génère une vidéo à partir d'une requête textuelle ou d'une requête d'image que vous fournissez.
Pour explorer ce modèle dans la console, consultez la fiche de modèle Video Generation
dans Model Garden.
Essayer Veo sur Vertex AI (Vertex AI Studio)
Demander l'accès aux fonctionnalités expérimentales
Modèles compatibles
L'API Veo est compatible avec les modèles suivants:
Requête HTTP
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://LOCATION}-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:predictLongRunning \
-d '{
"instances": [
{
"prompt": string,
// Optional. An image to guide video generation.
"image": {
// Union field can be only one of the following:
"bytesBase64Encoded": string,
"gcsUri": string,
// End of list of possible types for union field.
"mimeType": string
}
}
],
"parameters": {
"aspectRatio": string,
"negativePrompt": string,
"personGeneration": string,
"sampleCount": integer,
"seed": uint32,
"storageUri": string,
"durationSeconds": integer,
"enhancePrompt": boolean
}
}'
Utilisez les paramètres suivants pour le modèle Veo. Pour en savoir plus, consultez Générer des vidéos à l'aide de requêtes textuelles et d'images avec Veo.
Paramètre | |
---|---|
|
Obligatoire pour la conversion de texte en vidéo. Chaîne de texte pour guider les huit premières secondes de la vidéo. Par exemple :
|
|
Obligatoire pour convertir des images en vidéos. Image d'entrée pour guider la génération de la vidéo. Nous vous recommandons d'utiliser une image de 1 280 x 720 pixels ou de 720 x 1 280 pixels. Choisissez l'une des options suivantes :
Si le format de l'image est différent, elle est recadrée à l'aide d'un outil de recadrage au centre. Si le format de l'image est le même, mais que la résolution est plus élevée, l'image est redimensionnée. |
durationSeconds |
Obligatoire. Durée des fichiers vidéo que vous souhaitez générer.
Les valeurs entières acceptées sont |
negativePrompt |
Facultatif. Chaîne de texte décrivant tout ce que vous souhaitez dissuader le modèle de générer. Exemple :
|
enhancePrompt |
Facultatif. Utilisez Gemini pour améliorer vos requêtes. Les valeurs acceptées sont |
seed |
Facultatif. Nombre à demander pour rendre les vidéos générées déterministes. Si vous ajoutez un nombre source à votre requête sans modifier les autres paramètres, le modèle produira les mêmes vidéos.
La plage acceptée est |
storageURI |
Facultatif. URI de bucket Cloud Storage pour stocker la vidéo de sortie, au format |
sampleCount |
Facultatif. Nombre d'images de sortie demandées. Les valeurs acceptées sont |
aspectRatio |
Facultatif. Définit le format de la vidéo générée. L'une des options suivantes:
|
personGeneration |
Facultatif. Paramètre de sécurité qui contrôle si la génération de personnes ou de visages est autorisée. Choisissez l'une des options suivantes :
|
generateAudio |
Obligatoire pour
|
Exemple de requête
Utilisez les requêtes suivantes pour envoyer une requête de conversion texte-vidéo ou image-vidéo:
Demande de génération de texte en vidéo
REST
Pour tester une requête de texte à l'aide de l'API Vertex AI Veo, envoyez une requête POST au point de terminaison du modèle de l'éditeur.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Google Cloud .
- MODEL_ID : ID du modèle à utiliser. Valeurs disponibles :
veo-2.0-generate-001
(DG avec liste d'autorisation).veo-3.0-generate-preview
(Bêta)
- TEXT_PROMPT : requête textuelle utilisée pour guider la génération de vidéos.
- OUTPUT_STORAGE_URI : (facultatif) 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 que vous souhaitez générer. Valeurs entières acceptées : 1 - 4.
- DURATION : durée des fichiers vidéo que vous souhaitez générer. Valeurs entières acceptées : 5 - 8.
-
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", "sampleCount": RESPONSE_COUNT, "seed": SEED_NUMBER }
- ASPECT_RATIO : chaîne. Paramètre facultatif. Définit le format des vidéos générées. Valeurs :
16:9
(par défaut, format paysage) ou9:16
(format portrait). - NEGATIVE_PROMPT : chaîne. Paramètre facultatif. Chaîne de texte décrivant ce que vous ne souhaitez pas que le modèle génère.
- PERSON_SAFETY_SETTING : chaîne. Paramètre facultatif. Paramètre de sécurité qui détermine si la génération de personnes ou de visages est autorisée. Valeurs :
allow_adult
(valeur par défaut) : autorise uniquement la génération d'adultes.disallow
: interdit l'inclusion de personnes ou de visages dans les images.
- RESPONSE_COUNT : entier. Paramètre facultatif. Nombre d'images de sortie demandées. Valeurs :
1
-4
. - SEED_NUMBER : uint32. Paramètre facultatif. Nombre permettant de rendre les vidéos générées 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. Valeurs :
0
-4294967295
.
- ASPECT_RATIO : chaîne. Paramètre facultatif. Définit le format des vidéos générées. Valeurs :
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" } ], "parameters": { "storageUri": "OUTPUT_STORAGE_URI", "sampleCount": "RESPONSE_COUNT" } }
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 $(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" }
Demande de génération d'une vidéo à partir d'une image
REST
Pour tester une requête de texte à l'aide de l'API Vertex AI Veo, envoyez une requête POST au point de terminaison du modèle de l'éditeur.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Google Cloud .
- MODEL_ID : ID du modèle à utiliser. Valeurs disponibles :
veo-2.0-generate-001
(DG avec liste d'autorisation).veo-3.0-generate-preview
(Bêta)
- TEXT_PROMPT : requête textuelle utilisée pour guider la génération de vidéos.
- INPUT_IMAGE : chaîne d'octets encodée en base64 représentant l'image d'entrée. Pour que le résultat soit de qualité, l'image d'entrée doit avoir une résolution d'au moins 720p (1 280 x 720 pixels) et être au format 16:9 ou 9:16. Les images de formats ou de tailles différents peuvent être redimensionnées ou recadrées au centre lors du processus d'importation.
- MIME_TYPE : type MIME de l'image d'entrée. Seules les images des types MIME suivants sont acceptées :
image/jpeg
ouimage/png
. - OUTPUT_STORAGE_URI : (facultatif) 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 que vous souhaitez générer. Valeurs entières acceptées : 1 - 4.
- DURATION : durée des fichiers vidéo que vous souhaitez générer. Valeurs entières acceptées : 5 - 8.
-
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", "sampleCount": RESPONSE_COUNT, "seed": SEED_NUMBER }
- ASPECT_RATIO : chaîne. Paramètre facultatif. Définit le format des vidéos générées. Valeurs :
16:9
(par défaut, format paysage) ou9:16
(format portrait). - NEGATIVE_PROMPT : chaîne. Paramètre facultatif. Chaîne de texte décrivant ce que vous ne souhaitez pas que le modèle génère.
- PERSON_SAFETY_SETTING : chaîne. Paramètre facultatif. Paramètre de sécurité qui détermine si la génération de personnes ou de visages est autorisée. Valeurs :
allow_adult
(valeur par défaut) : autorise uniquement la génération d'adultes.disallow
: interdit l'inclusion de personnes ou de visages dans les images.
- RESPONSE_COUNT : entier. Paramètre facultatif. Nombre d'images de sortie demandées. Valeurs :
1
-4
. - SEED_NUMBER : uint32. Paramètre facultatif. Nombre permettant de rendre les vidéos générées 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. Valeurs :
0
-4294967295
.
- ASPECT_RATIO : chaîne. Paramètre facultatif. Définit le format des vidéos générées. Valeurs :
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", "image": { "bytesBase64Encoded": "INPUT_IMAGE", "mimeType": "MIME_TYPE" } } ], "parameters": { "storageUri": "OUTPUT_STORAGE_URI", "sampleCount": RESPONSE_COUNT } }
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 $(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" }
Interroger l'état de l'opération de génération de vidéo de longue durée
Vérifiez l'état de l'opération de longue durée de génération de vidéos.
REST
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Google Cloud .
- MODEL_ID : ID du modèle à utiliser. Valeurs disponibles :
veo-2.0-generate-001
(DG avec liste d'autorisation).veo-3.0-generate-preview
(Bêta)
- 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 :
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
Corps de la réponse (générer une requête vidéo)
L'envoi d'une requête de conversion de texte en vidéo ou d'image en vidéo renvoie la réponse suivante:
{
"name": string
}
Élément de réponse | Description |
---|---|
name |
Nom complet de l'opération de longue durée qui commence après l'envoi d'une requête de génération de vidéo. |
Exemple de réponse (requête de génération de vidéo)
{
"name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/OPERATION_ID"
}
Corps de la réponse (opération de longue durée d'interrogation)
Interroger l'état de l'opération de longue durée de génération de la vidéo d'origine renvoie la réponse suivante:
{
"name": string,
"done": boolean,
"response":{
"@type":"type.googleapis.com/cloud.ai.large_models.vision.GenerateVideoResponse",
"generatedSamples":[
{
"video":
{
"uri": string,
"encoding": string
}
},
{
"video":
{
"uri": string,
"encoding": string
}
},
{
"video":
{
"uri": string,
"encoding": string
}
},
{
"video":
{
"uri": string,
"encoding": string
}
},
]
}
}
Élément de réponse | Description |
---|---|
name |
Nom complet de l'opération de longue durée qui commence après l'envoi d'une requête de génération de vidéo. |
done |
Valeur booléenne indiquant si l'opération est terminée. |
response |
Corps de la réponse de l'opération de longue durée. |
generatedSamples |
Tableau des objets d'échantillons vidéo générés. |
video |
La vidéo générée. |
uri |
URI Cloud Storage de la vidéo générée. |
encoding |
Type d'encodage vidéo. |
Exemple de réponse (opération de longue durée d'interrogation)
{
"name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/OPERATION_ID",
"done":true,
"response":{
"@type":"type.googleapis.com/cloud.ai.large_models.vision.GenerateVideoResponse",
"generatedSamples":[
{
"video":{
"uri":"gs://STORAGE_BUCKET/TIMESTAMPED_SUBDIRECTORY/sample_0.mp4",
"encoding":"video/mp4"
}
},
{
"video":{
"uri":"gs://STORAGE_BUCKET/TIMESTAMPED_SUBDIRECTORY/sample_1.mp4",
"encoding":"video/mp4"
}
},
{
"video":{
"uri":"gs://STORAGE_BUCKET/TIMESTAMPED_SUBDIRECTORY/sample_2.mp4",
"encoding":"video/mp4"
}
},
{
"video":{
"uri":"gs://STORAGE_BUCKET/TIMESTAMPED_SUBDIRECTORY/sample_3.mp4",
"encoding":"video/mp4"
}
}
]
}
}
En savoir plus
- Pour en savoir plus sur l'utilisation de Veo sur Vertex AI, consultez Générer des vidéos à l'aide de requêtes textuelles et d'images avec Veo.
Étape suivante
- Consultez les informations de Google DeepMind sur le modèle Veo.
- Lisez l'article de blog Veo et Imagen 3 : annonce de nouveaux modèles de génération de vidéos et d'images sur Vertex AI.
- Lisez l'article de blog Nouveaux outils et modèles multimédias génératifs, conçus avec et pour les créateurs.