עריכת סרטונים

אתם יכולים להשתמש ב-Gemini Omni Flash כדי לערוך סרטונים באמצעות מסוף Google Cloud או Agent Platform API.

אפשר לערוך סרטונים במודלים הבאים:

לחצו כדי להרחיב את רשימת המודלים הנתמכים

במדריך לכתיבת פרומפטים ליצירת סרטונים מוסבר איך לכתוב פרומפטים טקסטואליים יעילים ליצירת סרטונים.

התנסות ב-Gemini Omni Flash ב-Colab

לפני שמתחילים

  1. נכנסים לחשבון Google Cloud . אנחנו ממליצים למשתמשים חדשים ב- Google Cloud ליצור חשבון כדי שיוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud 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

  3. Enable the Gemini Enterprise Agent Platform API, if it is not already enabled.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. 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.

    Enable the API

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud 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

  5. Enable the Gemini Enterprise Agent Platform API, if it is not already enabled.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. 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.

    Enable the API

  6. מגדירים אימות לסביבה.

    צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:

    המסוף

    כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים ולממשקי ה-API של Google Cloud , לא צריך להגדיר אימות.

    REST

    כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.

      התקינו את ה-CLI של Google Cloud.

      אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

    מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Google Cloud .

עריכת סרטונים באמצעות Gemini Omni Flash

כדי לערוך סרטונים באמצעות Gemini Omni Flash:

REST

תהליך יצירת הסרטון יכול להימשך יותר מדקה. אתם יכולים לבחור מבין כמה מצבי אינטראקציה, בהתאם לתהליך העבודה שלכם:

  • סינכרוני: ללא שמירת מצב: יצירת סרטון בבקשה אחת בלי לשמור את מצב האינטראקציה בשרת.
  • סינכרוני: עם שמירת מצב: מגדירים את store לערך true כדי לשמור את מצב האינטראקציה, וכך אפשר לאחזר את התוצאה מאוחר יותר או להפנות למזהה האינטראקציה לצורך עריכת סרטונים בכמה שלבים.
  • סינכרוני: סטרימינג עם שמירת מצב: מגדירים את store וגם את stream לערך true כדי לקבל את תהליך החשיבה של המודל באופן מצטבר בזמן שהוא נוצר, ואחריו את סרטון הפלט.
  • אסינכרוני: מגדירים את background ל-true כדי להריץ את יצירת הסרטון ברקע ולאחזר את התוצאה מאוחר יותר באמצעות מזהה האינטראקציה.

אינטראקציות אסינכרוניות ואינטראקציות שנשמרו נשמרות למשך עד 14 ימים.

למידע נוסף על השימוש ב-Gemini Omni Flash API, ראה Interactions API.

סינכרוני: בלי שמירת מצב

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: מחרוזת שמייצגת את מזהה הפרויקט ב- Google Cloud .
  • ‫MODEL_ID: מחרוזת שמייצגת את מזהה המודל שבו רוצים להשתמש. אלה הערכים הקבילים:
    • "gemini-omni-1.1-flash-preview"
    • "gemini-omni-flash-preview"
  • ‫TEXT_PROMPT: הפרומפט הטקסטואלי ששימש ליצירת הסרטון.
  • ‫CLOUD_STORAGE_VIDEO_URI: מחרוזת שמייצגת את הקטגוריה של Cloud Storage שמכילה את סרטון הקלט. לדוגמה: "gs://video-bucket/input/".
  • VIDEO_MIME: מחרוזת שמייצגת סוג MIME של סרטון. אלה הערכים הקבילים:
    • video/3gpp
    • video/mp4
    • video/mpeg
    • video/quicktime
    • video/webm
    • video/x-flv
    • video/x-ms-wmv
  • OUTPUT_RESOLUTION:

    אופציונלי: מחרוזת שמייצגת את הרזולוציה של פלט הווידאו. אם לא מציינים ערך, ברירת המחדל של הפלט היא 720p.

    אפשר להזין ב-gemini-omni-1.1-flash-preview את הערכים הבאים:

    • "360p"
    • "720p"
    • "1080p"
    • "4k"

    ‫gemini-omni-flash-preview תומך רק ב-"720p".

  • ‫CLOUD_STORAGE_OUTPUT_URI: אופציונלי: מחרוזת שמייצגת את הקטגוריה של Cloud Storage שבה יאוחסנו סרטוני הפלט. אם לא מציינים את הפרמטר, בייטים של הסרטון מוחזרים בתגובה. לדוגמה: "gs://video-bucket/output/".

ה-method של ה-HTTP וכתובת ה-URL:

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

גוף בקשת JSON:

{
  "model": "MODEL_ID",
  "input": [
    {
      "type": "text",
      "text": "TEXT_PROMPT"
    },
    {
      "type": "video",
      "uri": "CLOUD_STORAGE_VIDEO_URI",
      "mime_type": "VIDEO_MIME"
    }
  ],
  "response_format": [
    {
      "type": "video",
      "delivery": "uri",
      "resolution": "OUTPUT_RESOLUTION",
      "gcs_uri": "CLOUD_STORAGE_OUTPUT_URI"
    }
  ],
  "generation_config": {
    "video_config": {
      "task": "edit"
    }
  }
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

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

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

$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-1.1-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"
}

