시작하기무료로 시작하기

추천 엔진에 사용자 이력 추가하기

영화나 구매 추천처럼 많은 추천 시나리오에서는 하나의 데이터 포인트만으로 다음 추천을 결정하기에 충분하지 않습니다. 이런 경우 더 정확하고 관련성 높은 추천을 위해 사용자 이력의 전체 또는 일부를 임베딩해야 합니다.

이 연습 문제에서는 사용자가 이전에 방문한 모든 상품을 고려하도록 상품 추천 시스템을 확장해 보겠습니다. 사용자의 과거 방문 상품은 user_history라는 딕셔너리 목록에 저장되어 있습니다.

다음 사용자 정의 함수를 사용할 수 있습니다: create_embeddings(texts), create_product_text(product), find_n_closest(query_vector, embeddings, n=3). 또한 numpynp로 임포트되어 있습니다.

이 연습은 강의의 일부입니다

OpenAI API로 시작하는 임베딩 Introduction

강의 보기

연습 안내

  • user_history의 각 상품에 대해 텍스트 특징을 결합하고, 그 결과 문자열을 임베딩한 뒤 numpy로 평균 임베딩을 계산하세요.
  • user_history에 포함된 상품을 제거하여 products를 필터링하세요.
  • products_filtered의 각 상품에 대해 특징을 결합하고, 그 결과 문자열을 임베딩하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Prepare and embed the user_history, and calculate the mean embeddings
history_texts = [____ for article in user_history]
history_embeddings = ____
mean_history_embeddings = ____

# Filter products to remove any in user_history
products_filtered = ____

# Combine product features and embed the resulting texts
product_texts = ____
product_embeddings = ____

hits = find_n_closest(mean_history_embeddings, product_embeddings)

for hit in hits:
  product = products_filtered[hit['index']]
  print(product['title'])
코드 편집 및 실행