Erste SchritteKostenlos loslegen

Produktempfehlungssystem

In dieser Übung erstellst du ein Empfehlungssystem für einen Online-Händler, der eine Vielzahl von Produkten anbietet. Dieses System empfiehlt Nutzern, die eine Produktseite besuchen, aber nicht kaufen, drei ähnliche Produkte, basierend auf dem letzten Produkt, das sie besucht haben.

Du hast eine Liste mit Wörterbüchern von Produkten erhalten, die auf der Seite verfügbar sind,

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"

        ]

    },

    ...

]

und ein Wörterbuch für das letzte Produkt, das der Nutzer besucht hat, gespeichert in last_product.

Die folgenden benutzerdefinierten Funktionen, die bereits in diesem Kurs definiert wurden, stehen dir ebenfalls zur Verfügung:

  • create_embeddings(texts) → gibt eine Liste von Einbettungen für jeden Text in texts zurück.
  • create_product_text(product) → kombiniert die product Merkmale zu einem einzigen String zum Einbetten.
  • find_n_closest(query_vector, embeddings, n=3) → gibt die n engsten Abstände und ihre Indizes zwischen query_vector und embeddings zurück, basierend auf den Kosinusabständen.

Diese Übung ist Teil des Kurses

Einführung in Embeddings mit der OpenAI API

Kurs anzeigen

Anleitung zur Übung

  • Kombiniere die Textmerkmale in last_product, und für jedes Produkt in products, mit create_product_text().
  • Binde last_product_text und product_texts mit create_embeddings() ein und stelle sicher, dass last_product_embeddings eine einzige Liste ist.
  • Finde die drei kleinsten Kosinusabstände und ihre Indizes mit find_n_closest().

Interaktive Übung zum Anfassen

Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.

# Combine the features for last_product and each product in products
last_product_text = ____
product_texts = ____

# Embed last_product_text and product_texts
last_product_embeddings = ____
product_embeddings = ____

# Find the three smallest cosine distances and their indexes
hits = ____(____, product_embeddings)

for hit in hits:
  product = products[hit['index']]
  print(product['title'])
Bearbeiten und Ausführen von Code