Guida la generazione di video utilizzando immagini di asset e stile

Puoi utilizzare Gemini Omni Flash o Veo su Gemini Enterprise Agent Platform per guidare la generazione di video utilizzando immagini di riferimento.

Gemini Omni Flash

Gemini Omni Flash ti consente di utilizzare immagini di riferimento per fornire input aggiuntivi al modello durante la generazione di un video. I seguenti modelli Gemini Omni Flash supportano le immagini di riferimento:

Fai clic per espandere i modelli supportati

Veo

Veo su Gemini Enterprise Agent Platform ti consente di utilizzare immagini di riferimento per indirizzare i contenuti e lo stile artistico del video generato. Quando utilizzi immagini di riferimento con Veo, puoi scegliere di utilizzare uno dei seguenti elementi:

  • Immagine del soggetto: fornisci fino a tre immagini di una singola persona, personaggio o prodotto. Veo preserva l'aspetto del soggetto nel video di output.

    I seguenti modelli supportano l'immagine dell'asset di riferimento per il video:

    Fai clic per espandere i modelli supportati

  • Immagine di stile: fornisci una singola immagine di stile. Veo applica lo stile dell'immagine caricata nel video di output.

    I seguenti modelli supportano la conversione di immagini di riferimento in video:

    Fai clic per espandere i modelli supportati

Per saperne di più su come scrivere prompt di testo efficaci per la generazione di video, consulta la guida ai prompt per la generazione di video.

Prova Gemini Omni Flash in Colab

Prova Veo in Colab

Prima di iniziare

  1. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Enable the Agent Platform API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  3. Configura l'autenticazione per il tuo ambiente.

    Seleziona la scheda relativa a come prevedi di utilizzare gli esempi in questa pagina:

    Console

    Quando utilizzi la console Cloud de Confiance per accedere ai servizi Cloud de Confiance by S3NS e alle API, non devi configurare l'autenticazione.

    Python

    Per utilizzare gli esempi di Python in questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.

    1. Installa Google Cloud CLI.

    2. Configura gcloud CLI per utilizzare la tua identità federata.

      Per ulteriori informazioni, vedi Accedi a gcloud CLI con la tua identità federata.

    3. Crea le credenziali di autenticazione locali per il tuo account utente:

      gcloud auth application-default login

      Se viene restituito un errore di autenticazione e utilizzi un provider di identità (IdP) esterno, verifica di aver acceduto a gcloud CLI con la tua identità federata.

    Per saperne di più, consulta Configura ADC per un ambiente di sviluppo locale nella documentazione sull'autenticazione di Cloud de Confiance .

    REST

    Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.

      Installa Google Cloud CLI, quindi accedi a gcloud CLI con la tua identità federata.

    Per saperne di più, consulta Autenticati per usare REST nella documentazione sull'autenticazione di Cloud de Confiance .

Utilizzare Gemini Omni Flash e i riferimenti per generare video

REST

Per saperne di più sull'utilizzo dell'API Gemini Omni Flash, consulta la pagina API Interactions.

La generazione del video può richiedere più di un minuto. Per generare un video da scaricare immediatamente dopo il completamento, utilizza una richiesta sincrona. Per generare un video che può essere scaricato in un secondo momento, invia una richiesta asincrona impostando il parametro background su true. Le interazioni asincrone vengono conservate per un massimo di 14 giorni.

Richiesta sincrona

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • PROJECT_ID: una stringa che rappresenta il tuo Cloud de Confiance by S3NS ID progetto.
  • MODEL_ID: una stringa che rappresenta l'ID modello da utilizzare. I seguenti sono valori accettati:
    • "gemini-omni-flash-preview"
  • TEXT_PROMPT: il prompt di testo utilizzato per guidare la generazione di video.
  • CLOUD_STORAGE_INPUT_URI: Una stringa che rappresenta il bucket Cloud Storage che contiene i contenuti multimediali di input. Ad esempio: "gs://video-bucket/input/".
  • CLOUD_STORAGE_OUTPUT_URI: (Facoltativo) Una stringa che rappresenta il bucket Cloud Storage in cui archiviare i video di output. Se non vengono forniti, i byte video vengono restituiti nella risposta. Ad esempio: "gs://video-bucket/output/".
  • ASPECT_RATIO: (Facoltativo) Una stringa che rappresenta le proporzioni previste del video di output. Se non viene fornito, le proporzioni vengono dedotte dal prompt. I seguenti sono valori accettati:
    • "16:9"
    • "9:16"
  • DURATION: una stringa che rappresenta la lunghezza dei file video generati. Le stringhe consentite sono numeri interi compresi tra 3 e 10, seguiti da "s" per secondi. Ad esempio, "10s"

