추천 받기

이 페이지에서는 특정 사용자 및 사용자 이벤트에 대해 제품 추천을 요청하는 방법을 설명합니다.

제품을 업로드하고 사용자 이벤트를 기록한 후 해당 사용자 및 사용자의 현재 활동에 대해 기록된 사용자 이벤트를 기반으로 특정 사용자에 대한 제품 추천을 요청할 수 있습니다. 새 제품과 사용자 이벤트가 추천 모델에 반영되려면 최대 48시간까지 걸릴 수 있습니다.

Vertex AI Search for Retail은 순위가 지정된 제품 식별자 목록을 반환합니다. 이미지와 텍스트를 사용하여 웹사이트에서 결과를 렌더링해야 합니다.

최종 사용자의 맞춤설정된 결과를 캐시하지 않고 다른 최종 사용자에게 맞춤설정된 결과를 반환하지 않습니다.

시작하기 전에

Google Cloud 프로젝트를 만들고 시작하기 전에의 단계에 따라 인증을 설정합니다.

또한 추천에서 예측을 요청하기 전에 학습 및 조정된 추천(모델)과 하나 이상의 활성 서빙 구성이 필요합니다.

추천 평가

웹사이트 코드를 업데이트하여 추천을 요청하기 전에 미리보기 예측 결과를 사용하여 모델 및 서빙 구성이 예상대로 작동하는지 확인할 수 있습니다.

서빙 구성에 대한 자세한 내용은 서빙 구성 정보를 참조하세요.

평가 페이지에서 또는 콘솔에서 서빙 구성의 세부정보 페이지로 이동한 후 평가 탭을 클릭하여 서빙 구성을 미리 볼 수 있습니다. 다음 단계는 평가 페이지에서 미리 보는 방법을 보여줍니다.

서빙 구성에서 반환한 추천을 미리 보려면 다음 안내를 따르세요.

  1. Search for Retail 콘솔에서 평가 페이지로 이동합니다.

    평가 페이지로 이동

  2. 아직 선택하지 않은 경우 Recommendations 탭을 클릭합니다.

  3. 미리 보려는 서빙 구성을 선택합니다.

  4. 선택사항: 방문자 ID를 입력하여 해당 사용자의 추천을 미리 봅니다.

  5. 연결된 항목 섹션이 표시되면 항목 추가를 클릭하고 제품 ID를 입력하여 해당 항목의 연결된 추천을 가져옵니다. 여러 개의 연결된 항목을 추가할 수 있습니다.

    선택한 서빙 구성의 모델 유형에 추천의 입력으로 제품이 필요한 경우에만 항목을 추가할 수 있습니다. 추천 서비스 모델에는 연결된 항목을 입력할 필요가 없습니다.

  6. 예측 미리보기를 클릭하여 예측 결과를 확인합니다.

미리 보는 서빙 구성의 세부정보 페이지를 보려면 서빙 구성 선택 필드에서 서빙 구성 보기를 클릭합니다.

추천 받기

예측 비용 세부정보는 가격 책정을 참조하세요.

curl

추천을 받으려면 predict REST 메서드에 POST 요청을 하고 적절한 요청 본문을 제공합니다.

  • 사용하는 서비스 계정에 'Retail 뷰어' 이상의 역할이 있어야 합니다.

  • SERVING_CONFIG_ID를 예측을 사용할 서빙 구성으로 바꿉니다. 여기서 자세히 알아보세요.

  • BigQuery를 사용하여 Google 애널리틱스 360 사용자 이벤트를 가져온 경우 visitorId를 Google 애널리틱스 클라이언트 ID로 설정합니다. 클라이언트 ID를 가져오는 방법은 Google 애널리틱스 문서를 참조하세요.

  • A/B 실험을 실행 중인 경우 experimentIds를 실험 그룹의 ID로 설정합니다. 여기서 자세히 알아보세요.

  • 추천 요청을 시작한 사용자 작업에 대한 사용자 이벤트 객체를 제공합니다.

    이 사용자 이벤트는 기록되지 않습니다. 이 추천 요청에 대한 컨텍스트를 제공하는 데만 사용됩니다. 또한 다른 사용자 이벤트를 기록하는 것과 같은 방식으로 사용자 이벤트를 기록해야 합니다.

  • 필요한 경우 잠재적으로 반환되는 제품의 범위를 좁히기 위한 필터를 제공합니다. 여기서 자세히 알아보세요.

