1. Nauka
  2. /
  3. Kursy
  4. /
  5. Wprowadzenie do osadzeń z OpenAI API

Connected

ćwiczenie

System rekomendacji produktów

W tym ćwiczeniu zbudujesz system rekomendacji dla sklepu internetowego oferującego różnorodne produkty. System poleca użytkownikom trzy podobne produkty, gdy odwiedzą stronę produktu, ale go nie kupią – na podstawie ostatnio przeglądanego produktu.

Dostępna jest lista słowników z produktami oferowanymi w sklepie,

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",
            ...
            "Fast wireless charging"
        ]
    },
    ...
]

oraz słownik z ostatnim produktem odwiedzonym przez użytkownika, przechowywany w zmiennej last_product.

Do dyspozycji masz również następujące funkcje pomocnicze zdefiniowane wcześniej w kursie:

  • create_embeddings(texts) → zwraca listę osadzeń (embeddings) dla każdego tekstu z listy texts.
  • create_product_text(product) → łączy cechy produktu product w jeden ciąg tekstowy do osadzenia.
  • find_n_closest(query_vector, embeddings, n=3) → zwraca n najbliższych odległości i ich indeksów między query_vector a embeddings, na podstawie odległości cosinusowej.

Instrukcje

100 XP
  • Połącz cechy tekstowe produktu last_product oraz każdego produktu z listy products, używając funkcji create_product_text().
  • Utwórz osadzenia dla last_product_text i product_texts za pomocą funkcji create_embeddings(), dbając o to, aby last_product_embeddings był pojedynczą listą.
  • Znajdź trzy najmniejsze odległości cosinusowe i ich indeksy, używając funkcji find_n_closest().