Adăugarea istoricului utilizatorului în motorul de recomandare
În multe scenarii de recomandare – cum ar fi recomandările de filme sau de produse – bazarea pe un singur punct de date nu este suficientă. În astfel de cazuri, trebuie să încorporezi tot istoricul utilizatorului sau o parte din el, pentru recomandări mai precise și mai relevante.
În acest exercițiu, vei extinde sistemul de recomandare a produselor pentru a lua în considerare toate produsele pe care utilizatorul le-a vizitat anterior, stocate într-o listă de dicționare numită user_history.
Ai la dispoziție următoarele funcții personalizate: create_embeddings(texts), create_product_text(product) și find_n_closest(query_vector, embeddings, n=3). Biblioteca numpy a fost importată ca np.
Acest exercițiu face parte din cursul
Introducere în Embeddings cu API-ul OpenAI
Instrucțiuni pentru exercițiu
- Combină caracteristicile text pentru fiecare produs din
user_history, încorporează șirurile rezultate și calculează media încorporărilor folosindnumpy. - Filtrează
productspentru a elimina produsele care se află deja înuser_history. - Combină caracteristicile pentru fiecare produs din
products_filteredși încorporează șirurile rezultate.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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'])