Guía de soluciones

Puedes usar nuestra API para generar títulos y descripciones de productos con la información de productos que tengas disponible. La API acepta lo siguiente:

  • Es un diccionario JSON opcional que contiene los atributos de tu producto, p. ej., {"brand": "MyBrand", "title": "White Tee", "size": "XL"}.
  • Es una imagen del producto opcional, p. ej., {"uri": "https://my-store.com/img/1.png"}.
  • Opciones de formato del título, p. ej., attribute_separator, target_language, attribute_order.
  • Ejemplos de etiquetado de datos (ver a continuación)

Primero, configura los requisitos previos.

import requests
API_KEY=""
API_ENDPOINT=""

Acelera la creación de productos obteniendo sugerencias de títulos a partir de una sola imagen.

my_product_image = 'https://cdn.shopify.com/s/files/1/0653/5879/0892/products/1672082339438_550x825.jpg?v=1672082415'

payload = {}
payload |= {'output_spec': {'workflow_id': 'title', 'attribute_separator': '-'}}
payload |= {'product_info':{}}
payload['product_info'] |= {'product_image':{'uri': my_product_image}}

response = requests.post(API_ENDPOINT, params={'key': API_KEY}, json=payload)
suggested_title = response.json()['title']['text']
print(suggested_title)
Rustic Ceramic & Leather Leaves Necklace

Acelera la creación de productos obteniendo títulos sugeridos a partir de una descripción.

Si el flujo de creación de productos le solicita al usuario una imagen y una breve descripción, puedes usar el siguiente patrón para sugerirle un título del producto.

my_product_description = 'selling size 12 nike dunks. oh they are red by the way!'

payload = {}
payload |= {'output_spec': {'workflow_id': 'title'}}
payload |= {'product_info':{'product_attributes': {'description': my_product_description}}}

response = requests.post(API_ENDPOINT, params={'key': API_KEY}, json=payload)
print(response.json()['title']['text'])
Nike Dunks Red Size 12

Acelera la creación de productos obteniendo sugerencias de títulos a partir de un título y una descripción.

En este ejemplo, etiquetamos de forma explícita los atributos del producto que queremos que identifique la IA.

title = 'Volumizing & Lengthening Mascara - Dark Brown'
description = "This high-impact mascara delivers both voluptuous volume and dramatic length without clumping or smudging."

payload = {}
payload |= {'output_spec': {'workflow_id': 'title'}}
payload |= {'product_info':{'product_attributes': {'title': title, 'description': description, 'brand': 'Luxe Beauty'}}}
payload |= {
  "title_examples": [
    {
      "product_info": {
        "title": "Lash Paradise Volumizing & Lengthening Mascara - Waterproof - Blackest Black",
        "colour": "Black"
      },
      "title_format": "product",
      "category": "mascara",
      "final_product_info": {
        "product": "Mascara",
        "brand": "Lash Paradise",
        "mascara_type": "Volumizing & Lengthening",
        "colour": "Blackest Black",
        "waterproof": "Waterproof",
      }
    },
    {
      "product_info": {
        "title": "Hypnose Drama Instant Full Body Volume Mascara - Black",
        "colour": "Black"
      },
      "title_format": "product",
      "category": "mascara",
      "final_product_info": {
        "product": "Mascara",
        "brand": "Hypnose",
        "sub_brand": "Drama",
        "mascara_type": "Full Body Volume",
        "colour": "Black",
        "eye_lash_type": "All lash types"
      }
    }
  ]
}

response = requests.post(API_ENDPOINT, params={'key': API_KEY}, json=payload)
print(response.json())
{
  "title": {
    "text": "Luxe Beauty Dark Brown Volumizing & Lengthening Mascara"
  },
  "metadata": {
    "metadata": {
      "attributes": {
        "brand": "Luxe Beauty",
        "colour": "Dark Brown",
        "mascara_type": "Volumizing & Lengthening",
        "product": "Mascara"
      },
    }
  }
}

Acelera la creación de productos obteniendo descripciones sugeridas a partir de un título.

Si el flujo de creación de productos le solicita al usuario una imagen y un título, puedes usar el siguiente patrón para sugerirle una descripción del producto.

my_product_title = 'Rustic Ceramic & Leather Leaves Necklace'

