Ürün açıklamalarını gömme
Bir çevrimiçi perakendecinin sattığı farklı ürünlere ait bilgileri içeren products adlı sözlüklerden oluşan bir liste sana verildi. Görevin, perakendecinin web sitesinde anlamsal aramayı (semantic search) mümkün kılmak için her ürünün 'short_description' alanını gömmek.
İşte products listesinin bir önizlemesi:
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"
]
},
...
]
Bir OpenAI istemcisi zaten oluşturuldu ve client değişkenine atandı.
Bu egzersiz, kursun bir parçasıdır
OpenAI API ile Embeddings’e Giriş
Egzersiz talimatları
- Bir liste üreteci kullanarak
productsiçindeki her ürünün'short_description'alanını içerenproduct_descriptionsadlı bir liste oluştur. - Girdiyi
text-embedding-3-smallmodeline vererek, toplu işleme (batching) ile her ürünün'short_description'metinleri için gömme oluştur. - Her ürün için gömmeleri
response_dictiçinden çıkar veproductsiçinde'embedding'adlı yeni bir anahtar altında sakla.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# 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())