Wzbogacanie osadzeń
Wcześniej, gdy osadzałeś informacje o produktach, byłeś ograniczony wyłącznie do pola 'short_description' – zawierało ono część istotnych danych, ale nie wszystkie. W tym ćwiczeniu użyjesz pól 'title', 'short_description', 'category' i 'features', aby uchwycić znacznie więcej informacji.
Przypomnienie struktury listy słowników 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"
]
},
...
]
Po połączeniu cech w jeden ciąg znaków powinien on mieć następującą strukturę:
Title: <product title>
Description: <product description>
Category: <product category>
Features: <feature 1>; <feature 2>; <feature 3>; ...
To ćwiczenie jest częścią kursu
Wprowadzenie do osadzeń z OpenAI API
Instrukcje do ćwiczenia
- Zdefiniuj funkcję o nazwie
create_product_text(), która połączy dane z póltitle,short_description,categoryifeaturesw jeden ciąg znaków o wymaganej strukturze. - Użyj funkcji
create_product_text(), aby przetworzyć każdy produkt z listyproductsi zapisz wyniki w liście. - Utwórz osadzenia (embeddings) dla tekstów zapisanych w
product_texts.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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 = ____