סינכרוני: עם שמירת מצב (stateful)

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: מחרוזת שמייצגת את מזהה הפרויקט ב- Google Cloud .
  • ‫MODEL_ID: מחרוזת שמייצגת את מזהה המודל שבו רוצים להשתמש. אלה הערכים הקבילים:
    • "gemini-omni-1.1-flash-preview"
    • "gemini-omni-flash-preview"
  • ‫TEXT_PROMPT: הפרומפט הטקסטואלי ששימש ליצירת הסרטון.
  • ‫CLOUD_STORAGE_VIDEO_URI: מחרוזת שמייצגת את הקטגוריה של Cloud Storage שמכילה את סרטון הקלט. לדוגמה: "gs://video-bucket/input/".
  • VIDEO_MIME: מחרוזת שמייצגת סוג MIME של סרטון. אלה הערכים הקבילים:
    • video/3gpp
    • video/mp4
    • video/mpeg
    • video/quicktime
    • video/webm
    • video/x-flv
    • video/x-ms-wmv
  • OUTPUT_RESOLUTION:

    אופציונלי: מחרוזת שמייצגת את הרזולוציה של פלט הווידאו. אם לא מציינים ערך, ברירת המחדל של הפלט היא 720p.

    אפשר להזין ב-gemini-omni-1.1-flash-preview את הערכים הבאים:

    • "360p"
    • "720p"
    • "1080p"
    • "4k"

    ‫gemini-omni-flash-preview תומך רק ב-"720p".

  • ‫CLOUD_STORAGE_OUTPUT_URI: אופציונלי: מחרוזת שמייצגת את הקטגוריה של Cloud Storage שבה יאוחסנו סרטוני הפלט. אם לא מציינים את הפרמטר, בייטים של הסרטון מוחזרים בתגובה. לדוגמה: "gs://video-bucket/output/".

ה-method של ה-HTTP וכתובת ה-URL:

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

גוף בקשת JSON:

{
  "model": "MODEL_ID",
  "background": false,
  "store": true,
  "stream": false,
  "input": [
    {
      "type": "user_input",
      "content": [
        {
          "type": "text",
          "text": "TEXT_PROMPT"
        },
        {
          "type": "video",
          "uri": "CLOUD_STORAGE_VIDEO_URI",
          "mime_type": "VIDEO_MIME"
        }
      ]
    }
  ],
  "response_format": [
    {
      "type": "video",
      "delivery": "uri",
      "resolution": "OUTPUT_RESOLUTION",
      "gcs_uri": "CLOUD_STORAGE_OUTPUT_URI"
    }
  ],
  "generation_config": {
    "video_config": {
      "task": "edit"
    }
  }
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

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

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

$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-1.1-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"
}
כדי לקבל את הסרטון שנוצר, משתמשים ב-INTERACTION_ID:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: מחרוזת שמייצגת את מזהה הפרויקט ב- Google Cloud .
  • ‫INTERACTION_ID: מזהה האינטראקציה מהבקשה האסינכרונית.

ה-method של ה-HTTP וכתובת ה-URL:

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

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer TOKEN" \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID"

PowerShell

מריצים את הפקודה הבאה:

$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-1.1-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"
}

סינכרוני: סטרימינג עם שמירת מצב (stateful)

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: מחרוזת שמייצגת את מזהה הפרויקט ב- Google Cloud .
  • ‫MODEL_ID: מחרוזת שמייצגת את מזהה המודל שבו רוצים להשתמש. אלה הערכים הקבילים:
    • "gemini-omni-1.1-flash-preview"
    • "gemini-omni-flash-preview"
  • ‫TEXT_PROMPT: הפרומפט הטקסטואלי ששימש ליצירת הסרטון.
  • ‫CLOUD_STORAGE_VIDEO_URI: מחרוזת שמייצגת את הקטגוריה של Cloud Storage שמכילה את סרטון הקלט. לדוגמה: "gs://video-bucket/input/".
  • VIDEO_MIME: מחרוזת שמייצגת סוג MIME של סרטון. אלה הערכים הקבילים:
    • video/3gpp
    • video/mp4
    • video/mpeg
    • video/quicktime
    • video/webm
    • video/x-flv
    • video/x-ms-wmv
  • OUTPUT_RESOLUTION:

    אופציונלי: מחרוזת שמייצגת את הרזולוציה של פלט הווידאו. אם לא מציינים ערך, ברירת המחדל של הפלט היא 720p.

    אפשר להזין ב-gemini-omni-1.1-flash-preview את הערכים הבאים:

    • "360p"
    • "720p"
    • "1080p"
    • "4k"

    ‫gemini-omni-flash-preview תומך רק ב-"720p".

  • ‫CLOUD_STORAGE_OUTPUT_URI: אופציונלי: מחרוזת שמייצגת את הקטגוריה של Cloud Storage שבה יאוחסנו סרטוני הפלט. אם לא מציינים את הפרמטר, בייטים של הסרטון מוחזרים בתגובה. לדוגמה: "gs://video-bucket/output/".

