Gemini를 사용하여 동영상에서 이미지를 생성할 수 있습니다. 이는 동영상의 썸네일 이미지를 만드는 데 유용할 수 있습니다. 지원되는 인터페이스에는 콘솔과 Agent Platform API가 있습니다. Cloud de Confiance
다음 Gemini 모델은 동영상에서 이미지 생성을 지원합니다.
클릭하여 지원되는 모델 펼치기
동영상에서 이미지 생성
다음은 Agent Studio 또는 API를 사용하여 동영상에서 이미지를 생성하는 방법을 보여줍니다.
프롬프트에 관한 권장사항은 멀티모달 프롬프트 설계를 참고하세요.
콘솔
Gemini를 사용하여 동영상에서 이미지를 생성하려면 다음 단계를 따르세요.
콘솔의 Agent Platform 섹션에서 Cloud de Confiance Agent Studio > 이미지 로 이동합니다.
모델 설정에서 표시된 모델 중 하나를 선택합니다.
프롬프트 텍스트 영역에서 추가 추가 버튼을 클릭한 후 동영상 파일의 소스를 선택합니다.
업로드
업로드할 파일을 선택하고 열기를 클릭합니다.
URL 사용
사용하려는 파일의 URL을 입력하고 삽입을 클릭합니다.
YouTube
사용하려는 YouTube 동영상 URL을 입력하고 삽입 을 클릭합니다.
공개 동영상 또는 Cloud de Confiance 콘솔에 로그인하는 데 사용한 계정에서 소유한 동영상을 사용할 수 있습니다.
Cloud Storage
버킷과 버킷에서 가져오려는 파일을 선택한 후 선택을 클릭합니다.
Google Drive
- 계정을 선택하고 이 옵션을 처음 선택할 때 Vertex AI Studio의 계정 액세스를 동의합니다. 총 크기가 10MB인 파일 여러 개를 업로드할 수 있습니다. 단일 파일은 7MB를 초과할 수 없습니다.
- 추가하려는 파일을 클릭합니다.
선택을 클릭합니다.
파일 썸네일이 프롬프트 창에 표시됩니다. 토큰 총개수도 표시됩니다. 프롬프트 데이터가 토큰 한도를 초과하면 토큰이 잘리고 데이터 처리에 포함되지 않습니다.
프롬프트 텍스트 영역에 생성하려는 이미지의 설명을 작성합니다.
프롬프트 () 버튼을 클릭합니다.
Gemini는 설명에 따라 이미지를 생성합니다. 이 프로세스는 몇 초 정도 걸리지만 용량에 따라 상대적으로 느릴 수 있습니다.
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
환경을 설정하면 REST를 사용하여 텍스트 프롬프트를 테스트할 수 있습니다. 다음 샘플은 요청을 게시자 모델 엔드포인트에 전송합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
-
PROJECT_ID: 프로젝트 ID입니다. -
FILE_URI: 프롬프트에 포함할 파일의 URI 또는 URL입니다. 허용되는 값은 다음과 같습니다.- Cloud Storage 버킷 URI: 객체는 공개적으로 읽을 수 있거나 요청 을 보내는 동일한 Cloud de Confiance 프로젝트에 있어야 합니다.
- HTTP URL: 파일 URL은 공개적으로 읽을 수 있어야 합니다. 요청당 동영상 파일 하나, 오디오 파일 하나, 이미지 파일 최대 10개를 지정할 수 있습니다. 오디오 파일, 동영상 파일, 문서는 15MB를 초과할 수 없습니다.
- YouTube 동영상 URL:YouTube 동영상은 콘솔에 로그인하는 데 사용된 계정이 소유한 것이거나 공개된 동영상이어야 합니다. Cloud de Confiance 요청당 하나의 YouTube 동영상 URL만 지원됩니다.
fileURI를 지정할 때는 파일의 미디어 유형 (mimeType)도 지정해야 합니다. VPC 서비스 제어가 사용 설정된 경우fileURI의 미디어 파일 URL을 지정하는 것은 지원되지 않습니다.Cloud Storage에 동영상 파일이 없으면 MIME 유형이
video/mp4인gs://cloud-samples-data/video/animals.mp4와 같은 공개적으로 사용 가능한 파일을 사용할 수 있습니다. 이 동영상을 보려면 샘플 MP4 파일을 엽니다. -
MIME_TYPE: 또는datafileUri필드에 지정된 파일의 미디어 유형입니다. 허용되는 값은 다음과 같습니다.클릭하여 MIME 유형 펼치기
application/pdfaudio/mpegaudio/mp3audio/wavimage/pngimage/jpegimage/webptext/plainvideo/movvideo/mpegvideo/mp4video/mpgvideo/avivideo/wmvvideo/mpegpsvideo/flv
-
TEXT: 프롬프트에 포함할 텍스트 안내입니다. 예:What is in the video?
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
curl
요청 본문을 request.json 파일에 저장합니다.
터미널에서 다음 명령어를 실행하여 현재 디렉터리에 이 파일을 만들거나 덮어씁니다.
cat > request.json << 'EOF'
{
"contents": {
"role": "USER",
"parts": [
{
"fileData": {
"fileUri": "FILE_URI",
"mimeType": "MIME_TYPE"
}
},
{
"text": "TEXT"
}
]
}
}
EOF그런 후 다음 명령어를 실행하여 REST 요청을 전송합니다.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-3.1-flash-image:generateContent"
PowerShell
요청 본문을 request.json 파일에 저장합니다.
터미널에서 다음 명령어를 실행하여 현재 디렉터리에 이 파일을 만들거나 덮어씁니다.
@'
{
"contents": {
"role": "USER",
"parts": [
{
"fileData": {
"fileUri": "FILE_URI",
"mimeType": "MIME_TYPE"
}
},
{
"text": "TEXT"
}
]
}
}
'@ | Out-File -FilePath request.json -Encoding utf8그런 후 다음 명령어를 실행하여 REST 요청을 전송합니다.
$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://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-3.1-flash-image:generateContent" | Select-Object -Expand Content
- 응답이 완전히 생성된 후 반환되도록 요청하려면
generateContent메서드를 사용합니다. 시청자가 지연 시간에 대해 갖는 느낌을 줄이려면streamGenerateContent메서드를 사용하여 생성되는 응답을 스트리밍합니다. - 멀티모달 모델 ID는 메서드 앞의 URL 끝 부분에 있습니다
(예:
gemini-3.5-flash). 이 샘플은 다른 모델도 지원할 수 있습니다. - 리전 API 엔드포인트 (예:
us-central1)를 사용하면 엔드포인트 URL의 리전이 요청이 처리되는 위치를 결정합니다. 리소스 경로의 충돌하는 위치는 무시됩니다.
다음 단계
Gemini 이미지 생성에 대한 자세한 내용은 다음 링크를 참고하세요.