Incrustar descripciones de productos
Te han proporcionado una lista de diccionarios llamada products
, que contiene información sobre distintos productos vendidos por un minorista online. Tu trabajo consiste en incrustar el 'short_description'
de cada producto para permitir la búsqueda semántica en el sitio web del minorista.
Aquí tienes un avance de la lista de diccionarios products
:
products = [
{
"title": "Smartphone X1",
"short_description": "The latest flagship smartphone with AI-powered features and 5G connectivity.",
"price": 799.99,
"category": "Electronics",
"features": [
"6.5-inch AMOLED display",
"Quad-camera system with 48MP main sensor",
"Face recognition and fingerprint sensor",
"Fast wireless charging"
]
},
...
]
Ya se ha creado un cliente OpenAI asignado a client
.
Este ejercicio forma parte del curso
Introducción a las incrustaciones con la OpenAI API
Instrucciones de ejercicio
- Crea una lista llamada
product_descriptions
que contenga los'short_description'
de cada producto deproducts
utilizando una comprensión de lista. - Crea incrustaciones para cada producto
'short_description'
utilizando la dosificación, pasando la entrada al modelotext-embedding-3-small
. - Extrae las incrustaciones de cada producto de
response_dict
y guárdalas enproducts
bajo una nueva clave llamada'embedding'
.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# Extract a list of product short descriptions from products
product_descriptions = [____ for product in ____]
# Create embeddings for each product description
response = ____
response_dict = response.model_dump()
# Extract the embeddings from response_dict and store in products
for i, product in ____:
product['embedding'] = response_dict[____][____][____]
print(products[0].items())