Osadzanie opisów produktów
Otrzymujesz listę słowników o nazwie products, która zawiera informacje o różnych produktach sprzedawanych przez sklep internetowy. Twoim zadaniem jest osadzenie pola 'short_description' każdego produktu, aby umożliwić wyszukiwanie semantyczne na stronie sklepu.
Oto podgląd listy słowników 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"
]
},
...
]
Klient OpenAI został już utworzony i przypisany do zmiennej client.
To ćwiczenie jest częścią kursu
Wprowadzenie do osadzeń z OpenAI API
Instrukcje do ćwiczenia
- Utwórz listę o nazwie
product_descriptions, zawierającą pole'short_description'każdego produktu z listyproducts– użyj do tego wyrażenia listowego. - Utwórz osadzenia (embeddings) dla każdego pola
'short_description'produktu, korzystając z przetwarzania wsadowego (batchingu) – przekaż dane wejściowe do modelutext-embedding-3-small. - Wyodrębnij osadzenia każdego produktu z
response_dicti zapisz je wproductspod nowym kluczem'embedding'.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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())