La API de recontextualización de productos de Imagen en Vertex AI te permite editar imágenes de productos para colocarlos en diferentes escenas o fondos. Proporcionas una imagen de un producto y una petición, y Imagen product recontext genera imágenes de tu producto en escenas nuevas o con fondos diferentes.
Para solicitar acceso a la función de recontextualización de productos de Imagen, rellena el formulario de solicitud de acceso a medios generativos para marketing de Vertex AI.
Versiones de modelo admitidas
Imagen product recontext admite los siguientes modelos:
imagen-product-recontext-preview-06-30
Para obtener más información sobre las funciones que admite el modelo, consulta Modelos de imagen.
Solicitud 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
}
}
}'
Instancias
Instancias | |
---|---|
prompt |
Opcional. Una petición de texto para guiar la generación de la escena. |
productImages |
Una lista de hasta tres
|
Objeto productImages
El objeto productImages
describe los recursos de imagen que se van a colocar en diferentes escenas o fondos.
productImages |
|
---|---|
Campo de unión
Imagen del producto de |
|
bytesBase64Encoded |
Una cadena codificada en base64 de bytes de una imagen o un archivo de vídeo. |
gcsUri |
URI de cadena de una ubicación de un segmento de Cloud Storage. |
Parámetros
Parámetros | |
---|---|
addWatermark |
Opcional. Añade una marca de agua invisible a las imágenes generadas.
El valor predeterminado es |
enhancePrompt |
Opcional. Parámetro opcional para usar una función de reescritura de peticiones basada en LLMs para ofrecer imágenes de mayor calidad que reflejen mejor la intención de la petición original. Si inhabilitas esta función, puede que la calidad de las imágenes y la adecuación de las peticiones se vean afectadas.
El valor predeterminado es |
personGeneration |
Opcional. Permitir que el modelo genere personas. Se admiten los siguientes valores:
El valor predeterminado es |
safetySetting |
Opcional. Añade un nivel de filtro al filtro de seguridad. Se admiten los siguientes valores:
El valor predeterminado es |
|
Número de imágenes que se van a generar.
Un valor entero comprendido entre |
seed |
Opcional. Semilla aleatoria para la generación de imágenes. Esta opción no está disponible cuando
Si |
storageUri |
Opcional. URI de cadena de una ubicación de un segmento de Cloud Storage que se usa para almacenar las imágenes generadas. Si no se proporciona un segmento de Cloud Storage, se devuelven bytes de imagen codificados en Base64 en la respuesta. |
outputOptions |
Opcional. Describe el formato de la imagen de salida en un |
Objeto de opciones de salida
El objeto outputOptions
describe la salida de la imagen.
Parámetros | |
---|---|
outputOptions.mimeType |
Opcional: El formato de salida de la imagen. Se admiten los siguientes valores:
El valor predeterminado es |
outputOptions.compressionQuality |
Opcional:
El nivel de compresión si el tipo de salida es |
Solicitud de ejemplo
REST
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
-
REGION
: la región en la que se encuentra tu proyecto. Para obtener más información sobre las regiones admitidas, consulta Ubicaciones de la IA generativa en Vertex AI. -
PROJECT_ID
: tu ID de proyecto. Google Cloud -
TEXT_PROMPT
: opcional. Una petición de texto para guiar las imágenes que genera el modelo. -
BASE64_SUBJECT_IMAGE
: una imagen codificada en Base64 de la imagen del sujeto. -
PERSON_SETTING
: Opcional: valor de cadena que controla el tipo de persona o cara que puede generar el modelo. Puedes usar los siguientes valores parapersonGeneration
:-
"allow_adult"
: permite generar contenido solo para adultos, excepto en el caso de los famosos. No se permite generar imágenes de famosos en ningún ajuste. Esta es la configuración predeterminada. -
"allow_all"
: permite generar imágenes de personas de todas las edades, excepto de famosos. No se permite generar imágenes de famosos en ningún ajuste. -
"dont_allow"
: no permite generar personas ni caras en los resultados generados.
-
-
SAFETY_SETTING
: Opcional: valor de cadena que controla el umbral del filtro de seguridad de las imágenes generadas. Puedes usar los siguientes valores para seleccionar el ajuste de seguridad:-
"block_low_and_above"
: el umbral de seguridad más estricto."block_low_and_above"
filtra el mayor número de imágenes generadas. -
"block_medium_and_above"
: umbral de seguridad medio, que equilibra el filtrado de contenido potencialmente dañino y seguro."block_medium_and_above"
es la configuración de seguridad predeterminada. -
"block_only_high"
: el umbral de seguridad más bajo, que reduce el número de solicitudes bloqueadas debido al filtro de seguridad. Usar el umbral de seguridad"block_only_high"
puede aumentar el número de imágenes inadecuadas que genera el modelo.
-
-
WATERMARK_SETTING
: Opcional: un valor booleano. Si se asigna el valortrue
, el modelo añade una marca de agua digital que puedes usar para verificar la imagen generada. El valor predeterminado estrue
. -
IMAGE_COUNT
: número de imágenes que se van a generar. El intervalo de valores aceptado es1
-4
. -
PROMPT_SETTING
: Opcional: un valor booleano. Si se asigna el valortrue
, el modelo usa prmopts mejorados. El valor predeterminado estrue
.
Método HTTP y URL:
POST https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-product-recontext-preview-06-30:predict
Cuerpo JSON de la solicitud:
{ "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 } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
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
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$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" } ] }