Öneri motoruna kullanıcı geçmişi ekleme
Film veya satın alma önerisi gibi birçok öneri senaryosunda, bir sonraki öneriyi tek bir veri noktasına dayandırmak yetersiz kalır. Bu durumlarda, daha doğru ve alakalı öneriler için kullanıcının geçmişinin tamamını veya bir kısmını gömmelisin.
Bu egzersizde, kullanıcının daha önce ziyaret ettiği tüm ürünleri dikkate alacak şekilde ürün öneri sistemini genişleteceksin. Bu geçmiş, user_history adlı sözlüklerden oluşan bir listede tutuluyor.
Aşağıdaki özel fonksiyonlar kullanımına hazır: create_embeddings(texts), create_product_text(product) ve find_n_closest(query_vector, embeddings, n=3). Ayrıca numpy kütüphanesi np takma adıyla içe aktarılmış durumda.
Bu egzersiz, kursun bir parçasıdır
OpenAI API ile Embeddings’e Giriş
Egzersiz talimatları
user_historyiçindeki her ürün için metin özelliklerini birleştir, ortaya çıkan metinleri göm ve oluşan gömlemelerin ortalamasınınumpykullanarak hesapla.productslistesinden,user_historyiçinde yer alan ürünleri çıkar.products_filterediçindeki her ürün için özellikleri birleştir ve ortaya çıkan metinleri göm.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Prepare and embed the user_history, and calculate the mean embeddings
history_texts = [____ for article in user_history]
history_embeddings = ____
mean_history_embeddings = ____
# Filter products to remove any in user_history
products_filtered = ____
# Combine product features and embed the resulting texts
product_texts = ____
product_embeddings = ____
hits = find_n_closest(mean_history_embeddings, product_embeddings)
for hit in hits:
product = products_filtered[hit['index']]
print(product['title'])