Metodo HTTP e URL:

POST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions

Corpo JSON della richiesta:

{
  "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": "reference_to_video"
    }
  }
}

Per inviare la richiesta, scegli una di queste opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

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

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

$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
La risposta contiene un'interazione che include i pensieri del modello e un video di output.
{
  "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",
}

Richiesta asincrona

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • PROJECT_ID: una stringa che rappresenta il tuo Cloud de Confiance by S3NS ID progetto.
  • MODEL_ID: una stringa che rappresenta l'ID modello da utilizzare. I seguenti sono valori accettati:
    • "gemini-omni-flash-preview"
  • TEXT_PROMPT: il prompt di testo utilizzato per guidare la generazione di video.
  • CLOUD_STORAGE_INPUT_URI: Una stringa che rappresenta il bucket Cloud Storage che contiene i contenuti multimediali di input. Ad esempio: "gs://video-bucket/input/".
  • CLOUD_STORAGE_OUTPUT_URI: (Facoltativo) Una stringa che rappresenta il bucket Cloud Storage in cui archiviare i video di output. Se non vengono forniti, i byte video vengono restituiti nella risposta. Ad esempio: "gs://video-bucket/output/".
  • ASPECT_RATIO: (Facoltativo) Una stringa che rappresenta le proporzioni previste del video di output. Se non viene fornito, le proporzioni vengono dedotte dal prompt. I seguenti sono valori accettati:
    • "16:9"
    • "9:16"
  • DURATION: una stringa che rappresenta la lunghezza dei file video generati. Le stringhe consentite sono numeri interi compresi tra 3 e 10, seguiti da "s" per secondi. Ad esempio, "10s"

Metodo HTTP e URL:

POST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions

Corpo JSON della richiesta:

{
  "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": "reference_to_video"
    }
  }
}

Per inviare la richiesta, scegli una di queste opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

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

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

$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
La risposta contiene un ID interazione, che utilizzerai per ottenere il video che hai generato.
{
  "id":"INTERACTION_ID",
  "status":"in_progress",
  "object":"interaction"
}
In un secondo momento, utilizza INTERACTION_ID per ottenere il video generato:

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • PROJECT_ID: una stringa che rappresenta il tuo Cloud de Confiance by S3NS ID progetto.
  • INTERACTION_ID: L'ID interazione della richiesta asincrona.

Metodo HTTP e URL:

POST https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID

Per inviare la richiesta, scegli una di queste opzioni:

curl

Esegui questo comando:

curl -X POST \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID"

PowerShell

Esegui questo comando:

$headers = @{ "Authorization" = "Bearer TOKEN" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID" | Select-Object -Expand Content
La risposta ha un formato simile al seguente:
{
  "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",
}

Utilizzare Veo e i riferimenti per generare video

Le sezioni seguenti descrivono come utilizzare Veo per generare video a partire da riferimenti.

Utilizzare le immagini degli asset per generare video

Segui questi passaggi:

Console

  1. Nella console Cloud de Confiance , vai alla pagina Agent Platform > Agent Platform Studio .

    Vai ad Agent Platform Studio

  2. Fai clic su Genera contenuti multimediali.

  3. Fai clic su Video.

  4. Nel menu Attività, seleziona Riferimento al video (soggetto).

  5. Nel menu Modello, seleziona un modello tra le opzioni disponibili.

  6. Nella sezione Immagini del soggetto, fai clic su Aggiungi.

    Viene visualizzata una finestra di dialogo di selezione file. Scegli da una a tre immagini sul tuo computer da caricare.

  7. (Facoltativo) Nella sezione Parametri, modifica le seguenti impostazioni:

    • Proporzioni: seleziona 16:9 o 9:16.
    • Numero di risultati: regola il cursore o inserisci un valore compreso tra 1 e 4.
    • Durata video: seleziona 8, 6 o 4 secondi.
    • Risoluzione output: seleziona una delle seguenti opzioni:
      • 720p
      • 1080p
      • 4k
  8. (Facoltativo) Nella sezione Sicurezza, seleziona una delle seguenti impostazioni di generazione di persone:

    • Consenti (solo adulti): valore predefinito. Genera solo persone o volti adulti. Non generare persone o volti di giovani o bambini.

    • Non consentire: non generare persone o volti.

  9. (Facoltativo) Nella sezione Opzioni avanzate, inserisci un valore Seed per randomizzare la generazione dei video.

  10. Nella casella Prompt, inserisci il prompt di testo che descrive i video da generare.

  11. Fai clic su Esegui.

Python

Installa

pip install --upgrade google-genai

Per saperne di più, consulta la documentazione di riferimento dell'SDK.

Imposta le variabili di ambiente per utilizzare Google Gen AI SDK con 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

import time
from google import genai
from google.genai.types import GenerateVideosConfig, Image, VideoGenerationReferenceImage

client = genai.Client()

# TODO(developer): Update and un-comment below line
# output_gcs_uri = "gs://your-bucket/your-prefix"

operation = client.models.generate_videos(
    model="veo-3.1-generate-preview",
    prompt="A person walks in carrying a vase full of flowers and places the vase on a kitchen table.",
    config=GenerateVideosConfig(
        reference_images=[
            VideoGenerationReferenceImage(
                image=Image(
                    gcs_uri="gs://cloud-samples-data/generative-ai/image/vase.png",
                    mime_type="image/png",
                ),
                reference_type="asset",
            ),
        ],
        aspect_ratio="9:16",
        output_gcs_uri=output_gcs_uri,
    ),
)

while not operation.done:
    time.sleep(15)
    operation = client.operations.get(operation)
    print(operation)

if operation.response:
    print(operation.result.generated_videos[0].video.uri)

# Example response:
# gs://your-bucket/your-prefix

REST

Per saperne di più sull'API Veo, consulta le seguenti risorse:

  1. Utilizza i seguenti comandi per inviare una richiesta di generazione di video. Questa richiesta avvia un'operazione a lunga esecuzione e archivia l'output in un bucket Cloud Storage specificato.

    Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

    • PROJECT_ID: il tuo ID progetto Cloud de Confiance by S3NS .
    • MODEL_ID: una stringa che rappresenta l'ID modello da utilizzare. Sono supportati i seguenti modelli:
    • TEXT_PROMPT: il prompt testuale utilizzato per guidare la generazione di video.
    • BASE64_ENCODED_IMAGE: un'immagine del soggetto codificata in base64. Puoi ripetere questo campo e mimeType per specificare fino a tre immagini del soggetto.
    • IMAGE_MIME_TYPE: il tipo MIME dell'immagine di input. Solo uno dei seguenti documenti:

      • image/jpeg
      • image/png

      Puoi ripetere questo campo e bytesBase64Encoded per specificare fino a tre immagini del soggetto.

    • ASPECT_RATIO: (Facoltativo) Le proporzioni del video generato. Solo uno dei seguenti documenti:

      • "16:9"
      • "9:16"

      Il valore predefinito è "16:9".

    • OUTPUT_STORAGE_URI: (Facoltativo) Il bucket Cloud Storage in cui archiviare i video di output. Se non fornito, nella risposta viene restituito un video codificato in Base64. Ad esempio: gs://video-bucket/output/.
    • RESPONSE_COUNT: il numero di file video che vuoi generare. Valori interi accettati: 1-4.
    • VIDEO_RESOLUTION: (Facoltativo) La risoluzione del video generato. Solo uno dei seguenti:

      • "720p"
      • "1080p"
      • "4k" (solo modelli di anteprima Veo 3.1)

      Il valore predefinito è "720p".

    • Parametri facoltativi aggiuntivi

      Utilizza le seguenti variabili facoltative a seconda del tuo caso d'uso. Aggiungi alcuni o tutti i seguenti parametri nell'oggetto "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: (Facoltativo) Un valore stringa che descrive le proporzioni dei video generati. Puoi utilizzare i seguenti valori:
        • "16:9" per il formato orizzontale
        • "9:16" per la modalità verticale

        Il valore predefinito è "16:9"

      • NEGATIVE_PROMPT: (Facoltativo) una stringa che descrive i contenuti che vuoi impedire al modello di generare.
      • PERSON_SAFETY_SETTING: (Facoltativo) Un valore stringa che controlla l'impostazione di sicurezza per la generazione di persone o volti. Puoi utilizzare i seguenti valori:
        • "allow_adult": Consente solo la generazione di persone e volti adulti.
        • "disallow": Non genera persone o volti.

        Il valore predefinito è "allow_adult".

      • RESOLUTION: (Facoltativo) Un valore stringa che controlla la risoluzione del video generato. Supportato solo dai modelli Veo 3. Puoi utilizzare i seguenti valori:
        • "720p"
        • "1080p"
        • "4k" (solo modelli di anteprima Veo 3.1)

        Il valore predefinito è "720p".

      • RESPONSE_COUNT: Facoltativo. Un valore intero che descrive il numero di video da generare. L'intervallo di valori accettato è 1-4.
      • SEED_NUMBER: Facoltativo. Un valore uint32 che il modello utilizza per generare video deterministici. Se specifichi un numero seed nella richiesta senza modificare altri parametri, il modello genererà gli stessi video. L'intervallo di valori accettati è 0-4294967295.

    Metodo HTTP e URL:

    POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning

    Corpo JSON della richiesta:

    {
      "instances": [
        {
          "prompt": "TEXT_PROMPT",
          // The following fields can be repeated for up to three total
          // images.
          "referenceImages": [
            {
              "image": {
                "bytesBase64Encoded": "BASE64_ENCODED_IMAGE",
                "mimeType": "IMAGE_MIME_TYPE"
              },
              "referenceType": "asset"
            }
          ]
        }
      ],
      "parameters": {
        "aspectRatio":, "ASPECT_RATIO,
        "durationSeconds": 8,
        "storageUri": "OUTPUT_STORAGE_URI",
        "sampleCount": RESPONSE_COUNT,
        "resolution": "VIDEO_RESOLUTION
      }
    }
    

    Per inviare la richiesta, scegli una di queste opzioni:

    curl

    Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

    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

    Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

    $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
    Questa richiesta restituisce un nome di operazione completo con un ID operazione univoco. Utilizza questo nome completo dell'operazione per verificare lo stato della richiesta di generazione del video.
    {
      "name":
      "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8"
    }
    

  2. (Facoltativo) Controlla lo stato dell'operazione a lunga esecuzione di generazione del video.

    Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

    • PROJECT_ID: il tuo Cloud de Confiance by S3NS ID progetto.
    • MODEL_ID: l'ID del modello da utilizzare.
    • OPERATION_ID: L'ID operazione univoco restituito nella richiesta originale di generazione del video.

    Metodo HTTP e URL:

    POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation

    Corpo JSON della richiesta:

    {
      "operationName": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/OPERATION_ID"
    }
    

    Per inviare la richiesta, scegli una di queste opzioni:

    curl

    Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

    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

    Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

    $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
    Questa richiesta restituisce informazioni sull'operazione, ad esempio se è ancora in esecuzione o è stata completata.

Utilizzare immagini di stile per generare video

Segui questi passaggi:

Console

  1. Nella console Cloud de Confiance , vai alla pagina Agent Platform > Agent Platform Studio .

    Vai ad Agent Platform Studio

  2. Fai clic su Genera contenuti multimediali.

  3. Fai clic su Video.

  4. Nel menu Attività, seleziona Riferimento al video (stile).

  5. Nel menu Modello, seleziona un modello tra le opzioni disponibili.

  6. Nella sezione Immagine di stile, fai clic su Aggiungi.

    Viene visualizzata una finestra di dialogo di selezione file. Scegli un'immagine sul computer da caricare.

  7. (Facoltativo) Nella sezione Parametri, modifica le seguenti impostazioni:

    • Proporzioni: seleziona 16:9 o 9:16.
    • Numero di risultati: regola il cursore o inserisci un valore compreso tra 1 e 4.
    • Durata video: seleziona 8, 7, 6 o 5 secondi.
  8. (Facoltativo) Nella sezione Sicurezza, seleziona una delle seguenti impostazioni di generazione di persone:

    • Consenti (solo adulti): valore predefinito. Genera solo persone o volti adulti. Non generare persone o volti di giovani o bambini.

    • Non consentire: non generare persone o volti.

  9. (Facoltativo) Nella sezione Opzioni avanzate, inserisci un valore Seed per randomizzare la generazione dei video.

  10. Nella casella Prompt, inserisci il prompt di testo che descrive i video da generare.

  11. Fai clic su Esegui.

REST

Per saperne di più sull'API Veo, consulta la API Veo su Gemini Enterprise Agent Platform.

  1. Utilizza i seguenti comandi per inviare una richiesta di generazione di video. Questa richiesta avvia un'operazione a lunga esecuzione e archivia l'output in un bucket Cloud Storage specificato.

    Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

    • PROJECT_ID: il tuo ID progetto Cloud de Confiance by S3NS .
    • MODEL_ID: una stringa che rappresenta l'ID modello da utilizzare. Sono supportati i seguenti modelli:

    • TEXT_PROMPT: il prompt testuale utilizzato per guidare la generazione di video.
    • BASE64_ENCODED_IMAGE: Un'immagine di stile codificata in byte Base64.
    • IMAGE_MIME_TYPE: il tipo MIME dell'immagine di input. Solo uno dei seguenti:
      • image/jpeg
      • image/png
    • OUTPUT_STORAGE_URI: (Facoltativo) Il bucket Cloud Storage in cui archiviare i video di output. Se non forniti, i byte del video vengono restituiti nella risposta. Ad esempio: gs://video-bucket/output/.
    • RESPONSE_COUNT: il numero di file video che vuoi generare. Valori interi accettati: 1-4.
    • Parametri facoltativi aggiuntivi

      Utilizza le seguenti variabili facoltative a seconda del tuo caso d'uso. Aggiungi alcuni o tutti i seguenti parametri nell'oggetto "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: (Facoltativo) Un valore stringa che descrive le proporzioni dei video generati. Puoi utilizzare i seguenti valori:
        • "16:9" per il formato orizzontale
        • "9:16" per la modalità verticale

        Il valore predefinito è "16:9"

      • NEGATIVE_PROMPT: (Facoltativo) una stringa che descrive i contenuti che vuoi impedire al modello di generare.
      • PERSON_SAFETY_SETTING: (Facoltativo) Un valore stringa che controlla l'impostazione di sicurezza per la generazione di persone o volti. Puoi utilizzare i seguenti valori:
        • "allow_adult": Consente solo la generazione di persone e volti adulti.
        • "disallow": Non genera persone o volti.

        Il valore predefinito è "allow_adult".

      • RESOLUTION: (Facoltativo) Un valore stringa che controlla la risoluzione del video generato. Supportato solo dai modelli Veo 3. Puoi utilizzare i seguenti valori:
        • "720p"
        • "1080p"
        • "4k" (solo modelli di anteprima Veo 3.1)

        Il valore predefinito è "720p".

      • RESPONSE_COUNT: Facoltativo. Un valore intero che descrive il numero di video da generare. L'intervallo di valori accettato è 1-4.
      • SEED_NUMBER: Facoltativo. Un valore uint32 che il modello utilizza per generare video deterministici. Se specifichi un numero seed nella richiesta senza modificare altri parametri, il modello genererà gli stessi video. L'intervallo di valori accettati è 0-4294967295.

    Metodo HTTP e URL:

    POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning

    Corpo JSON della richiesta:

    {
      "instances": [
        {
          "prompt": "TEXT_PROMPT",
          "referenceImages": [
            {
              "image": {
                "bytesBase64Encoded": "BASE64_ENCODED_IMAGE",
                "mimeType": "IMAGE_MIME_TYPE"
              },
              "referenceType": "style"
            }
          ]
        }
      ],
      "parameters": {
        "durationSeconds": 8,
        "storageUri": "OUTPUT_STORAGE_URI",
        "sampleCount": RESPONSE_COUNT
      }
    }
    

    Per inviare la richiesta, scegli una di queste opzioni:

    curl

    Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

    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

    Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

    $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
    Questa richiesta restituisce un nome di operazione completo con un ID operazione univoco. Utilizza questo nome completo dell'operazione per verificare lo stato della richiesta di generazione del video.
    {
      "name":
      "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8"
    }
    

  2. (Facoltativo) Controlla lo stato dell'operazione a lunga esecuzione di generazione del video.

    Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

    • PROJECT_ID: il tuo Cloud de Confiance by S3NS ID progetto.
    • MODEL_ID: l'ID del modello da utilizzare.
    • OPERATION_ID: L'ID operazione univoco restituito nella richiesta originale di generazione del video.

    Metodo HTTP e URL:

    POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation

    Corpo JSON della richiesta:

    {
      "operationName": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/OPERATION_ID"
    }
    

    Per inviare la richiesta, scegli una di queste opzioni:

    curl

    Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

    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

    Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

    $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
    Questa richiesta restituisce informazioni sull'operazione, ad esempio se è ancora in esecuzione o è stata completata.

Passaggi successivi