Gemini Enterprise Agent Platform의 Veo를 사용하여 동영상을 1~30초 길이로 확장할 수 있습니다. Cloud de Confiance 콘솔 또는 Agent Platform API를 사용하여 동영상을 확장할 수 있습니다.
다음 모델은 동영상 연장을 지원합니다.
-
veo-2.0-generate-exp -
veo-2.0-generate-preview -
veo-3.1-generate-preview -
veo-3.1-fast-generate-preview -
veo-3.1-generate-001 -
veo-3.1-fast-generate-001 -
veo-3.1-lite-generate-001
동영상 생성에 효과적인 텍스트 프롬프트 작성에 대한 자세한 내용은 Veo 프롬프트 가이드를 참고하세요.
시작하기 전에
-
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.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
환경에 대한 인증을 설정하세요.
이 페이지의 샘플 사용 방법에 대한 탭을 선택하세요.
콘솔
Cloud de Confiance 콘솔을 사용하여 Cloud de Confiance by S3NS 서비스 및 API에 액세스하는 경우 인증을 설정할 필요가 없습니다.
REST
로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공한 사용자 인증 정보를 사용합니다.
Google Cloud CLI를 설치한 후 제휴 ID로 gcloud CLI에 로그인합니다.
자세한 내용은 Cloud de Confiance 인증 문서의 REST 사용을 위한 인증을 참조하세요.
제한사항
Veo 확장 기능을 사용할 때 입력 동영상에는 다음과 같은 제한사항이 적용됩니다.
- 입력 파일은 MP4여야 합니다.
- 길이는 1~30초여야 합니다.
- 프레임 속도는 초당 24프레임이어야 합니다.
- 해상도는 720p, 1080p 또는 4k 중 하나여야 합니다.
- 입력 동영상의 가로세로 비율은 9:16 또는 16:9일 수 있습니다.
출력 동영상에는 다음과 같은 제한사항이 적용됩니다.
- 출력 파일은 MP4입니다.
- 연장된 길이는 7초입니다.
- 프레임 속도는 초당 24프레임입니다.
- 해상도는 720p, 1080p 또는 4k일 수 있습니다.
- 출력 동영상의 가로세로 비율은 9:16 또는 16:9일 수 있습니다.
동영상 확장
다음 예시는 Veo 동영상을 확장하는 방법을 보여줍니다.
콘솔
Cloud de Confiance 콘솔에서 Agent Platform > Media Studio 페이지로 이동합니다.
동영상을 클릭합니다.
태스크 메뉴에서 동영상 확장 소재를 선택합니다.
모델 메뉴에서 표시된 옵션 중 하나를 선택합니다.
입력 동영상 섹션에서 추가를 클릭합니다.
프롬프트 상자에 생성할 동영상을 설명하는 텍스트 프롬프트를 입력합니다.
선택사항: 다음 파라미터를 조정합니다.
결과 수: 슬라이더를 조정하거나 1~4 사이의 값을 입력합니다.
동영상 길이: 메뉴에서 동영상 길이를 선택합니다.
출력 디렉터리: 찾아보기를 클릭하여 생성된 파일을 저장할 Cloud Storage 버킷을 만들거나 선택합니다.
실행을 클릭합니다.
Python
설치
pip install --upgrade google-genai
자세한 내용은 SDK 참고 문서를 참고하세요.
Vertex AI에서 Google 생성형 AI SDK를 사용하도록 환경 변수를 설정합니다.
# 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
Veo API에 대한 자세한 내용은 다음을 참고하세요.
- 메서드:
endpoints.predict VideoGenerationModelInstanceVideoGenerationModelParamsVideoGenerationModelResult
다음 명령어를 사용하여 동영상 생성 요청을 전송합니다. 이 요청은 장기 실행 작업을 시작하고 지정한 Cloud Storage 버킷에 출력을 저장합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
-
PROJECT_ID: Cloud de Confiance by S3NS 프로젝트 ID를 나타내는 문자열 -
MODEL_ID: 사용할 모델 ID를 나타내는 문자열. 첫 번째 또는 마지막 동영상 프레임을 지정할 때는 다음 중 하나를 사용하세요.- Veo 2:
veo-2.0-generate-001 - Veo 3:
veo-3.1-generate-001 - Veo 3:
veo-3.1-fast-generate-001
- Veo 2:
-
TEXT_PROMPT: 동영상 생성을 안내하는 데 사용되는 텍스트 프롬프트 -
PATH_TO_VIDEO: 확장하려는 Veo 동영상의 Cloud Storage 경로를 나타내는 문자열. 예를 들면"gs://video-bucket/input/veo-video.mp4"입니다. -
OUTPUT_STORAGE_URI: (선택사항) 출력 동영상을 저장할 Cloud Storage 버킷을 나타내는 문자열. 제공하지 않으면 응답으로 동영상 바이트가 반환됩니다. 예를 들면"gs://video-bucket/output/"입니다. -
RESPONSE_COUNT: 생성할 동영상 파일의 수. 허용되는 값의 범위는1~4입니다. -
추가 선택적 파라미터
사용 사례에 따라 다음 선택적 변수를 사용하세요.
"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: (선택사항) 생성된 동영상의 가로세로 비율을 설명하는 문자열 값. 다음 값을 사용할 수 있습니다.- 가로 모드의 경우
"16:9" - 세로 모드의 경우
"9:16"
기본값은
"16:9"입니다. - 가로 모드의 경우
-
NEGATIVE_PROMPT: (선택사항) 모델이 생성하지 않도록 하려는 콘텐츠를 설명하는 문자열 값입니다. -
PERSON_SAFETY_SETTING: (선택사항) 사람 또는 얼굴 생성의 안전 설정을 제어하는 문자열 값입니다. 다음 값을 사용할 수 있습니다.-
"allow_adult": 성인 인물 및 얼굴만 생성합니다. -
"disallow": 사람이나 얼굴을 생성하지 않습니다.
기본값은
"allow_adult"입니다. -
-
RESOLUTION: (선택사항) 생성된 동영상의 해상도를 제어하는 문자열 값입니다. Veo 3 모델에서만 지원됩니다. 다음 값을 사용할 수 있습니다."720p""1080p""4k"(Veo 3.1 프리뷰 모델만 해당)
기본값은
"720p"입니다. -
RESPONSE_COUNT: (선택사항) 생성할 동영상 수를 설명하는 정수 값. 허용되는 값의 범위는1~4입니다. -
SEED_NUMBER: (선택사항) 모델이 결정론적 동영상을 생성하는 데 사용하는 uint32 값. 다른 파라미터를 변경하지 않고 요청에 시드 수를 지정하면 모델에서 동일한 동영상을 생성합니다. 허용되는 값의 범위는0~4294967295입니다.
-
HTTP 메서드 및 URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning
JSON 요청 본문:
{ "instances": [ { "prompt": "TEXT_PROMPT", "video": { "gcsUri": "PATH_TO_VIDEO", "mimeType": "video/mp4" } } ], "parameters": { "storageUri": "OUTPUT_STORAGE_URI", "sampleCount": RESPONSE_COUNT } }요청을 보내려면 다음 옵션 중 하나를 선택합니다.
이 요청은 고유한 작업 ID가 포함된 전체 작업 이름을 반환합니다. 이 전체 작업 이름을 사용하여 동영상 생성 요청 상태를 폴링합니다.curl
요청 본문을
request.json파일에 저장하고 다음 명령어를 실행합니다.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
요청 본문을
request.json파일에 저장하고 다음 명령어를 실행합니다.$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" }-
(선택사항) 동영상 생성 장기 실행 작업의 상태를 확인합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Cloud de Confiance by S3NS 프로젝트 ID
- MODEL_ID: 사용할 모델 ID
- OPERATION_ID: 원래 동영상 생성 요청에 반환된 고유한 작업 ID
HTTP 메서드 및 URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation
JSON 요청 본문:
{ "operationName": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/OPERATION_ID" }요청을 보내려면 다음 옵션 중 하나를 선택합니다.
이 요청은 작업이 아직 실행 중인지 또는 완료되었는지를 비롯하여 작업에 관한 정보를 반환합니다.curl
요청 본문을
request.json파일에 저장하고 다음 명령어를 실행합니다.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
요청 본문을
request.json파일에 저장하고 다음 명령어를 실행합니다.$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