Vertex AI 기반 Imagen을 사용하면 Google Cloud 콘솔에서 제공하는 텍스트 프롬프트에서 새 이미지를 생성하거나 요청을 Vertex AI API로 보낼 수 있습니다.
이미지 생성 및 수정을 위한 텍스트 프롬프트 작성에 대한 상세 내용은 프롬프트 가이드를 참조하세요.
이미지 생성 사용해 보기(Vertex AI Studio)
위치
위치는 데이터가 영구 저장되는 위치를 제어하기 위해 요청에서 지정할 수 있는 리전입니다. 사용 가능한 리전 목록은 Vertex AI의 생성형 AI 위치를 참조하세요.
안전 필터링
Imagen에 이미지 생성 요청을 전송하면 입력 데이터와 출력 콘텐츠 모두 불쾌감을 주는 자료가 있는지 확인됩니다. 즉, 불쾌감을 주는 텍스트 프롬프트 입력이 차단될 수 있습니다. 마찬가지로 불쾌감을 주는 출력 이미지도 차단될 수 있으며, 이는 응답에서 얻는 생성된 이미지 수에 영향을 미칩니다.
안전 필터링 및 차단된 콘텐츠 처리에 관한 자세한 내용은 책임감 있는 AI 및 Imagen 사용 가이드라인을 참조하세요.
성능 및 제한사항
이미지 생성을 위해 Imagen 모델을 사용할 때는 다음 한도가 적용됩니다.
한도 | 값 (Imagen 3) |
---|---|
프로젝트별 분당 최대 API 요청 수 | Imagen 3: 20 Imagen 3 빠름: 200 |
요청당 반환되는 최대 이미지 수(텍스트에서 이미지 생성) | 4 |
요청에 업로드되거나 전송된 최대 이미지 크기(MB) | 10MB |
지원되는 반환 이미지 해상도(픽셀) |
|
최대 입력 토큰 수(텍스트 이미지 변환 생성 프롬프트 텍스트) | 토큰 480개 |
모델 버전
이미지 생성 모델의 다양한 버전을 사용할 수 있습니다. Imagen 모델 버전 관리에 대한 자세한 내용은 Imagen 모델 및 수명 주기를 참조하세요.
다음 모델 및 관련 기능을 이미지 생성에 사용할 수 있습니다.
모델 | 모델 리소스 이름 및 버전 | 출시 단계 | 특성 | 가로세로 비율 | 지원 언어 | 결제 |
---|---|---|---|---|---|---|
Imagen 3 |
Imagen 3:imagen-3.0-generate-002 (최신 모델)imagen-3.0-generate-001 Imagen 3 Fast: imagen-3.0-fast-generate-001 프로토타입 제작 또는 지연 시간이 짧은 사용 사례에 사용할 수 있는 지연 시간이 짧은 모델 변형입니다. Imagen 3 맞춤설정 및 수정: imagen-3.0-capability-001 (승인된 사용자)
|
정식 버전 |
지원되는 기능:
|
|
정식 버전:
미리보기:
|
예, 생성에 가격 책정 적용 Imagen 3 모델의 가격 책정은 신규 SKU에 적용되므로 다른 모델과 가격 책정이 다릅니다. 모든 기능과 출시 단계를 보려면 Imagen 개요를 참조하세요. |
시작하기 전에
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI API.
-
환경에 대한 인증을 설정하세요.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
Java
로컬 개발 환경에서 이 페이지의 Java 샘플을 사용하려면 gcloud CLI를 설치 및 초기화한 다음 사용자 인증 정보로 애플리케이션 기본 사용자 인증 정보를 설정하세요.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
자세한 내용은 Google Cloud 인증 문서의 로컬 개발 환경의 ADC 설정을 참조하세요.
Node.js
로컬 개발 환경에서 이 페이지의 Node.js 샘플을 사용하려면 gcloud CLI를 설치 및 초기화한 다음 사용자 인증 정보로 애플리케이션 기본 사용자 인증 정보를 설정하세요.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
자세한 내용은 Google Cloud 인증 문서의 로컬 개발 환경의 ADC 설정을 참조하세요.
Python
로컬 개발 환경에서 이 페이지의 Python 샘플을 사용하려면 gcloud CLI를 설치 및 초기화한 다음 사용자 인증 정보로 애플리케이션 기본 사용자 인증 정보를 설정하세요.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
자세한 내용은 Google Cloud 인증 문서의 로컬 개발 환경의 ADC 설정을 참조하세요.
REST
로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공한 사용자 인증 정보를 사용합니다.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
자세한 내용은 Google Cloud 인증 문서의 REST 사용을 위한 인증을 참조하세요.
텍스트로 이미지 생성
설명 텍스트만 입력으로 사용하여 새로운 이미지를 생성할 수 있습니다. 다음 샘플에서는 이미지 생성에 대한 기본 안내를 보여주지만 사용 사례에 따라 추가 매개변수를 사용할 수도 있습니다.
콘솔
-
Google Cloud 콘솔의 Vertex AI 대시보드에서 Vertex AI Studio > 미디어 탭을 엽니다.
Vertex AI Studio 탭으로 이동 -
프롬프트 작성 필드에 생성할 이미지의 설명을 입력합니다. 효과적인 프롬프트를 작성하는 방법에 대한 자세한 내용은 프롬프트 가이드를 참조하세요.
- 예시: 아침 물 위에 떠 있는 작은 배 수채화 이미지
선택사항입니다. 매개변수 패널의 모델 옵션 상자에서 사용할 모델 버전을 선택합니다. 자세한 내용은 모델 버전을 참조하세요.
선택사항입니다. 표준 및 고급 매개변수를 변경합니다.
-
이미지를 생성하려면
생성을 클릭합니다.이미지 생성 뷰: 저채도 색상의 아침 물 위에 떠 있는 빨간색 작은 배 수채화 이미지.
REST
imagegeneration
모델 요청에 대한 자세한 내용은imagegeneration
모델 API 참조를 확인하세요.요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
- MODEL_VERSION: 사용할
imagegeneration
모델 버전입니다. 사용 가능한 값:- .
-
Imagen 3:
imagen-3.0-generate-002
(최신 모델)imagen-3.0-generate-001
imagen-3.0-fast-generate-001
- 지연 시간이 짧은 모델 버전입니다.
-
기본 모델 버전:
imagegeneration
- 기본 모델 버전 v.006을 사용합니다. 특히 프로덕션 환경에서는 항상 모델 버전을 지정하는 것이 좋습니다.
모델 버전 및 기능에 대한 자세한 내용은 모델 버전을 참조하세요.
-
Imagen 3:
- LOCATION: 프로젝트의 리전입니다. 예를 들면
us-central1
,europe-west2
,asia-northeast3
입니다. 사용 가능한 리전 목록은 Vertex AI의 생성형 AI 위치를 참조하세요. - TEXT_PROMPT: 모델이 생성하는 이미지를 안내하는 텍스트 프롬프트입니다. 이 필드는 생성 및 수정 모두에서 필요합니다.
- IMAGE_COUNT: 생성된 이미지의 수입니다.
허용되는 정수 값은 1~8(
imagegeneration@002
), 1~4(기타 모든 모델 버전)입니다. 기본값: 4. - ADD_WATERMARK: 불리언입니다. 선택사항입니다. 생성된 이미지에 워터마크를 사용 설정할지 여부입니다.
필드가
true
로 설정되었을 때 생성되는 모든 이미지에는 워터마크가 추가된 이미지를 확인하는 데 사용할 수 있는 디지털 SynthID가 포함됩니다. 이 필드를 생략하면 기본값true
가 사용됩니다. 이 기능을 중지하려면 값을false
로 설정해야 합니다. 이 필드를false
로 설정한 경우에만seed
필드를 사용하여 결정론적 출력을 얻을 수 있습니다. - ASPECT_RATIO: 문자열입니다. 선택사항입니다. 가로세로 비율을 제어하는 생성 모드 파라미터입니다. 지원되는 비율 값과 사용 목적은 다음과 같습니다.
1:1
(기본값, 정사각형)3:4
(광고, 소셜 미디어)4:3
(TV, 사진)16:9
(가로)9:16
(세로)
- ENABLE_PROMPT_REWRITING: 불리언입니다. 선택사항입니다. LLM 기반 프롬프트 수정 기능을 사용하여 원래 프롬프트의 의도를 더 잘 반영하는 고품질 이미지를 제공하는 파라미터입니다. 이 기능을 사용 중지하면 이미지 품질과 프롬프트 준수가 영향을 받을 수 있습니다. 기본값:
true
. - INCLUDE_RAI_REASON: 불리언입니다. 선택사항입니다. 차단된 입력 또는 출력이 있는 응답에서 책임감 있는 AI 필터링된 이유 코드를 사용 설정할지 여부입니다. 기본값은
false
입니다. - INCLUDE_SAFETY_ATTRIBUTES: 불리언입니다. 선택사항입니다. 필터링되지 않은 입력 및 출력에 대한 응답에서 안전 속성 목록에 대해 반올림된 책임감 있는 AI 점수를 사용 설정할지 여부입니다. 안전 속성 카테고리에는
"Death, Harm & Tragedy"
,"Firearms & Weapons"
,"Hate"
,"Health"
,"Illicit Drugs"
,"Politics"
,"Porn"
,"Religion & Belief"
,"Toxic"
,"Violence"
,"Vulgarity"
,"War & Conflict"
등이 있습니다. 기본값은false
입니다. - MIME_TYPE: 문자열입니다. 선택사항입니다. 이미지 콘텐츠의 MIME 유형입니다. 사용 가능한 값은 다음과 같습니다.
image/jpeg
image/gif
image/png
image/webp
image/bmp
image/tiff
image/vnd.microsoft.icon
- COMPRESSION_QUALITY: 정수입니다. 선택사항입니다. JPEG 출력 파일에만 적용됩니다. JPEG 파일 형식으로 생성된 이미지에 대해 모델이 보존하는 세부 수준입니다. 값은
0
~100
이며 숫자가 클수록 압축이 더 높습니다. 기본값은75
입니다. - PERSON_SETTING: 문자열입니다. 선택사항입니다. 모델에서 허용하는 사람 유형이나 얼굴 생성 유형을 제어하는 안전 설정입니다. 사용 가능한 값은 다음과 같습니다.
allow_adult
(기본값): 유명인 생성을 제외하고 성인만 생성합니다. 어떤 설정에서도 유명인은 생성되지 않습니다.dont_allow
: 생성된 이미지에 사람이나 얼굴이 포함되지 않습니다.
- SAFETY_SETTING: 문자열입니다. 선택사항입니다. 생성된 이미지의 안전 필터 기준점을 제어하는 설정입니다. 사용 가능한 값은 다음과 같습니다.
block_low_and_above
: 가장 높은 안전 기준점으로, 필터링되어 생성된 이미지 수가 가장 많습니다. 이전 값은block_most
입니다.block_medium_and_above
(기본값): 잠재적으로 유해하고 안전한 콘텐츠에 대한 필터링의 균형을 맞추는 중간 안전 기준점입니다. 이전 값은block_some
입니다.block_only_high
: 안전 필터로 인해 차단된 요청 수를 줄이는 안전 기준점입니다. 이 설정으로 인해 Imagen에서 불쾌감을 주는 콘텐츠를 많이 생성할 수 있습니다. 이전 값은block_few
입니다.
- SEED_NUMBER: 정수입니다. 선택사항입니다. 출력 이미지를 결정론적으로 만들기 위해 제공하는 음수가 아닌 정수입니다. 동일한 시드 번호를 제공하면 항상 같은 출력 이미지가 생성됩니다. 사용 중인 모델이 디지털 워터마킹을 지원하는 경우 이 필드를 사용하려면
"addWatermark": false
를 설정해야 합니다. 허용되는 정수 값은1
~2147483647
입니다. - OUTPUT_STORAGE_URI: 문자열입니다. 선택사항입니다. 출력 이미지를 저장할 Cloud Storage 버킷입니다. 제공되지 않으면 base64로 인코딩된 이미지 바이트가 응답으로 반환됩니다. 샘플 값은
gs://image-bucket/output/
입니다.
추가 선택적 파라미터
사용 사례에 따라 다음 선택적 변수를 사용하세요.
"parameters": {}
객체에 다음 파라미터 중 일부 또는 전부를 추가합니다. 이 목록에는 일반적인 선택적 파라미터가 나와 있으며 모든 파라미터가 포함되어 있지는 않습니다. 선택적 파라미터에 관한 자세한 내용은 Imagen API 참조: 이미지 생성을 참조하세요."parameters": { "sampleCount": IMAGE_COUNT, "addWatermark": ADD_WATERMARK, "aspectRatio": "ASPECT_RATIO", "enhancePrompt": ENABLE_PROMPT_REWRITING, "includeRaiReason": INCLUDE_RAI_REASON, "includeSafetyAttributes": INCLUDE_SAFETY_ATTRIBUTES, "outputOptions": { "mimeType": "MIME_TYPE", "compressionQuality": COMPRESSION_QUALITY }, "personGeneration": "PERSON_SETTING", "safetySetting": "SAFETY_SETTING", "seed": SEED_NUMBER, "storageUri": "OUTPUT_STORAGE_URI" }
HTTP 메서드 및 URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict
JSON 요청 본문:
{ "instances": [ { "prompt": "TEXT_PROMPT" } ], "parameters": { "sampleCount": IMAGE_COUNT } }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict"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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict" | Select-Object -Expand Content"sampleCount": 2
요청에 대한 샘플 응답입니다. 응답은 생성된 이미지 바이트를 base64로 인코딩한 두 개의 예측 객체를 반환합니다.{ "predictions": [ { "bytesBase64Encoded": "BASE64_IMG_BYTES", "mimeType": "image/png" }, { "mimeType": "image/png", "bytesBase64Encoded": "BASE64_IMG_BYTES" } ] }
프롬프트 개선을 지원하는 모델을 사용하는 경우 생성에 사용된 개선된 프롬프트가 포함된 추가
prompt
필드가 응답에 포함됩니다.{ "predictions": [ { "mimeType": "MIME_TYPE", "prompt": "ENHANCED_PROMPT_1", "bytesBase64Encoded": "BASE64_IMG_BYTES_1" }, { "mimeType": "MIME_TYPE", "prompt": "ENHANCED_PROMPT_2", "bytesBase64Encoded": "BASE64_IMG_BYTES_2" } ] }
Python
이 샘플을 사용해 보기 전에 Vertex AI 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 Vertex AI Python API 참고 문서를 참조하세요.
Vertex AI에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
이 샘플에서는
ImageGenerationModel
에서generate_images
메서드를 호출하고 생성된 이미지를 로컬로 저장합니다. 그런 다음 노트북에서show()
메서드를 선택적으로 사용하여 생성된 이미지를 표시할 수 있습니다. 모델 버전 및 기능에 대한 자세한 내용은 모델 버전을 참조하세요.Java
이 샘플을 사용해 보기 전에 Vertex AI 빠른 시작: 클라이언트 라이브러리 사용의 Java 설정 안내를 따르세요. 자세한 내용은 Vertex AI Java API 참고 문서를 참조하세요.
Vertex AI에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
이 샘플에서는
EndpointName
의 일부로imagen-3.0-generate-001
모델을 지정합니다.EndpointName
은PredictionServiceClient
에서 호출되는predict
메서드에 전달됩니다. 이 서비스는 로컬로 저장되는 이미지를 생성합니다. 모델 버전 및 기능에 대한 자세한 내용은 모델 버전을 참조하세요.Node.js
이 샘플을 사용해 보기 전에 Vertex AI 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 Vertex AI Node.js API 참고 문서를 참조하세요.
Vertex AI에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
이 샘플에서는PredictionServiceClient
에서predict
메서드를 호출합니다. 이 서비스는 로컬로 저장되는 이미지를 생성합니다. 모델 버전 및 기능에 대한 자세한 내용은 모델 버전을 참조하세요.매개변수를 사용하여 이미지 생성
이미지를 생성할 때 사용 사례에 따라 설정할 수 있는 표준 및 고급 매개변수가 여러 개 있습니다.
이미지 워터마크 추가 또는 확인
기본적으로 디지털 워터마크는 워터마크를 생성할 수 있는 모델 버전에서 생성한 모든 이미지에 추가됩니다. 이 기능은 SynthID라고 하는 표시되지 않는 디지털 워터마크를 이미지에 추가합니다. 그런 다음 이미지에 디지털 워터마크가 포함되어 있는지를 확인할 수 있습니다.
워터마크가 추가된 이미지 생성
다음 샘플을 사용하여 디지털 워터마크가 있는 이미지를 생성합니다.
콘솔
-
Google Cloud 콘솔의 Vertex AI 대시보드에서 Vertex AI Studio > 미디어 탭을 엽니다.
Vertex AI Studio 탭으로 이동 -
프롬프트 작성 필드에 생성할 이미지의 설명을 입력합니다. 효과적인 프롬프트를 작성하는 방법에 대한 자세한 내용은 프롬프트 가이드를 참조하세요.
- 예시: 아침 물 위에 떠 있는 작은 배 수채화 이미지
선택사항입니다. 매개변수 패널의 모델 옵션 상자에서 사용할 모델 버전을 선택합니다. 자세한 내용은 모델 버전을 참조하세요.
선택사항입니다. 표준 및 고급 매개변수를 변경합니다.
-
이미지를 생성하려면
생성을 클릭합니다. -
모델 버전 006 이상: 디지털 워터마크가 자동으로 생성된 이미지에 추가됩니다. Google Cloud 콘솔을 사용하여 이미지 생성 시에 디지털 워터마크를 중지할 수 없습니다.
이미지를 선택하여 이미지 세부정보 창으로 이동할 수 있습니다. 워터마크가 추가된 이미지에는 확인할 수도 있습니다.
디지털 워터마크 배지가 포함됩니다. 이미지 워터마크를 명시적으로프롬프트에서 Imagen 2로 생성된 워터마크가 추가된 이미지의 이미지 세부정보 뷰: 저채도 색상의 아침 물 위에 떠 있는 빨간색 작은 배 수채화 이미지
REST
imagegeneration
모델 요청에 대한 자세한 내용은imagegeneration
모델 API 참조를 확인하세요.요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
- MODEL_VERSION: 사용할
imagegeneration
모델 버전입니다. 사용 가능한 값:- .
imagen-3.0-generate-002
(최신 모델)imagen-3.0-generate-001
imagen-3.0-fast-generate-001
- 지연 시간이 짧은 모델 버전입니다.imagegeneration@006
모델 버전 및 기능에 대한 자세한 내용은 모델 버전을 참조하세요.
- LOCATION: 프로젝트의 리전입니다. 예를 들면
us-central1
,europe-west2
,asia-northeast3
입니다. 사용 가능한 리전 목록은 Vertex AI의 생성형 AI 위치를 참조하세요. - TEXT_PROMPT: 모델이 생성하는 이미지를 안내하는 텍스트 프롬프트입니다. 이 필드는 생성 및 수정 모두에서 필요합니다.
- IMAGE_COUNT: 생성된 이미지의 수입니다.
허용되는 정수 값은 1~8(
imagegeneration@002
), 1~4(기타 모든 모델 버전)입니다. 기본값: 4. - ADD_WATERMARK: 불리언입니다. 선택사항입니다. 생성된 이미지에 워터마크를 사용 설정할지 여부입니다.
필드가
true
로 설정되었을 때 생성되는 모든 이미지에는 워터마크가 추가된 이미지를 확인하는 데 사용할 수 있는 디지털 SynthID가 포함됩니다. 이 필드를 생략하면 기본값true
가 사용됩니다. 이 기능을 중지하려면 값을false
로 설정해야 합니다. 이 필드를false
로 설정한 경우에만seed
필드를 사용하여 결정론적 출력을 얻을 수 있습니다.
HTTP 메서드 및 URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict
JSON 요청 본문:
{ "instances": [ { "prompt": "TEXT_PROMPT" } ], "parameters": { "sampleCount": IMAGE_COUNT, "addWatermark": ADD_WATERMARK } }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict"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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict" | Select-Object -Expand Content"sampleCount": 2
요청에 대한 샘플 응답입니다. 응답은 생성된 이미지 바이트를 base64로 인코딩한 두 개의 예측 객체를 반환합니다. 디지털 워터마크는 자동으로 이미지에 추가되므로 응답은 워터마크가 없는 응답과 같습니다.{ "predictions": [ { "mimeType": "image/png", "bytesBase64Encoded": "BASE64_IMG_BYTES" }, { "bytesBase64Encoded": "BASE64_IMG_BYTES", "mimeType": "image/png" } ] }
Python용 Vertex AI SDK
Node.js
워터마크가 추가된 이미지 확인
다음 샘플을 사용하여 이미지에 워터마크가 있는지 확인합니다.
콘솔
Google Cloud 콘솔의 Vertex AI 대시보드에서 Vertex AI Studio > 미디어 탭을 엽니다.
하단 패널에서
확인을 클릭합니다.이미지 업로드를 클릭합니다.
로컬로 저장된 생성된 이미지를 선택합니다.
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
- LOCATION: 프로젝트의 리전입니다. 예를 들면
us-central1
,europe-west2
,asia-northeast3
입니다. 사용 가능한 리전 목록은 Vertex AI의 생성형 AI 위치를 참조하세요. - B64_IMAGE: 디지털 워터마크가 포함되어 있는지 확인할 이미지입니다. 이미지는 base64 인코딩 바이트 문자열로 지정되어야 합니다. 크기 제한: 10MB.
HTTP 메서드 및 URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imageverification@001:predict
JSON 요청 본문:
{ "instances": [ { "image": { "bytesBase64Encoded": "B64_IMAGE" } } ], "parameters": { "watermarkVerification": true } }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imageverification@001:predict"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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imageverification@001:predict" | Select-Object -Expand ContentACCEPT
또는REJECT
값을 반환할 수 있습니다.{ "predictions": [ { "decision": "ACCEPT" } ] }
Python용 Vertex AI SDK
Node.js
책임감 있는 AI(RAI) 안전 설정 구성
이미지 생성 모델에서 사용할 수 있는 책임감 있는 AI(RAI) 필터링 매개변수는 몇 가지가 있습니다. 예를 들어 모델에서 차단된 콘텐츠의 RAI 필터 코드를 보고하거나 RAI 필터를 사용하여 사용자 또는 얼굴 생성을 중지하거나 콘텐츠 필터링 수준을 설정하거나 입력과 출력에 대한 안전 속성 목록의 반올림된 RAI 점수를 반환할 수 있습니다.
책임감 있는 AI(RAI), 관련 매개변수, 샘플 출력에 대한 자세한 내용은 Imagen의 책임감 있는 AI 이해 및 구성을 참조하세요.
다음 샘플에서는 이미지 생성에 사용할 수 있는 RAI 매개변수를 설정하는 방법을 보여줍니다.
콘솔
Google Cloud 콘솔의 Vertex AI 대시보드에서 Vertex AI Studio > 미디어 탭을 엽니다.
텍스트 프롬프트를 추가하고 입력 매개변수를 선택합니다.
펼쳐지지 않은 경우 고급 옵션을 클릭합니다.
안전 설정을 클릭합니다.
안전 설정을 선택합니다.
- 사람/얼굴 생성: 다음 설정 중 하나를 선택합니다.
Allow (All ages)
Allow (Adults only)
Don't allow
- 안전 필터 기준점: 다음 설정 중 하나를 선택합니다.
Block low and above
Block medium and above
Block only high
- 사람/얼굴 생성: 다음 설정 중 하나를 선택합니다.
저장을 클릭합니다.
생성을 클릭합니다.
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
- LOCATION: 프로젝트의 리전입니다. 예를 들면
us-central1
,europe-west2
,asia-northeast3
입니다. 사용 가능한 리전 목록은 Vertex AI의 생성형 AI 위치를 참조하세요. - TEXT_PROMPT: 모델이 생성하는 이미지를 안내하는 텍스트 프롬프트입니다. 이 필드는 생성 및 수정 모두에서 필요합니다.
- IMAGE_COUNT: 생성된 이미지의 수입니다.
허용되는 정수 값은 1~8(
imagegeneration@002
), 1~4(기타 모든 모델 버전)입니다. 기본값: 4. - SAFETY_SETTING: 문자열입니다. 선택사항입니다. 생성된 이미지의 안전 필터 기준점을 제어하는 설정입니다. 사용 가능한 값은 다음과 같습니다.
block_low_and_above
: 가장 높은 안전 기준점으로, 필터링되어 생성된 이미지 수가 가장 많습니다. 이전 값은block_most
입니다.block_medium_and_above
(기본값): 잠재적으로 유해하고 안전한 콘텐츠에 대한 필터링의 균형을 맞추는 중간 안전 기준점입니다. 이전 값은block_some
입니다.block_only_high
: 안전 필터로 인해 차단된 요청 수를 줄이는 안전 기준점입니다. 이 설정으로 인해 Imagen에서 불쾌감을 주는 콘텐츠를 많이 생성할 수 있습니다. 이전 값은block_few
입니다.
- PERSON_SETTING: 문자열입니다. 선택사항입니다. 모델에서 허용하는 사람 유형이나 얼굴 생성 유형을 제어하는 안전 설정입니다. 사용 가능한 값은 다음과 같습니다.
allow_adult
(기본값): 유명인 생성을 제외하고 성인만 생성합니다. 어떤 설정에서도 유명인은 생성되지 않습니다.dont_allow
: 생성된 이미지에 사람이나 얼굴이 포함되지 않습니다.
- INCLUDE_RAI_REASON: 불리언입니다. 선택사항입니다. 차단된 입력 또는 출력이 있는 응답에서 책임감 있는 AI 필터링된 이유 코드를 사용 설정할지 여부입니다. 기본값은
false
입니다. - INCLUDE_SAFETY_ATTRIBUTES: 불리언입니다. 선택사항입니다. 필터링되지 않은 입력 및 출력에 대한 응답에서 안전 속성 목록에 대해 반올림된 책임감 있는 AI 점수를 사용 설정할지 여부입니다. 안전 속성 카테고리에는
"Death, Harm & Tragedy"
,"Firearms & Weapons"
,"Hate"
,"Health"
,"Illicit Drugs"
,"Politics"
,"Porn"
,"Religion & Belief"
,"Toxic"
,"Violence"
,"Vulgarity"
,"War & Conflict"
등이 있습니다. 기본값은false
입니다.
HTTP 메서드 및 URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagegeneration@006:predict
JSON 요청 본문:
{ "instances": [ { "prompt": "TEXT_PROMPT" } ], "parameters": { "sampleCount": IMAGE_COUNT, "safetySetting": "SAFETY_SETTING", "personGeneration": "PERSON_SETTING", "includeRaiReason": INCLUDE_RAI_REASON, "includeSafetyAttributes": INCLUDE_SAFETY_ATTRIBUTES } }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagegeneration@006:predict"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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagegeneration@006:predict" | Select-Object -Expand Content프롬프트 수정 도구를 사용한 프롬프트 개선
Imagen 3 모델 버전 002에는 LLM 기반 프롬프트 수정 도구를 사용하는 프롬프트 수정 기능이 포함되어 있습니다. 이 도구는 일반적으로 제공된 프롬프트에 더 많은 세부정보를 추가하여 제공된 프롬프트를 더 잘 반영하는 고품질 이미지를 제공합니다. 이 기능을 중지하면 사용자가 받는 이미지의 품질과 프롬프트 준수가 영향을 받을 수 있습니다. 이 기능은 기본적으로 사용하도록 설정되어 있습니다.
수정된 프롬프트는 원래 프롬프트의 길이가 30단어 미만인 경우에만 API 응답을 통해 제공됩니다.
콘솔
Google Cloud 콘솔의 Vertex AI 대시보드에서 Vertex AI Studio > 미디어 탭을 엽니다.
텍스트 프롬프트를 추가하고 입력 매개변수를 선택합니다.
파라미터 패널에서 toggle_on프롬프트 개선 사용 설정 전환 옵션을 사용하여 프롬프트 개선을 사용 설정 상태로 두거나 이 기능을 중지합니다.
생성을 클릭합니다.
REST
imagegeneration
모델 요청에 대한 자세한 내용은imagegeneration
모델 API 참조를 확인하세요.요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
- MODEL_VERSION: 사용할 이미지 생성 모델 버전입니다. 프롬프트 개선을 지원하는 사용 가능한 값은 다음과 같습니다.
imagen-3.0-generate-002
모델 버전 및 기능에 대한 자세한 내용은 모델 버전을 참조하세요.
- LOCATION: 프로젝트의 리전입니다. 예를 들면
us-central1
,europe-west2
,asia-northeast3
입니다. 사용 가능한 리전 목록은 Vertex AI의 생성형 AI 위치를 참조하세요. - TEXT_PROMPT: 모델이 생성하는 이미지를 안내하는 텍스트 프롬프트입니다. 이미지가 생성되기 전에 이 기본 프롬프트는 LLM 기반 프롬프트 수정 도구를 사용하여 더 많은 세부정보와 설명적 언어로 개선됩니다.
- IMAGE_COUNT: 생성된 이미지의 수입니다. 허용되는 정수 값: 1~4. 기본값: 4.
enhancePrompt
- LLM 기반 프롬프트 개선을 사용 설정하는 불리언입니다. 기본적으로 이 값은true
로 설정됩니다.
HTTP 메서드 및 URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict
JSON 요청 본문:
{ "instances": [ { "prompt": "TEXT_PROMPT" } ], "parameters": { "sampleCount": IMAGE_COUNT, "enhancePrompt": true } }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict"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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict" | Select-Object -Expand Contentprompt
필드가 포함됩니다.{ "predictions": [ { "mimeType": "MIME_TYPE", "prompt": "ENHANCED_PROMPT_1", "bytesBase64Encoded": "BASE64_IMG_BYTES_1" }, { "mimeType": "MIME_TYPE", "prompt": "ENHANCED_PROMPT_2", "bytesBase64Encoded": "BASE64_IMG_BYTES_2" } ] }
예를 들어 다음 샘플 응답은
"sampleCount": 2
및"prompt": "A raccoon wearing formal clothes, wearing a top hat. Oil painting in the style of Vincent Van Gogh."
가 포함된 요청에 대한 응답입니다. 응답은 각기 개선된 프롬프트와 생성된 이미지 바이트를 base64로 인코딩한 두 개의 예측 객체를 반환합니다.{ "predictions": [ { "mimeType": "image/png", "prompt": "An oil painting in the style of Vincent van Gogh, depicting a raccoon adorned in a finely tailored tuxedo, complete with a crisp white shirt and a bow tie. The raccoon also sports a classic top hat, perched jauntily on its head. The painting uses thick, swirling brushstrokes characteristic of van Gogh, with vibrant hues of blue, yellow, and green in the background, contrasting with the dark tones of the raccoon's attire. The light source is subtly placed, casting a dramatic shadow of the raccoon's attire onto the surface it sits upon, further enhancing the depth and dimensionality of the composition. The overall impression is one of a whimsical and sophisticated character, a raccoon elevated to a higher class through its formal attire, rendered in van Gogh's iconic style.", "bytesBase64Encoded": "BASE64_IMG_BYTES" }, { "mimeType": "image/png", "prompt": "An oil painting in the style of Vincent van Gogh featuring a raccoon in a dapper suit, complete with a black jacket, crisp white shirt, and a black bow tie. The raccoon is wearing a black top hat, adding a touch of elegance to its ensemble. The painting is rendered with characteristic van Gogh brushwork, utilizing thick, impasto strokes of color. The background is a swirl of blues, greens, and yellows, creating a vibrant yet slightly chaotic atmosphere that contrasts with the raccoon's formal attire. The lighting is dramatic, casting sharp shadows and highlighting the textures of the fabric and the raccoon's fur, enhancing the sense of realism within the fantastical scene. The composition focuses on the raccoon's proud posture, highlighting the whimsical contrast of a wild animal dressed in formal attire, captured in the unique artistic language of van Gogh. ", "bytesBase64Encoded": "BASE64_IMG_BYTES" } ] }
텍스트 프롬프트 언어
이 선택적 매개변수를 사용하면 이미지 생성 또는 이미지 수정을 위한 입력 텍스트의 언어를 설정할 수 있습니다.
프롬프트에서 생성된 이미지: ऊपर से देखा गया किताबों का ढेर। सबसे ऊपरी पुस्तक में एक पक्षी का जलरंग चित्रण है। किताब पर VERTEX AI मोटे अक्षरों में लिखा हुआ है*
*위에서 본 책 무더기. 맨 위의 책에는 수채화로 그린 새 그림이 있습니다. VERTEX AI는 책에 굵은 글씨로 쓰여져 있습니다.프롬프트에서 생성된 이미지: †
†진한 노란색과 짙은 청록색으로 이루어진 밝은 색상의 옷을 입고, 귀걸이를 착용한 여성, 포스트모던 패션 사진시작하기 전에
이 기능을 사용하기에 앞서 다음 추가 단계를 완료하세요.
다음 명령어를 사용하여 프로젝트에서 사용할 Vertex AI의 서비스 ID를 만듭니다.
gcloud beta services identity create --service=aiplatform.googleapis.com --project=PROJECT_ID
기능 액세스를 요청합니다. 액세스를 요청하려면 Google Cloud 신뢰할 수 있는 테스터 액세스: 생성형 앱 빌더 그룹에 이메일을 보냅니다. 메시지에서 다국어 프롬프트를 참조하고 프로젝트 번호를 포함합니다. 승인 프로세스는 일반적으로 몇 시간 정도 걸립니다.
텍스트 프롬프트 언어 설정
다음과 같은 입력 텍스트 프롬프트 언어 값이 지원됩니다.
- 중국어(간체)(
zh
/zh-CN
) - 중국어(번체)(
zh-TW
) - 영어(
en
, 기본값) - 힌디어(
hi
) - 일본어(
ja
) - 한국어(
ko
) - 포르투갈어(
pt
) 스페인어(
es
)
콘솔
프롬프트가 지원되는 언어 중 하나로 되어 있으면 Imagen은 자동으로 텍스트를 감지 및 번역하고 생성되거나 수정된 이미지를 반환합니다.
프롬프트가 지원되지 않는 언어인 경우 Imagen은 요청에 텍스트를 그대로 사용합니다. 이로 인해 예기치 않은 출력이 발생할 수 있습니다.
REST
imagegeneration
모델 요청에 대한 자세한 내용은imagegeneration
모델 API 참조를 확인하세요.요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
- TEXT_PROMPT: 모델이 생성하는 이미지를 안내하는 텍스트 프롬프트입니다. 이 필드는 생성 및 수정 모두에서 필요합니다.
- PROMPT_LANGUAGE: 문자열입니다. 선택사항입니다. 텍스트 프롬프트 언어에 해당하는 언어 코드입니다.
이 예시에서는
hi
입니다. 사용 가능한 값은 다음과 같습니다.auto
- 자동 감지. Imagen이 지원되는 언어를 감지하면 프롬프트(그리고 원하는 경우 부정 프롬프트)가 영어로 번역됩니다. 감지된 언어가 지원되지 않으면 Imagen은 입력 텍스트를 그대로 사용하므로 예기치 않은 출력이 발생할 수 있습니다. 오류 코드가 반환되지 않습니다.en
- 영어(생략된 경우 기본값)es
- 스페인어hi
- 힌디어ja
- 일본어ko
- 한국어pt
- 포르투갈어zh-TW
- 중국어(번체)zh
또는zh-CN
- 중국어(간체)
HTTP 메서드 및 URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/imagegeneration@005:predict
JSON 요청 본문:
{ "instances": [ { "prompt": "सूर्यास्त के समय एक समुद्र तट। उड़ते पक्षी, हवा में लहराते नारियल के पेड़। लोग समुद्र तट पर सैर का आनंद ले रहे हैं।" } ], "parameters": { "language": "PROMPT_LANGUAGE" } }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
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/imagegeneration@005:predict"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/imagegeneration@005:predict" | Select-Object -Expand Content"sampleCount": 2
요청에 대한 샘플 응답입니다. 응답은 생성된 이미지 바이트를 base64로 인코딩한 두 개의 예측 객체를 반환합니다.{ "predictions": [ { "bytesBase64Encoded": "BASE64_IMG_BYTES", "mimeType": "image/png" }, { "mimeType": "image/png", "bytesBase64Encoded": "BASE64_IMG_BYTES" } ] }
가로세로 비율
생성된 이미지를 사용하려는 방법에 따라 일부 가로세로 비율이 다른 이미지보다 더 효과적일 수 있습니다. 사용 사례에 가장 적합한 가로세로 비율을 선택합니다.
지원되는 가로세로 비율 및 사용 목적:
가로세로 비율 사용 목적 이미지 해상도(픽셀) 샘플 이미지 1:1
기본값, 정사각형, 범용 1024x1024(Imagen v.002)
1536x1536(Imagen 2 v.005, v.006)
1024x1024(Imagen 3)프롬프트: 위에서 바라본 파스타 요리, 음식 잡지 표지 스타일의 스튜디오 사진 3:4
TV, 미디어, 영화 1344x1792(Imagen 2 v.006)
896x1280(Imagen 3)프롬프트: 밝은 채도 배경의 라벤더 바닐라 향수병의 향수 광고를 위해 촬영된 상업 사진. 4:3
TV, 미디어, 영화 1792x1344(Imagen 2 v.006)
1280x896(Imagen 3)프롬프트: 4k, 극적인 앵글로 촬영된 녹색과 회색 하이탑 스니커즈 상업용 사진 9:16
세로, 긴 객체, 휴대기기 1134x2016(Imagen 2 v.005, v.006)
768x1408(Imagen 3)프롬프트: 뉴욕의 고층 빌딩, 미래 렌더링, 개념, 디지털 아트 16:9
가로 2016x1134(Imagen 2 v.006)
1408x768(Imagen 3)프롬프트: 일몰 배경으로 하와이 해변을 렌즈 플레어 이펙트로 촬영한 자연 사진. 콘솔
텍스트로 이미지 생성 안내에 따라 Vertex AI Studio를 열고 텍스트 프롬프트를 입력합니다.
매개변수 패널의 가로세로 비율 메뉴에서 가로세로 비율을 선택합니다.
생성을 클릭합니다.
REST
가로세로 비율은 JSON 요청 본문의
parameters
객체에 있는 선택적 필드입니다.텍스트로 이미지 생성 안내에 따라 다른 요청 본문 변수를 바꿉니다.
다음을 바꿉니다.
- ASPECT_RATIO: 문자열입니다. 선택사항입니다. 가로세로 비율을 제어하는 생성 모드 파라미터입니다. 지원되는 비율 값과 사용 목적은 다음과 같습니다.
1:1
(기본값, 정사각형)3:4
(광고, 소셜 미디어)4:3
(TV, 사진)16:9
(가로)9:16
(세로)
{ "instances": [ ... ], "parameters": { "sampleCount": IMAGE_COUNT, "aspectRatio": "ASPECT_RATIO" } }
- ASPECT_RATIO: 문자열입니다. 선택사항입니다. 가로세로 비율을 제어하는 생성 모드 파라미터입니다. 지원되는 비율 값과 사용 목적은 다음과 같습니다.
텍스트로 이미지 생성 안내에 따라 REST 요청을 보냅니다.
알림당 결과 수
결과 수 매개변수를 사용하여 전송하는 요청(생성 또는 수정)마다 반환되는 이미지 양을 제한합니다.
콘솔
텍스트로 이미지 생성 안내에 따라 Vertex AI Studio를 열고 텍스트 프롬프트를 입력합니다.
매개변수 패널의 결과 수 필드에서 유효한 정수 값을 선택합니다.
생성을 클릭합니다.
REST
imagegeneration
모델 요청에 대한 자세한 내용은imagegeneration
모델 API 참조를 확인하세요.결과 수는 JSON 요청 본문의
parameters
객체에 있는 필드입니다.텍스트로 이미지 생성 안내에 따라 다른 요청 본문 변수를 바꿉니다.
다음을 바꿉니다.
- IMAGE_COUNT: 생성된 이미지의 수입니다.
허용되는 정수 값은 1~8(
imagegeneration@002
), 1~4(기타 모든 모델 버전)입니다. 기본값: 4.
{ "instances": [ ... ], "parameters": { "sampleCount": IMAGE_COUNT } }
- IMAGE_COUNT: 생성된 이미지의 수입니다.
허용되는 정수 값은 1~8(
텍스트로 이미지 생성 안내에 따라 REST 요청을 보냅니다.
네거티브 프롬프트
부정 프롬프트는 생성된 이미지에서 생략할 항목에 대한 설명입니다. 예를 들어 '사람이 없는 야간 도시 거리'라는 프롬프트를 생각해 봅시다. 이 모델은 '사람'을 생략 대상이 아니라 포함 대상 지시문으로 해석할 수 있습니다. 더 나은 결과를 생성하려면 '사람' 네거티브 프롬프트와 함께 '야간 도시 거리' 프롬프트를 사용하면 됩니다.
Imagen은 네거티브 프롬프트 유무에 관계없이 이러한 이미지를 생성합니다.
텍스트 프롬프트만
- 텍스트 프롬프트: '피자'
텍스트 프롬프트 및 네거티브 프롬프트
- 텍스트 프롬프트: '피자'
- 네거티브 프롬프트: 'pepperoni'
콘솔
텍스트로 이미지 생성 안내에 따라 Vertex AI Studio를 열고 텍스트 프롬프트를 입력합니다.
매개변수 패널에서 네거티브 프롬프트 필드에 네거티브 프롬프트를 입력합니다.
생성을 클릭합니다.
REST
imagegeneration
모델 요청에 대한 자세한 내용은imagegeneration
모델 API 참조를 확인하세요.네거티브 프롬프트는 JSON 요청 본문의
parameters
객체에 있는 선택적 필드입니다.텍스트로 이미지 생성 안내에 따라 다른 요청 본문 변수를 바꿉니다.
다음을 바꿉니다.
- NEGATIVE_PROMPT: 이미지를 생성하는 데 도움이 되는 네거티브 프롬프트입니다. 예를 들면 '동물'(동물 제거), '흐림'(이미지 선명화), '텍스트'(텍스트 제거) 또는 '자르기'(잘린 이미지 제거) 등입니다.
{ "instances": [ ... ], "parameters": { "sampleCount": IMAGE_COUNT, "negativePrompt": "NEGATIVE_PROMPT" } }
텍스트로 이미지 생성 안내에 따라 REST 요청을 보냅니다.
시드 번호
시드 번호는 생성된 이미지를 확정하도록 요청에 추가하는 숫자입니다. 요청에 시드 번호를 추가하면 매번 같은 생성 이미지를 가져올 수 있습니다. 예를 들어 프롬프트를 제공하고 결과 수를 1로 설정하며 시드 번호를 사용하면 동일한 입력 값을 모두 사용할 때마다 같은 이미지를 가져올 수 있습니다. 결과 수를 8로 설정하여 같은 요청을 보내면 동일한 이미지 8개가 생성됩니다. 그러나 이미지가 반드시 같은 순서로 반환되지는 않습니다.
콘솔
텍스트로 이미지 생성 안내에 따라 Vertex AI Studio를 열고 텍스트 프롬프트를 입력합니다.
매개변수 패널에서
고급 옵션 확장형 섹션을 클릭합니다.시드 필드에 시드 번호를 입력합니다.
생성을 클릭합니다.
REST
imagegeneration
모델 요청에 대한 자세한 내용은imagegeneration
모델 API 참조를 확인하세요.시드 번호는 JSON 요청 본문의
parameters
객체에 있는 선택적 필드입니다.텍스트로 이미지 생성 안내에 따라 다른 요청 본문 변수를 바꿉니다.
다음을 바꿉니다.
- SEED_NUMBER: 정수입니다. 선택사항입니다. 출력 이미지를 결정론적으로 만들기 위해 제공하는 음수가 아닌 정수입니다. 동일한 시드 번호를 제공하면 항상 같은 출력 이미지가 생성됩니다. 사용 중인 모델이 디지털 워터마킹을 지원하는 경우 이 필드를 사용하려면
"addWatermark": false
를 설정해야 합니다. 허용되는 정수 값은1
~2147483647
입니다.
{ "instances": [ ... ], "parameters": { "sampleCount": IMAGE_COUNT, "seed": SEED_NUMBER, // required for model version 006 and greater only when using a seed number "addWatermark": false } }
- SEED_NUMBER: 정수입니다. 선택사항입니다. 출력 이미지를 결정론적으로 만들기 위해 제공하는 음수가 아닌 정수입니다. 동일한 시드 번호를 제공하면 항상 같은 출력 이미지가 생성됩니다. 사용 중인 모델이 디지털 워터마킹을 지원하는 경우 이 필드를 사용하려면
텍스트로 이미지 생성 안내에 따라 REST 요청을 보냅니다.
사전 정의된 스타일
생성하려는 이미지의 스타일입니다. 이 특성을 사용하면 디지털 아트, 수채화 또는 사이버 펑크와 같이 인기 있는 스타일로 이미지를 만들 수 있습니다.
콘솔
텍스트로 이미지 생성 안내에 따라 Vertex AI Studio를 열고 텍스트 프롬프트를 입력합니다.
매개변수 패널의 스타일 섹션에 있는 메뉴에서 스타일을 선택합니다.
생성을 클릭합니다.
REST
imagegeneration
모델 요청에 대한 자세한 내용은imagegeneration
모델 API 참조를 확인하세요.사전 정의된 스타일은 JSON 요청 본문의
parameters
객체에 있는 선택적 필드입니다.텍스트로 이미지 생성 안내에 따라 다른 요청 본문 변수를 바꿉니다.
다음을 바꿉니다.
- IMAGE_STYLE: 사용 가능한 사전 정의된 스타일 중 하나입니다.
photograph
digital_art
landscape
sketch
watercolor
cyberpunk
pop_art
{ "instances": [ ... ], "parameters": { "sampleCount": IMAGE_COUNT, "sampleImageStyle": "IMAGE_STYLE" } }
- IMAGE_STYLE: 사용 가능한 사전 정의된 스타일 중 하나입니다.
텍스트로 이미지 생성 안내에 따라 REST 요청을 보냅니다.
이미지 확대
확대를 사용하면 품질 저하 없이 기존 이미지, 생성된 이미지 또는 수정된 이미지의 크기를 늘릴 수 있습니다.
콘솔
텍스트로 이미지 생성 안내에 따라 이미지를 생성합니다.
확대할 이미지를 선택합니다.
내보내기를 클릭합니다.
이미지 확대를 선택합니다.
배율에서 값을 선택합니다.
내보내기를 클릭하여 확대한 이미지를 저장합니다.
REST
imagegeneration
모델 요청에 대한 자세한 내용은imagegeneration
모델 API 참조를 확인하세요.확장 모드는 JSON 요청 본문의
parameters
객체에 있는 선택적 필드입니다. API를 사용하여 이미지를 확장하는 경우"mode": "upscale"
및upscaleConfig
를 지정하세요.요청 데이터를 사용하기 전에 다음을 바꿉니다.
- LOCATION: 프로젝트의 리전입니다. 예를 들면
us-central1
,europe-west2
,asia-northeast3
입니다. 사용 가능한 리전 목록은 Vertex AI의 생성형 AI 위치를 참조하세요. - PROJECT_ID: Google Cloud 프로젝트 ID입니다.
- B64_BASE_IMAGE: 수정하거나 확대할 기본 이미지. 이미지는 base64 인코딩 바이트 문자열로 지정되어야 합니다. 크기 제한: 10MB.
- IMAGE_SOURCE: 수정하거나 확대할 이미지의 Cloud Storage 위치. 예를 들면
gs://output-bucket/source-photos/photo.png
입니다. - UPSCALE_FACTOR: (선택사항) 이미지를 확대할 배율. 지정하지 않으면 확대 배율은 입력 이미지의 더 긴 쪽과
sampleImageSize
에서 결정됩니다. 사용 가능한 값:x2
또는x4
.
HTTP 메서드 및 URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagegeneration@002:predict
JSON 요청 본문:
{ "instances": [ { "prompt": "", "image": { // use one of the following to specify the image to upscale "bytesBase64Encoded": "B64_BASE_IMAGE" "gcsUri": "IMAGE_SOURCE" // end of base image input options }, } ], "parameters": { "sampleCount": 1, "mode": "upscale", "upscaleConfig": { "upscaleFactor": "UPSCALE_FACTOR" } } }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagegeneration@002:predict"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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagegeneration@002:predict" | Select-Object -Expand Content다음과 비슷한 JSON 응답이 표시됩니다.
{ "predictions": [ { "mimeType": "image/png", "bytesBase64Encoded": "iVBOR..[base64-encoded-upscaled-image]...YII=" } ] }
다음 단계
Imagen 및 Vertex AI의 기타 생성형 AI 제품 관련 문서 읽기:
- Vertex AI에서 Imagen 3 시작을 위한 개발자 가이드
- 크리에이터를 위해 제작된 새로운 생성형 미디어 모델 및 도구
- Gemini의 새로운 기능: Imagen 3의 커스텀 젬 및 향상된 이미지 생성
- Google DeepMind: Imagen 3 - 최고 품질의 텍스트 이미지 변환 모델
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2025-05-08(UTC)