Поиск наиболее похожего товара
Вычисление сходства между эмбеддингами (векторными представлениями) — ключевой шаг в приложениях на их основе. В этом упражнении вы вернётесь к списку словарей products, с которым работали ранее: он содержит созданные вами ранее эмбеддинги коротких описаний товаров.
Вы сравните фрагмент текста с этими векторными представлениями, чтобы найти наиболее похожее описание.
numpy импортирован как np, а distance доступен из scipy.spatial. Функция create_embeddings() уже определена и готова к использованию для создания эмбеддингов из одного входного текста.
Это упражнение является частью курса
Введение в эмбеддинги с OpenAI API
Инструкции к упражнению
- С помощью пользовательской функции
create_embeddings()создайте эмбеддинг для текста"soap"и извлеките единственный список векторных представлений. - Вычислите косинусное расстояние между
query_embeddingи эмбеддингами вproduct. - Найдите и выведите значение
'short_description'товара, наиболее похожего на текст запроса, используя косинусные расстояния изdistances.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Embed the search text
search_text = "soap"
search_embedding = ____
distances = []
for product in products:
# Compute the cosine distance for each product description
dist = ____(search_embedding, ____)
distances.append(dist)
# Find and print the most similar product short_description
min_dist_ind = ____
print(____)