payload = {}
payload |= {'output_spec': {'workflow_id': 'description'}}
payload |= {'product_info':{'product_attributes': {'title': my_product_title}}}

response = requests.post(API_ENDPOINT, params={'key': API_KEY}, json=payload)
print(response.json()['description']['text'])
Rustic Ceramic & Leather Leaves Necklace is a beautiful necklace made from high-quality ceramic and leather. It features a unique design that is sure to turn heads.

Acelera la creación de productos obteniendo un título y una descripción a partir de una marca y un color.

Observa cómo, en este ejemplo, establecemos workflow_id en "tide" para obtener el título y la descripción.

payload = {}
payload |= {'output_spec': {'workflow_id': 'tide'}}
payload |= {'product_info':{'product_attributes': {'brand': 'Mr. Beast', 'color': 'purple'}}}
payload['product_info'] |= {'product_image':{'uri':'https://mrbeast.store/cdn/shop/files/0015dlv_0000_327.jpg?v=1702754475&width=500'}}

response = requests.post(API_ENDPOINT, params={'key': API_KEY}, json=payload)
print(response.text)
{
  "title": {
    "text": "Pajamas - Mr. Beast | Purple"
  },
  "description": {
    "text": "Slip into the ultimate comfort and style with these Mr. Beast pajamas in a vibrant shade of purple. Crafted from the softest materials, these pajamas will envelop you in a cozy embrace, ensuring a restful night's sleep. The shorts feature a relaxed fit, allowing for easy movement, while the top boasts a classic design with a comfortable neckline. Whether you're lounging at home or drifting off to dreamland, these Mr. Beast pajamas are the perfect choice for a peaceful and stylish slumber."
  },
}

Compatibilidad con idiomas de destino

Este campo especifica el idioma del texto de la descripción que se genera en la respuesta de la API. Se agrega como parte de los parámetros de output_spec.

{"output_spec": {"target_language": "language"}}

Valores de ejemplo:

"korean" (Korean)
"english" (English)
"spanish" (Spanish)
"french" (French)
"pirate" (Pirate)

Ejemplo de JSON para la carga útil

title = "Granos de café negro"
description = "Los granos de café negro en California"

payload = {}
payload |= {"output_spec":
  {
    "workflow_id": "description",
    "target_language":"japanese", # specify language here
    "attribute_order": ["scent", "product"],
    "tone":"playful"}
}
payload |= {"product_info":{"product_attributes": {"description": description, "brand": "Parfums de Paris", "scent": "Floral"}}}

Resultado de ejemplo:

{
  "description": {
    "text": "カリフォルニアの黒いコーヒー豆は、あなたの鼻をくすぐる、甘く、フローラルな香りです。この香りは、コーヒー豆の豊かな香りと、ジャスミンとバラの繊細な花の香りをブレンドしたものです。カリフォルニアの黒いコーヒー豆は、あなたの家を居心地の良いカフェに変え、あなたをリラックスした気分にさせてくれるでしょう。この香りは、コーヒー好きにも、フローラルな香り好きにも最適です。カリフォルニアの黒いコーヒー豆で、あなたの家を幸せな香りで満たしましょう!"
  }
}

Si ingresas un código de idioma incorrecto, es posible que se produzca un error.

Si no se admite el idioma o el valor, el texto de la descripción se establecerá de forma predeterminada en inglés.

Personalización del tono de voz para la generación de descripciones

Para ayudarte a establecer tu marca y diferenciar tu tienda en línea de otras, puedes personalizar el tono de voz de las descripciones generadas. La API de Text ofrece dos opciones:

Puedes seleccionar entre una lista de tonos para generar descripciones nuevas. La lista incluye los siguientes estilos de tono:

  • Predeterminada
  • Juguetón
  • Formal
  • Persuasivo
  • Conversacional

Puedes proporcionar descripciones existentes o cualquier otro recurso de texto con el tono de voz de tu marca. El LLM analizará el tono del texto y generará un "descriptor de estilo de escritura" según estos aspectos:

  • Nivel de formalidad (p.ej., formal, informal)
  • Verbosidad (p.ej., concisa, muy verbosa)
  • Tono (p.ej., profesional, informativo, positivo, persuasivo)
  • Estructura de las oraciones (p.ej., "Oración simple con pocas conjunciones")
  • Palabras y frases más frecuentes