Обогащение эмбеддингов
Ранее при создании эмбеддингов для информации о товарах вы были ограничены только полем 'short_description', которое отражало лишь часть доступных данных. В этом упражнении вы будете использовать поля 'title', 'short_description', 'category' и 'features', чтобы охватить значительно больше информации.
Напомним структуру списка словарей products:
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",
"Quad-camera system with 48MP main sensor",
"Face recognition and fingerprint sensor",
"Fast wireless charging"
]
},
...
]
При объединении характеристик в одну строку она должна иметь следующую структуру:
Title: <product title>
Description: <product description>
Category: <product category>
Features: <feature 1>; <feature 2>; <feature 3>; ...
Это упражнение является частью курса
Введение в эмбеддинги с OpenAI API
Инструкции к упражнению
- Определите функцию
create_product_text(), которая объединяет данные из полейtitle,short_description,categoryиfeaturesв одну строку с нужной структурой. - Используйте
create_product_text(), чтобы объединить характеристики каждого товара изproducts, и сохраните результаты в список. - Создайте эмбеддинги для текста из
product_texts.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Define a function to combine the relevant features into a single string
def create_product_text(product):
return f"""Title: {____}
Description: {____}
Category: {____}
Features: {____}"""
# Combine the features for each product
product_texts = [____ for product in ____]
# Create the embeddings from product_texts
product_embeddings = ____