curl -X POST \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    --data '{
              "filter": "FILTER_STRING",
              "validateOnly": false,
              "userEvent": {
                  "eventType": "detail-page-view",
                  "visitorId": "VISITOR_ID",
                  "userInfo": {
                      "userId": "USER_ID",
                      "ipAddress": "IP_ADDRESS",
                      "userAgent": "USER_AGENT"
                  },
                  "experimentIds": "EXPERIMENT_GROUP",
                  "productDetails": [{
                      "product": {
                        "id": "PRODUCT_ID"
                     }
                  }]
              }
            }' \
https://retail.googleapis.com/v2/projects/PROJECT_ID/locations/global/catalogs/default_catalog/servingConfigs/SERVING_CONFIG_ID:predict

다음과 비슷한 결과가 표시됩니다.

{
  "results": [{"id": "sample-id-1"}, {"id": "sample-id-2"}],
  "attribution_token": "sample-atr-token"
}

attribution_token 값을 이 예측의 결과로 제공하는 URL과 연결하고 해당 URL의 사용자 이벤트로 반환해야 합니다. 자세히 알아보기

Java

public static PredictResponse predictWithNextPageToken(UserEvent userEvent, int pageSize,
    String nextPageToken)
    throws IOException, InterruptedException {
  PredictionServiceClient predictionClient = getPredictionServiceClient();

  PredictRequest request = PredictRequest.newBuilder()
      .setPlacement(HOME_PAGE_PLACEMENT_NAME)
      .setUserEvent(userEvent)
      .setPageSize(pageSize)
      .setPageToken(nextPageToken)
      .setValidateOnly(true)
      .build();

  PredictResponse response = predictionClient.predict(request);

  predictionClient.shutdownNow();
  predictionClient.awaitTermination(2, TimeUnit.SECONDS);

  return response;
}

가격 재순위

가격 재순위를 사용하면 추천 확률이 비슷한 추천 제품이 높은 가격순으로 정렬됩니다. 항목 순서를 지정할 때 관련성도 사용되므로 가격 재순위를 사용 설정하는 것은 가격을 기준으로 정렬하는 것과는 다릅니다.

가격 재순위를 서빙 구성 수준이나 예측 요청별로 설정할 수 있습니다.

Search for Retail 콘솔에서 서빙 구성을 생성할 때 가격 재순위 설정을 선택하면 추가 조치를 취하지 않아도 이 구성에서 제공하는 모든 추천에 설정이 적용됩니다.

특정 추천의 가격 재순위를 관리해야 하는 경우 PredictRequest.params 필드를 사용하여 수행할 수 있습니다. 이렇게 하면 이 추천에 적용되는 구성 수준의 재순위 설정이 재정의됩니다.

추천 다양성

다각화는 단일 예측 요청으로 반환되는 결과가 제품 카탈로그의 여러 카테고리에서 가져오는지 여부에 영향을 미칩니다.

다각화를 서빙 구성 수준이나 예측 요청별로 설정할 수 있습니다.

Search for Retail 콘솔에서 서빙 구성을 생성할 때 다각화 설정을 선택하면 추가 조치를 취하지 않아도 기본적으로 이 구성에서 제공하는 모든 추천에 설정이 적용됩니다.

특정 추천의 다양성을 관리해야 하는 경우 PredictRequest.params 필드를 사용하여 수행할 수 있습니다. 이렇게 하면 이 추천에 적용되는 구성 수준의 다각화 설정이 재정의됩니다. 허용되는 값을 참조하세요.

추천 필터 사용

predict 메서드에 filter 필드를 사용하여 Recommendations가 반환하는 추천을 필터링할 수 있습니다. 자세한 내용은 추천 필터를 참조하세요.

페이지 수준 최적화 모델을 사용한 예측 호출

페이지 수준 최적화를 사용하여 추천을 제공하려면 추가 예측 호출 단계가 필요합니다.

페이지 수준 최적화 모델을 포함하는 서빙 구성을 사용하여 초기 예측을 호출합니다. 예측 응답은 각 패널에 사용할 모델을 나타내는 정렬된 서빙 구성 ID 목록을 반환합니다.

그런 다음 페이지 수준 최적화 모델에서 권장하는 서빙 구성 ID를 사용하여 각 패널에 대해 예측을 호출합니다. 예측 응답에는 모델 이름(예: 추천 서비스) 및 해당 패널에 표시할 추천 항목 목록이 포함됩니다.

페이지 수준 최적화 모델을 사용하여 서빙 구성을 제공하는 경우 가격 재순위, 추천 다양성, 추천 필터를 사용할 수 없습니다.

Recommendations 모니터링 및 문제 해결

추천을 가져오도록 웹사이트를 설정한 후 알림을 설정하는 것이 좋습니다. 예측 오류 알림 설정을 살펴보세요.

오류를 해결하려면 모니터링 및 문제 해결을 참조하세요.