Image API adalah bagian dari sub-API Product Studio. API ini memanfaatkan alat AI generatif Google Product Studio (GPS) untuk membuat dan mengoptimalkan gambar produk. Anda dapat menggunakannya untuk meningkatkan engagement dan konversi pelanggan.
Apa yang dapat Anda buat menggunakan API?
- Gambar produk dengan latar belakang buatan AI berdasarkan informasi produk yang diberikan dan perintah teks
- Gambar produk dengan latar belakang gambar asli yang dihapus
- Gambar produk yang resolusi gambar aslinya ditingkatkan
Membuat latar belakang gambar
Metode
GenerateProductImageBackground
dapat membuat gambar produk dengan latar belakang yang dibuat AI menggunakan gambar produk asli dan perintah teks yang menjelaskan latar belakang.
API menerima:
- Gambar produk: Dapat berupa salah satu dari berikut:
- URI yang mengarah ke gambar produk (seperti,
{"image_uri": "https://my-store.com/img/1.png"}
) - Byte gambar mentah, seperti
{"image_bytes": b'\xff\xd8\xff\xe0\x00\x10JFIF\x00\x01'}
- URI yang mengarah ke gambar produk (seperti,
- Prompt: String yang menentukan latar belakang yang akan dibuat:
product_description
: Deskripsi produk.background_description
: Deskripsi latar belakang yang diinginkan.
Menghapus latar belakang gambar
Metode
RemoveProductImageBackground
dapat membuat gambar dengan latar belakang yang dihapus dari gambar produk
asli Anda.
API menerima:
- Gambar produk: Dapat berupa salah satu dari berikut:
- URI yang mengarah ke gambar produk, seperti
{"image_uri": "https://my-store.com/img/1.png"}
- Byte gambar mentah, seperti
{"image_bytes": b'\xff\xd8\xff\xe0\x00\x10JFIF\x00\x01'}
- URI yang mengarah ke gambar produk, seperti
- Warna latar belakang: Warna latar belakang setelah penghapusan, diberikan dalam format RGB. Jika tidak ada warna yang ditentukan, latar belakang akan berupa gambar transparan 4 saluran RGBA.
Meningkatkan skala gambar
Metode
UpscaleProductImage
dapat membuat gambar dengan resolusi gambar produk asli Anda yang lebih tinggi.
API menerima Gambar Produk. Dapat berupa salah satu dari berikut ini:
- URI yang mengarah ke gambar produk, seperti
{"image_uri": "https://my-store.com/img/1.png"}
- Byte gambar mentah, seperti
{"image_bytes": "image_bytes"}
Menggunakan library klien
Sebaiknya gunakan library klien untuk mengirimkan permintaan Anda. Jika library klien yang didukung tidak tersedia untuk bahasa Anda, kami dapat menyediakan file library secara langsung untuk Anda (melalui email atau folder drive bersama) untuk diinstal, misalnya, dalam project Maven Anda.
Contoh
Contoh berikut menggunakan API untuk membuat atau mengoptimalkan gambar produk.
Membuat latar belakang untuk gambar produk
Contoh ini menunjukkan cara membuat gambar produk dengan latar belakang yang Anda pilih.
Permintaan
Isi permintaan berisi gambar (URI atau byte) dan perintah untuk pembuatan latar belakang. Berikut adalah contoh struktur permintaan menggunakan URI gambar:
POST https://merchantapi.googleapis.com/productstudio/v1alpha/accounts/{ACCOUNT_ID}/generatedImages:generateProductImageBackground
{
"input_image": {
"image_uri": "https://services.google.com/fh/files/misc/abundance_intention_bath_salts.jpg"
},
"config": {
"product_description": "a jar",
"background_description": "sitting on a cracked stone surface surrounded by a cherry blossom tree and pink and white flowers in the background, high resolution, product photography, strong shadows and lights, creative"
}
}
Atau, Anda dapat menggunakan byte gambar mentah:
POST https://merchantapi.googleapis.com/productstudio/v1alpha/accounts/{ACCOUNT_ID}/generatedImages:generateProductImageBackground
{
"input_image": {
"image_bytes": "b'\xff\xd8\xff\xe0\x00\x10JFIF\x00\x01\x01\x00\x00\x01\x00\x01\x00\x00\xff'"
},
"config": {
"product_description": "a jar",
"background_description": "sitting on a cracked stone surface surrounded by a cherry blossom tree and pink and white flowers in the background, high resolution, product photography, strong shadows and lights, creative"
}
}
Respons
Anda akan mendapatkan respons seperti:
{
"generated_image": {
"image_bytes": "b'\x7d\x1b\x8f\x04\x5c\x9e\x23\xf0\x6a\xd1\x4b\x87\x0c\x3e\xa9\x21\xb5'",
"generation_time": "2025-05-13T00:06:54.754828Z"
},
}
Atau, jika return_image_uri
disetel ke true
di output_config,
, tampilannya akan seperti
ini:
{
"generated_image": {
"uri": "https://lh3.googleusercontent.com/gps-generations/AI9LgEvIFfK0YaLKvwvIBc9ItJtJGFE6hi25o6-N3Fz6YTw57pFghfIVlCGve7eyJcQkhoAqGAf8NDzW70qjwGOCuHhiouqF2nqxBwCcfDxZPkYRl3h7CIjyev9asJw7x-0g0V_xvurfowZJ0moXu98kmV01A3Thv2ZRlTAiOPYuEb8wnY7EeyD9l48lDdwJgZ4jqxtTgrRbwvpno4NICj9q830RzATiBHuJ_WUFQJiHOMAqbGyrQIWQTQ",
"generation_time": "2025-05-13T00:06:54.754828Z"
}
}
Contoh kode
Berikut contoh kode yang menunjukkan cara membuat latar belakang gambar produk:
Java
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.productstudio.v1alpha.GenerateImageBackgroundConfig;
import com.google.shopping.merchant.productstudio.v1alpha.GenerateProductImageBackgroundRequest;
import com.google.shopping.merchant.productstudio.v1alpha.GenerateProductImageBackgroundResponse;
import com.google.shopping.merchant.productstudio.v1alpha.ImageServiceClient;
import com.google.shopping.merchant.productstudio.v1alpha.ImageServiceSettings;
import com.google.shopping.merchant.productstudio.v1alpha.InputImage;
import com.google.shopping.merchant.productstudio.v1alpha.OutputImageConfig;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;
/** This class demonstrates how to create product images with generated backgrounds. */
public class GenerateProductImageBackgroundSample {
private static String getName(String accountId) {
return String.format("accounts/%s", accountId);
}
public static void generateProductImageBackground(Config config, String imageUri)
throws Exception {
// Obtains OAuth token based on the user's configuration.
GoogleCredentials credential = new Authenticator().authenticate();
ImageServiceSettings imageServiceSettings =
ImageServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(credential))
.build();
String name = getName(config.getAccountId().toString());
// Calls the API and catches and prints any network failures/errors.
try (ImageServiceClient imageServiceClient = ImageServiceClient.create(imageServiceSettings)) {
OutputImageConfig outputImageConfig =
// Set this field to false to return the image bytes in the response instead.
OutputImageConfig.newBuilder().setReturnImageUri(true).build();
InputImage inputImage =
InputImage.newBuilder()
// You can also use image bytes here instead of a URI.
.setImageUri(imageUri)
.build();
GenerateImageBackgroundConfig generateImageBackgroundConfig =
GenerateImageBackgroundConfig.newBuilder()
.setProductDescription("a jar")
.setBackgroundDescription(
"sitting on a cracked stone surface surrounded by a cherry blossom tree and pink"
+ " and white flowers in the background, high resolution, product"
+ " photography, strong shadows and lights, creative")
.build();
GenerateProductImageBackgroundRequest request =
GenerateProductImageBackgroundRequest.newBuilder()
.setName(name)
.setOutputConfig(outputImageConfig)
.setInputImage(inputImage)
.setConfig(generateImageBackgroundConfig)
.build();
System.out.println("Sending GenerateProductImageBackground request: " + name);
GenerateProductImageBackgroundResponse response =
imageServiceClient.generateProductImageBackground(request);
System.out.println("Generated product image background response below:");
System.out.println(response);
} catch (Exception e) {
System.out.println("An error has occurred: ");
System.out.println(e);
}
}
public static void main(String[] args) throws Exception {
Config config = Config.load();
// Replace with your image URI.
String imageUri =
"https://services.google.com/fh/files/misc/abundance_intention_bath_salts.jpg";
generateProductImageBackground(config, imageUri);
}
}
Python
from examples.authentication import configuration
from examples.authentication import generate_user_credentials
from google.shopping.merchant_productstudio_v1alpha import GenerateImageBackgroundConfig
from google.shopping.merchant_productstudio_v1alpha import GenerateProductImageBackgroundRequest
from google.shopping.merchant_productstudio_v1alpha import ImageServiceClient
from google.shopping.merchant_productstudio_v1alpha import InputImage
from google.shopping.merchant_productstudio_v1alpha import OutputImageConfig
# Gets the merchant account ID from the user's configuration.
_ACCOUNT = configuration.Configuration().read_merchant_info()
# The name of the account to which the request is sent.
# Format: accounts/{account}
_NAME = f"accounts/{_ACCOUNT}"
def generate_product_image_background(image_uri: str) -> None:
"""Generates a product image with a custom background.
Args:
image_uri: The URI of the input image.
"""
# Gets OAuth Credentials.
credentials = generate_user_credentials.main()
# Creates a client.
client = ImageServiceClient(credentials=credentials)
# Creates the output config.
# Set `return_image_uri` to False to return the image bytes in the response.
output_config = OutputImageConfig(return_image_uri=True)
# Creates the input image.
# You can also use image bytes here instead of a URI.
input_image = InputImage(image_uri=image_uri)
# Creates the generate image background config.
generate_image_background_config = GenerateImageBackgroundConfig(
product_description="a jar",
background_description=(
"sitting on a cracked stone surface surrounded by a cherry blossom"
" tree and pink and white flowers in the background, high"
" resolution, product photography, strong shadows and lights,"
" creative"
),
)
# Creates the request.
request = GenerateProductImageBackgroundRequest(
name=_NAME,
output_config=output_config,
input_image=input_image,
config=generate_image_background_config,
)
# Makes the request and catches and prints any error messages.
try:
print(f"Sending GenerateProductImageBackground request: {_NAME}")
response = client.generate_product_image_background(request=request)
print("Generated product image background response below:")
print(response)
except RuntimeError as e:
print("Request failed.")
print(e)
if __name__ == "__main__":
# The URI of the image to use as the base for the generation.
# Replace with your image URI.
_IMAGE_URI = (
"https://services.google.com/fh/files/misc/abundance_intention_bath_salts.jpg"
)
generate_product_image_background(_IMAGE_URI)
Menghapus latar belakang dari gambar produk
Contoh ini menunjukkan cara menghapus latar belakang dari gambar produk.
Permintaan
Isi permintaan berisi gambar (URI atau byte) dan, secara opsional, warna untuk mengganti latar belakang.
Catatan:
- Tentukan nilai warna dalam format RGB dalam rentang [0-255].
- Jika Anda tidak menentukan warna latar belakang, warna tersebut akan menjadi gambar transparan 4 saluran RGBA.
Berikut adalah contoh struktur permintaan menggunakan URI gambar dan menyetel latar belakang menjadi hijau (0, 255, 0):
POST https://merchantapi.googleapis.com/productstudio/v1alpha/accounts/{ACCOUNT_ID}/generatedImages:removeProductImageBackground
{
"input_image": {
"image_uri": "https://services.google.com/fh/files/misc/abundance_intention_bath_salts.jpg"
},
"config": {
"background_color": {
"red": 0,
"green": 255,
"blue": 0
}
}
}
Atau, Anda dapat melakukan fungsi yang sama menggunakan byte gambar mentah:
POST https://merchantapi.googleapis.com/productstudio/v1alpha/accounts/{ACCOUNT_ID}/generatedImages:removeProductImageBackground
{
"input_image": {
"image_bytes": "b'\xff\xd8\xff\xe0\x00\x10JFIF\x00\x01\x01\x00\x00\x01\x00\x01\x00\x00\xff'"
},
"config": {
"background_color": {
"red": 0,
"green": 255,
"blue": 0
}
}
}
Respons
Anda akan mendapatkan respons seperti:
{
"generated_image": {
"image_bytes": "b'\x7d\x1b\x8f\x04\x5c\x9e\x23\xf0\x6a\xd1\x4b\x87\x0c\x3e\xa9\x21\xb5'",
"generation_time": "2025-05-13T00:06:54.754828Z"
},
}
Atau, jika return_image_uri
ditetapkan ke true
di output_config
, tampilannya akan seperti
ini:
{
"generated_image": {
"uri": "https://lh3.googleusercontent.com/gps-generations/AI9LgEsYi83dcMKVV44i3vHDHzz_PJLuPyJHh9iX7IrsZ0ZIIRIS6SB4ovBmr0L9lZ1VNacZ5duwhcJ8Q8mXMYaIEArf2ieC2OuKEhRzVb-UxlkAUpitEpS5-M3Y3Ch3TGhQTZmBJXlsHLTuf0XcPwNHoNxJlgF0v_mQ6DIlPugZKC_WiYN2DNUkJivfr4WvifhMn5NaMKpDwpH4Acj-bdGNQ77M-8sj4SyEu3sHCF8ZtnMvF5DbGIYOJQ"
}
}
Contoh kode
Berikut adalah contoh kode yang menunjukkan cara menghapus latar belakang gambar produk:
Java
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.productstudio.v1alpha.ImageServiceClient;
import com.google.shopping.merchant.productstudio.v1alpha.ImageServiceSettings;
import com.google.shopping.merchant.productstudio.v1alpha.InputImage;
import com.google.shopping.merchant.productstudio.v1alpha.OutputImageConfig;
import com.google.shopping.merchant.productstudio.v1alpha.RemoveImageBackgroundConfig;
import com.google.shopping.merchant.productstudio.v1alpha.RemoveProductImageBackgroundRequest;
import com.google.shopping.merchant.productstudio.v1alpha.RemoveProductImageBackgroundResponse;
import com.google.shopping.merchant.productstudio.v1alpha.RgbColor;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;
/** This class demonstrates how to create product images with the background removed. */
public class RemoveProductImageBackgroundSample {
private static String getName(String accountId) {
return String.format("accounts/%s", accountId);
}
public static void removeProductImageBackground(Config config, String imageUri) throws Exception {
// Obtains OAuth token based on the user's configuration.
GoogleCredentials credential = new Authenticator().authenticate();
ImageServiceSettings imageServiceSettings =
ImageServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(credential))
.build();
String name = getName(config.getAccountId().toString());
// Calls the API and catches and prints any network failures/errors.
try (ImageServiceClient imageServiceClient = ImageServiceClient.create(imageServiceSettings)) {
OutputImageConfig outputImageConfig =
// Set this field to false to return the image bytes in the response instead.
OutputImageConfig.newBuilder().setReturnImageUri(true).build();
InputImage inputImage =
InputImage.newBuilder()
// You can also use image bytes here instead of a URI.
.setImageUri(imageUri)
.build();
RemoveImageBackgroundConfig removeImageBackgroundConfig =
RemoveImageBackgroundConfig.newBuilder()
// Setting the background color to green. Don't set this field if you want the image
// to have a RGBA 4-channel transparent image as the background.
.setBackgroundColor(RgbColor.newBuilder().setRed(0).setGreen(255).setBlue(0))
.build();
RemoveProductImageBackgroundRequest request =
RemoveProductImageBackgroundRequest.newBuilder()
.setName(name)
.setOutputConfig(outputImageConfig)
.setInputImage(inputImage)
.setConfig(removeImageBackgroundConfig)
.build();
System.out.println("Sending RemoveProductImageBackground request: " + name);
RemoveProductImageBackgroundResponse response =
imageServiceClient.removeProductImageBackground(request);
System.out.println("Removed product image background response below:");
System.out.println(response);
} catch (Exception e) {
System.out.println("An error has occurred: ");
System.out.println(e);
}
}
public static void main(String[] args) throws Exception {
Config config = Config.load();
// Replace with your image URI.
String imageUri =
"https://services.google.com/fh/files/misc/abundance_intention_bath_salts.jpg";
removeProductImageBackground(config, imageUri);
}
}
Python
from examples.authentication import configuration
from examples.authentication import generate_user_credentials
from google.shopping.merchant_productstudio_v1alpha import ImageServiceClient
from google.shopping.merchant_productstudio_v1alpha import InputImage
from google.shopping.merchant_productstudio_v1alpha import OutputImageConfig
from google.shopping.merchant_productstudio_v1alpha import RemoveImageBackgroundConfig
from google.shopping.merchant_productstudio_v1alpha import RemoveProductImageBackgroundRequest
from google.shopping.merchant_productstudio_v1alpha import RgbColor
# Gets the merchant account ID from the user's configuration.
_ACCOUNT = configuration.Configuration().read_merchant_info()
# The name of the account to which the request is sent.
# Format: accounts/{account}
_NAME = f"accounts/{_ACCOUNT}"
def remove_product_image_background(image_uri: str) -> None:
"""Removes the background from a product image.
Args:
image_uri: The URI of the input image.
"""
# Gets OAuth Credentials.
credentials = generate_user_credentials.main()
# Creates a client.
client = ImageServiceClient(credentials=credentials)
# Creates the output config.
# Set `return_image_uri` to False to return the image bytes in the response.
output_config = OutputImageConfig(return_image_uri=True)
# Creates the input image.
# You can also use image bytes here instead of a URI.
input_image = InputImage(image_uri=image_uri)
# Creates the remove image background config.
# Setting the background color to green. Don't set this field if you want the
# image to have a RGBA 4-channel transparent image as the background.
remove_image_background_config = RemoveImageBackgroundConfig(
background_color=RgbColor(red=0, green=255, blue=0)
)
# Creates the request.
request = RemoveProductImageBackgroundRequest(
name=_NAME,
output_config=output_config,
input_image=input_image,
config=remove_image_background_config,
)
# Makes the request and catches and prints any error messages.
try:
print(f"Sending RemoveProductImageBackground request: {_NAME}")
response = client.remove_product_image_background(request=request)
print("Removed product image background response below:")
print(response)
except RuntimeError as e:
print("Request failed.")
print(e)
if __name__ == "__main__":
# The URI of the image to remove the background from.
# Replace with your image URI.
_IMAGE_URI = (
"https://services.google.com/fh/files/misc/abundance_intention_bath_salts.jpg"
)
remove_product_image_background(_IMAGE_URI)
Meningkatkan kualitas gambar produk
Contoh ini menunjukkan cara meningkatkan kualitas dan ukuran gambar produk Anda.
Permintaan
Isi permintaan berisi gambar (URI atau byte). Berikut contoh struktur permintaan menggunakan URI gambar:
POST https://merchantapi.googleapis.com/productstudio/v1alpha/accounts/{ACCOUNT_ID}/generatedImages:upscaleProductImage
{
"input_image": {
"image_uri": "https://services.google.com/fh/files/misc/ring_image_400_600.jpg"
}
}
Atau, Anda dapat memilih untuk menggunakan byte gambar mentah:
POST https://merchantapi.googleapis.com/productstudio/v1alpha/accounts/{ACCOUNT_ID}/generatedImages:upscaleProductImage
{
"input_image": {
"image_bytes": "b'\xff\xd8\xff\xe0\x00\x10JFIF\x00\x01\x01\x00\x00\x01\x00\x01\x00\x00\xff'"
}
}
Respons
Anda akan menerima respons seperti
{
"generated_image": {
"image_bytes": "b'\x7d\x1b\x8f\x04\x5c\x9e\x23\xf0\x6a\xd1\x4b\x87\x0c\x3e\xa9\x21\xb5'",
"generation_time": "2025-05-13T00:06:54.754828Z"
},
}
Atau, jika return_image_uri
disetel ke true
di output_config,
, tampilannya akan seperti
ini:
{
"generated_image": {
"uri": "https://lh3.googleusercontent.com/gps-generations/AI9LgEvIFfK0YaLKvwvIBc9ItJtJGFE6hi25o6-N3Fz6YTw57pFghfIVlCGve7eyJcQkhoAqGAf8NDzW70qjwGOCuHhiouqF2nqxBwCcfDxZPkYRl3h7CIjyev9asJw7x-0g0V_xvurfowZJ0moXu98kmV01A3Thv2ZRlTAiOPYuEb8wnY7EeyD9l48lDdwJgZ4jqxtTgrRbwvpno4NICj9q830RzATiBHuJ_WUFQJiHOMAqbGyrQIWQTQ"
}
}
Contoh kode
Berikut contoh kode yang menunjukkan cara meningkatkan kualitas gambar produk:
Java
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.productstudio.v1alpha.ImageServiceClient;
import com.google.shopping.merchant.productstudio.v1alpha.ImageServiceSettings;
import com.google.shopping.merchant.productstudio.v1alpha.InputImage;
import com.google.shopping.merchant.productstudio.v1alpha.OutputImageConfig;
import com.google.shopping.merchant.productstudio.v1alpha.UpscaleProductImageRequest;
import com.google.shopping.merchant.productstudio.v1alpha.UpscaleProductImageResponse;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;
/** This class demonstrates how to create upscaled product images. */
public class UpscaleProductImageSample {
private static String getName(String accountId) {
return String.format("accounts/%s", accountId);
}
public static void upscaleProductImage(Config config, String imageUri) throws Exception {
// Obtains OAuth token based on the user's configuration.
GoogleCredentials credential = new Authenticator().authenticate();
ImageServiceSettings imageServiceSettings =
ImageServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(credential))
.build();
String name = getName(config.getAccountId().toString());
// Calls the API and catches and prints any network failures/errors.
try (ImageServiceClient imageServiceClient = ImageServiceClient.create(imageServiceSettings)) {
OutputImageConfig outputImageConfig =
// Set this field to false to return the image bytes in the response instead.
OutputImageConfig.newBuilder().setReturnImageUri(true).build();
InputImage inputImage =
InputImage.newBuilder()
// You can also use image bytes here instead of a URI.
.setImageUri(imageUri)
.build();
UpscaleProductImageRequest request =
UpscaleProductImageRequest.newBuilder()
.setName(name)
.setOutputConfig(outputImageConfig)
.setInputImage(inputImage)
.build();
System.out.println("Sending UpscaleProductImage request: " + name);
UpscaleProductImageResponse response = imageServiceClient.upscaleProductImage(request);
System.out.println("Upscaled product image response below:");
System.out.println(response);
} catch (Exception e) {
System.out.println("An error has occurred: ");
System.out.println(e);
}
}
public static void main(String[] args) throws Exception {
Config config = Config.load();
// Replace with your image URI.
String imageUri = "https://services.google.com/fh/files/misc/ring_image_400_600.jpg";
upscaleProductImage(config, imageUri);
}
}
Python
from examples.authentication import configuration
from examples.authentication import generate_user_credentials
from google.shopping.merchant_productstudio_v1alpha import ImageServiceClient
from google.shopping.merchant_productstudio_v1alpha import InputImage
from google.shopping.merchant_productstudio_v1alpha import OutputImageConfig
from google.shopping.merchant_productstudio_v1alpha import UpscaleProductImageRequest
# Gets the merchant account ID from the user's configuration.
_ACCOUNT = configuration.Configuration().read_merchant_info()
# The name of the account to which the request is sent.
# Format: accounts/{account}
_NAME = f"accounts/{_ACCOUNT}"
def upscale_product_image(image_uri: str) -> None:
"""Upscales a product image.
Args:
image_uri: The URI of the input image.
"""
# Gets OAuth Credentials.
credentials = generate_user_credentials.main()
# Creates a client.
client = ImageServiceClient(credentials=credentials)
# Creates the output config.
# Set `return_image_uri` to False to return the image bytes in the response.
output_config = OutputImageConfig(return_image_uri=True)
# Creates the input image.
# You can also use image bytes here instead of a URI.
input_image = InputImage(image_uri=image_uri)
# Creates the request.
request = UpscaleProductImageRequest(
name=_NAME, output_config=output_config, input_image=input_image
)
# Makes the request and catches and prints any error messages.
try:
print(f"Sending UpscaleProductImage request: {_NAME}")
response = client.upscale_product_image(request=request)
print("Upscaled product image response below:")
print(response)
except RuntimeError as e:
print("Request failed.")
print(e)
if __name__ == "__main__":
# The URI of the image to upscale.
# Replace with your image URI.
_IMAGE_URI = "https://services.google.com/fh/files/misc/ring_image_400_600.jpg"
upscale_product_image(_IMAGE_URI)
Error dan masalah umum
Berikut beberapa masalah umum dan solusinya.
"Gambar input wajib diisi"
Jika Anda menerima pesan error berikut, tambahkan input_image
di isi permintaan:
Error message:
"error": {
"code": 400,
"message": "[input_image] Input image is required to generate product image background.",
"status": "INVALID_ARGUMENT",
...
}
"Setidaknya satu kolom gambar wajib diisi"
Jika Anda menerima pesan error berikut, isi hanya salah satu dari
image_uri
atau image_bytes
dengan benar di isi permintaan.
Error message:
"error": {
"code": 400,
"message": "[input_image.image] At least one field of image is required to generate product image background.",
"status": "INVALID_ARGUMENT",
...
}
Misalnya, memposting ini akan menghasilkan error.
POST https://merchantapi.googleapis.com/productstudio/v1alpha/accounts/{ACCOUNT_ID}/generatedImages:generateProductImageBackground
{
"config": {
"product_description": "a jar",
"background_description": "sitting on a cracked stone surface surrounded by a cherry blossom tree and pink and white flowers in the background, high resolution, product photography, strong shadows and lights, creative"
}
}
"Konfigurasi diperlukan untuk membuat latar belakang gambar produk"
Jika Anda mendapatkan error ini, tambahkan config
di isi permintaan dan isi
product_description
dan background_description
:
Error message:
"error": {
"code": 400,
"message": "[config] Config is required to generate product image background.",
"status": "INVALID_ARGUMENT",
...
}
Misalnya, memposting ini akan menghasilkan error.
POST https://merchantapi.googleapis.com/productstudio/v1alpha/accounts/{ACCOUNT_ID}/generatedImages:generateProductImageBackground
{
"input_image": {
"image_uri": "https://services.google.com/fh/files/misc/abundance_intention_bath_salts.jpg"
}
}
"Deskripsi produk diperlukan untuk membuat latar belakang gambar produk"
Jika Anda menerima salah satu dari dua pesan error berikut, pastikan untuk
mengisi product_description
dan background_description
di
config
:
Berikut adalah contoh deskripsi produk yang tidak ada:
Error message:
"error": {
"code": 400,
"message": "[config.product_description] Product description is required to generate product image background.",
"status": "INVALID_ARGUMENT",
...
}
Berikut adalah contoh deskripsi latar belakang yang tidak ada:
Error message:
"error": {
"code": 400,
"message": "[config.background_description] Background description is required to generate product image background.",
"status": "INVALID_ARGUMENT",
...
}
Misalnya, menjalankan permintaan berikut akan menghasilkan error.
POST https://merchantapi.googleapis.com/productstudio/v1alpha/accounts/{ACCOUNT_ID}/generatedImages:generateProductImageBackground
{
"input_image": {
"image_uri": "https://services.google.com/fh/files/misc/abundance_intention_bath_salts.jpg"
},
"config": {
}
}