始める無料で始める

最も類似した商品を見つける

埋め込み間の類似度を計算する機能は、埋め込みを活用したアプリケーションに欠かせないステップです。この演習では、以前に使用した products という辞書のリストに戻ります。このリストには、すでに作成した商品の短い説明文の埋め込みが含まれています。

テキストをこれらの埋め込み済み説明文と比較して、最も類似した説明文を特定しましょう。

numpynp としてインポート済みで、distancescipy.spatial から利用できます。また、 create_embeddings() 関数はすでに定義されており、単一のテキストから埋め込みを作成するのに使用できます。

この演習はコースの一部です

OpenAI API で学ぶ埋め込み入門

コースを見る

演習の手順

  • カスタム関数 create_embeddings() を使って "soap" というテキストを埋め込み、埋め込みのリストを1つ取り出します。
  • query_embeddingproduct 内の各埋め込みとのコサイン距離を計算します。
  • distances に格納されたコサイン距離を使って、検索テキストに最も類似した商品の 'short_description' を見つけて出力します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# 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(____)
コードを編集して実行