Găsirea celui mai similar produs
Capacitatea de a calcula similaritatea dintre încorporări (embeddings) este un pas esențial în aplicațiile bazate pe acestea. În acest exercițiu, vei reveni la lista de dicționare products cu care ai lucrat anterior — aceasta conține descrierile scurte încorporate pe care le-ai creat mai devreme.
Vei compara un fragment de text cu aceste descrieri încorporate pentru a identifica cea mai similară descriere.
numpy a fost importat ca np, iar distance este disponibil din scipy.spatial. O funcție create_embeddings() a fost deja definită și este disponibilă pentru a crea încorporări dintr-un singur input.
Acest exercițiu face parte din cursul
Introducere în Embeddings cu API-ul OpenAI
Instrucțiuni pentru exercițiu
- Încorporează textul
"soap"folosind funcția personalizatăcreate_embeddings()și extrage o singură listă de încorporări. - Calculează distanța cosinus dintre
query_embeddingși încorporările dinproduct. - Găsește și afișează
'short_description'a celui mai similar produs față de textul căutat, folosind distanțele cosinus dindistances.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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(____)