Vertex AI API의 Imagen 제품 재컨텍스트를 사용하면 제품 이미지를 다양한 장면이나 배경으로 수정할 수 있습니다. 제품 이미지와 프롬프트를 제공하면 Imagen 제품 재맥락화 기능이 새로운 장면이나 다른 배경으로 제품 이미지를 생성합니다.
Imagen 제품 재맥락화에 대한 액세스를 요청하려면 Vertex AI - 마케팅용 생성형 미디어 액세스 요청 양식을 작성하세요.
지원되는 모델 버전
Imagen 제품 재컨텍스트는 다음 모델을 지원합니다.
imagen-product-recontext-preview-06-30
모델에서 지원하는 기능에 대한 자세한 내용은 Imagen 모델을 참고하세요.
HTTP 요청
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:predict \
-d '{
"instances": [
{
"prompt": string,
"productImages": [
// The following fields can be repeated up to 3 times for different
// views of the same product.
{
"image": {
// Union field can be only one of the following:
"bytesBase64Encoded": string,
"gcsUri": string,
// End of list of possible types for union field.
},
}
]
}
],
"parameters": {
"addWatermark": boolean,
"enhancePrompt": boolean
"personGeneration": string,
"safetySetting": string,
"sampleCount": integer,
"seed": integer,
"storageUri": string,
"outputOptions": {
"mimeType": string,
"compressionQuality": integer
}
}
}'
인스턴스
인스턴스 | |
---|---|
prompt |
선택사항입니다. 장면 생성을 안내하는 텍스트 프롬프트입니다. |
productImages |
동일한 제품의 다양한 뷰를 나타내는 최대 3개의 서로 다른
|
productImages
객체
productImages
객체는 다양한 장면이나 배경에 배치할 이미지 애셋을 설명합니다.
productImages |
|
---|---|
통합 필드
|
|
bytesBase64Encoded |
이미지 또는 동영상 파일의 바이트 base64 인코딩 문자열입니다. |
gcsUri |
Cloud Storage 버킷 위치의 문자열 URI입니다. |
매개변수
매개변수 | |
---|---|
addWatermark |
선택사항입니다. 보이지 않는 워터마크를 생성된 이미지에 추가합니다.
기본값은 |
enhancePrompt |
선택사항입니다. LLM 기반 프롬프트 수정 기능을 사용하여 원래 프롬프트의 의도를 더 잘 반영하는 고품질 이미지를 제공하는 선택적 파라미터입니다. 이 기능을 사용 중지하면 이미지 품질과 프롬프트 준수가 영향을 받을 수 있습니다.
기본값은 |
personGeneration |
선택사항입니다. 모델에서 사람을 생성합니다. 다음 값이 지원됩니다.
기본값은 |
safetySetting |
선택사항입니다. 필터 수준을 안전 필터링에 추가합니다. 다음 값이 지원됩니다.
기본값은 |
|
생성할 이미지 수입니다.
|
seed |
선택사항입니다. 이미지 생성에 사용되는 무작위 시드입니다.
|
storageUri |
선택사항입니다. 생성된 이미지를 저장하는 데 사용되는 Cloud Storage 버킷 위치의 문자열 URI입니다. Cloud Storage 버킷이 제공되지 않으면 base64로 인코딩된 이미지 바이트가 응답으로 반환됩니다. |
outputOptions |
선택사항입니다. |
출력 옵션 객체
outputOptions
객체는 이미지 출력을 설명합니다.
파라미터 | |
---|---|
outputOptions.mimeType |
선택사항: 이미지 출력 형식입니다. 다음과 같은 값이 지원됩니다.
기본값은 |
outputOptions.compressionQuality |
(선택사항)
출력 유형이 |
샘플 요청
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
-
REGION
: 프로젝트가 있는 리전입니다. 지원되는 리전에 대한 자세한 내용은 Vertex AI의 생성형 AI 위치를 참고하세요. -
PROJECT_ID
: Google Cloud 프로젝트 ID입니다. -
TEXT_PROMPT
: 선택사항. 모델이 생성하는 이미지를 안내하는 텍스트 프롬프트입니다. -
BASE64_SUBJECT_IMAGE
: 주제 이미지의 base64로 인코딩된 이미지입니다. -
PERSON_SETTING
: 선택사항: 모델에서 허용하는 사람 유형이나 얼굴 생성 유형을 제어하는 문자열 값입니다.personGeneration
에 대해 다음 값을 사용할 수 있습니다.-
"allow_adult"
: 유명인 생성을 제외하고 성인만 생성합니다. 어떤 설정에서도 유명인은 생성되지 않습니다. 기본 설정입니다. -
"allow_all"
: 유명인 생성을 제외하고 모든 연령의 사람을 생성합니다. 어떤 설정에서도 유명인은 생성되지 않습니다. -
"dont_allow"
: 생성된 출력에 사람이나 얼굴을 생성할 수 없습니다.
-
-
SAFETY_SETTING
: (선택사항) 생성된 이미지의 안전 필터 기준점을 제어하는 문자열 값입니다. 다음 값을 사용하여 안전 설정을 선택할 수 있습니다.-
"block_low_and_above"
: 가장 엄격한 안전 기준점입니다."block_low_and_above"
는 생성된 이미지를 가장 많이 필터링합니다. -
"block_medium_and_above"
: 잠재적으로 유해하고 안전한 콘텐츠에 대한 필터링의 균형을 맞추는 중간 안전 기준점입니다."block_medium_and_above"
은 기본 안전 설정입니다. -
"block_only_high"
: 가장 낮은 안전 기준점으로, 안전 필터로 인해 차단된 요청 수를 줄입니다."block_only_high"
안전 기준을 사용하면 모델에서 생성하는 불쾌감을 주는 이미지 수가 늘어날 수 있습니다.
-
-
WATERMARK_SETTING
: 선택사항: 불리언입니다. 이 값이true
로 설정되면 모델은 생성된 이미지를 확인하는 데 사용할 수 있는 디지털 워터마크를 추가합니다. 기본값은true
입니다. -
IMAGE_COUNT
: 생성할 이미지 수입니다. 허용되는 값의 범위는1
~4
입니다. -
PROMPT_SETTING
: 선택사항: 불리언입니다. 이 값이true
로 설정되면 모델에서 향상된 prmopts를 사용합니다. 기본값은true
입니다.
HTTP 메서드 및 URL:
POST https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-product-recontext-preview-06-30:predict
JSON 요청 본문:
{ "instances": [ { "prompt": "TEXT_PROMPT", "productImages": [ { "image": { "bytesBase64Encoded": "BASE64_SUBJECT_IMAGE" }, } ] } ], "parameters": { "personGeneration": PERSON_SETTING, "safetySetting": SAFETY_SETTING, "addWatermark": WATERMARK_SETTING, "sampleCount": IMAGE_COUNT, "enhancePrompt": PROMPT_SETTING } }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
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://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-product-recontext-preview-06-30: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://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-product-recontext-preview-06-30:predict" | Select-Object -Expand Content
{ "predictions": [ { "mimeType": "image/png", "bytesBase64Encoded": "BASE64_IMG_BYTES" }, { "bytesBase64Encoded": "BASE64_IMG_BYTES", "mimeType": "image/png" } ] }