ה-method של ה-HTTP וכתובת ה-URL:

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

גוף בקשת JSON:

{
  "model": "MODEL_ID",
  "background": false,
  "store": true,
  "stream": true,
  "input": [
    {
      "type": "user_input",
      "content": [
        {
          "type": "text",
          "text": "TEXT_PROMPT"
        },
        {
          "type": "video",
          "uri": "CLOUD_STORAGE_VIDEO_URI",
          "mime_type": "VIDEO_MIME"
        }
      ]
    }
  ],
  "response_format": [
    {
      "type": "video",
      "delivery": "uri",
      "resolution": "OUTPUT_RESOLUTION",
      "gcs_uri": "CLOUD_STORAGE_OUTPUT_URI"
    }
  ],
  "generation_config": {
    "video_config": {
      "task": "edit"
    }
  }
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

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

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

$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-1.1-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-1.1-flash-preview"},"event_id":"EVENT_ID","event_type":"interaction.completed"}

event: done
data: [DONE]
כדי להפעיל את האינטראקציה השמורה והסרטון שנוצר, משתמשים ב-INTERACTION_ID עם `?stream=true`:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: מחרוזת שמייצגת את מזהה הפרויקט ב- Google Cloud .
  • ‫INTERACTION_ID: מזהה האינטראקציה מהבקשה.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID?stream=true

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer TOKEN" \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID?stream=true"

PowerShell

מריצים את הפקודה הבאה:

$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
התגובה היא זרם של אירועים שנשלחים מהשרת (SSE) בפורמט שדומה לזה:
event: interaction.created
data: {"interaction":{"id":"INTERACTION_ID","status":"in_progress","object":"interaction","model":"gemini-omni-1.1-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-1.1-flash-preview"},"event_id":"EVENT_ID","event_type":"interaction.completed"}

event: done
data: [DONE]

אסינכרוני

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: מחרוזת שמייצגת את מזהה הפרויקט ב- Google Cloud .
  • ‫MODEL_ID: מחרוזת שמייצגת את מזהה המודל שבו רוצים להשתמש. אלה הערכים הקבילים:
    • "gemini-omni-1.1-flash-preview"
    • "gemini-omni-flash-preview"
  • ‫TEXT_PROMPT: הפרומפט הטקסטואלי ששימש ליצירת הסרטון.
  • ‫CLOUD_STORAGE_VIDEO_URI: מחרוזת שמייצגת את הקטגוריה של Cloud Storage שמכילה את סרטון הקלט. לדוגמה: "gs://video-bucket/input/".
  • VIDEO_MIME: מחרוזת שמייצגת סוג MIME של סרטון. אלה הערכים הקבילים:
    • video/3gpp
    • video/mp4
    • video/mpeg
    • video/quicktime
    • video/webm
    • video/x-flv
    • video/x-ms-wmv
  • OUTPUT_RESOLUTION:

    אופציונלי: מחרוזת שמייצגת את הרזולוציה של פלט הווידאו. אם לא מציינים ערך, ברירת המחדל של הפלט היא 720p.

    אפשר להזין ב-gemini-omni-1.1-flash-preview את הערכים הבאים:

    • "360p"
    • "720p"
    • "1080p"
    • "4k"

    ‫gemini-omni-flash-preview תומך רק ב-"720p".

  • ‫CLOUD_STORAGE_OUTPUT_URI: אופציונלי: מחרוזת שמייצגת את הקטגוריה של Cloud Storage שבה יאוחסנו סרטוני הפלט. אם לא מציינים את הפרמטר, בייטים של הסרטון מוחזרים בתגובה. לדוגמה: "gs://video-bucket/output/".

ה-method של ה-HTTP וכתובת ה-URL:

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

גוף בקשת JSON:

{
  "model": "MODEL_ID",
  "background": true,
  "input": [
    {
      "type": "text",
      "text": "TEXT_PROMPT"
    },
    {
      "type": "video",
      "uri": "CLOUD_STORAGE_VIDEO_URI",
      "mime_type": "VIDEO_MIME"
    }
  ],
  "response_format": [
    {
      "type": "video",
      "delivery": "uri",
      "resolution": "OUTPUT_RESOLUTION",
      "gcs_uri": "CLOUD_STORAGE_OUTPUT_URI"
    }
  ],
  "generation_config": {
    "video_config": {
      "task": "edit"
    }
  }
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

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

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

$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"
}
אחר כך, משתמשים ב-INTERACTION_ID כדי לקבל את הסרטון שנוצר:

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: מחרוזת שמייצגת את מזהה הפרויקט ב- Google Cloud .
  • ‫INTERACTION_ID: מזהה האינטראקציה מהבקשה האסינכרונית.

ה-method של ה-HTTP וכתובת ה-URL:

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

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer TOKEN" \
"https://aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID"

PowerShell

מריצים את הפקודה הבאה:

$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-1.1-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"
}

המאמרים הבאים