1. Learn
  2. /
  3. Курси
  4. /
  5. Вступ до Embeddings з OpenAI API

Connected

вправа

Система рекомендацій товарів

У цій вправі ви створите систему рекомендацій для онлайн-магазину, що продає різні товари. Система пропонуватиме три схожі товари користувачам, які відкрили сторінку товару, але не придбали його, — на основі останнього переглянутого товару.

Вам надано список словників із товарами, доступними на сайті,

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

а також словник для останнього товару, який переглянув користувач, збережений у last_product.

Доступні такі користувацькі функції, визначені раніше в курсі:

  • create_embeddings(texts) → повертає список вкладень (embeddings) для кожного тексту в texts.
  • create_product_text(product) → об'єднує ознаки product в один рядок для векторизації.
  • find_n_closest(query_vector, embeddings, n=3) → повертає n найменших косинусних відстаней і їхні індекси між query_vector та embeddings.

Інструкції

100 XP
  • Об'єднайте текстові ознаки в last_product і для кожного товару в products, використовуючи create_product_text().
  • Створіть вкладення для last_product_text та product_texts за допомогою create_embeddings(), переконайтеся, що last_product_embeddings є одним списком.
  • Знайдіть три найменші косинусні відстані та їхні індекси за допомогою find_n_closest().