서빙 컨트롤 만들기

이 페이지에서는 서빙 컨트롤을 만드는 방법을 설명합니다.

서빙 컨트롤은 개별 서빙 구성에 대해 정의하고 적용하는 규칙입니다. 서빙 구성에 대한 상세 설명은 서빙 구성 정보를 참조하세요.

Search for Commerce 콘솔에서 컨트롤을 트리거하는 조건과 조건이 트리거될 때 수행되는 작업으로 구성된 서빙 컨트롤을 만들 수 있습니다. 그런 다음 새 서빙 컨트롤을 서빙 구성에 연결할 수 있습니다.

서빙 구성은 제어와 다대다 관계를 갖습니다. 서빙 구성에 여러 컨트롤을 추가할 수 있고 단일 컨트롤을 여러 서빙 구성과 연결할 수 있습니다.

서빙 컨트롤과 서빙 구성을 만들 때 사용할 수 있는 제품(추천 또는 검색)을 선택합니다. 서빙 컨트롤은 동일한 제품 유형의 서빙 구성과만 연결될 수 있습니다. 예를 들어 추천용으로 생성된 서빙 컨트롤은 검색용으로 생성된 서빙 구성과 연결될 수 없습니다.

서빙 구성은 검색 또는 예측 요청 중에 적용되는 컨트롤을 관리합니다. 서빙 시 요청의 활성 서빙 구성에 대한 컨트롤만 고려됩니다. 예를 들어 신발을 검색할 때 gShoe 브랜드의 결과를 부스트하는 gShoe Sale이라는 컨트롤과 런닝화라는 용어를 사용하여 검색어를 스포츠 신발을 포함하도록 확장하는 More shoes라는 컨트롤을 만들었다고 가정해 보겠습니다. 게재 구성에 gShoe Sale 컨트롤만 연결하면 이 게재 구성을 사용하는 검색 요청은 shoes라는 검색어를 사용하는 쿼리의 gShoe 결과를 높여 주지만 More shoes 컨트롤은 사용 중인 게재 구성에 연결되어 있지 않으므로 효과가 없습니다.

컨트롤을 만든 후 실시간 서빙 구성으로 추가하거나 전환할 수 있습니다.

Controls.create 메서드를 사용하여 컨트롤 페이지 또는 인라인에서 언제든지 서빙 컨트롤을 만들거나 수정할 수 있습니다. 콘솔에서 서빙 구성 생성 프로세스 중에 선택적으로 제어를 만들 수 있습니다.

서빙 컨트롤은 최대 1,00개까지 만들 수 있습니다. 더 많은 서빙 컨트롤이 필요한 경우 추가 할당량을 요청하세요. 추가 할당량을 요청하는 방법은 할당량 상향 조정을 참조하세요. 서빙 구성은 리디렉션 컨트롤 외에 모든 유형의 서빙 컨트롤을 최대 100개까지 포함할 수 있으며, 이 경우 서빙 구성당 한도는 1,000개입니다.

빠른 시작 동영상 및 가이드

  • 제공 컨트롤 소개: 제공 컨트롤을 사용하면 제공 구성이 검색 결과를 반환하는 방식을 맞춤설정하는 규칙을 만들 수 있습니다.
  • 상승/하강: 반환된 결과 목록의 순위와 순서에 영향을 미칩니다. 검색과 추천에 사용할 수 있습니다.
  • 필터: 반환된 결과 목록에서 필터를 통과하지 않은 결과를 삭제합니다. 검색에만 사용 가능합니다.
  • 리디렉션: 검색 쿼리에 따라 사용자를 특정 페이지로 리디렉션합니다. 검색에만 사용 가능합니다.

이 튜토리얼에서는 리디렉션 제어를 사용하는 방법을 보여줍니다.


Cloud Shell 편집기에서 이 태스크의 단계별 안내를 직접 수행하려면 둘러보기를 클릭합니다.

둘러보기


  • 링귀스틱: 검색 쿼리의 언어적 요소를 맞춤설정합니다. 검색에만 사용 가능합니다.
    다음과 같은 유형의 언어적 컨트롤을 사용할 수 있습니다.
    • 동의어: 검색어에서 동의어로 간주되는 범위를 확장합니다.
    • 단방향 동의어: 특정 검색어의 동의어를 단방향으로 확장합니다.
    • 연관 금지: A 검색어가 표시되었을 때 B 검색어가 검색에 사용되지 않게 하는 컨트롤입니다.
    • 무시: 특정 검색어가 검색에 사용되지 않도록 방지합니다.
    • 대체: 검색어에서 용어를 바꿉니다.
  • 고정: 결과 순서에 영향을 미치며 특정 위치(예: 4번 위치)에 결과를 배치합니다. 검색 및 탐색에 사용할 수 있습니다.

이러한 컨트롤의 예시는 서빙 컨트롤 정보을 참조하세요.

컨트롤을 만들기 위한 콘솔 옵션

다음 콘솔 경로 중 하나를 선택하여 Vertex AI Search for Commerce에서 모든 게재 컨트롤을 만들 수 있습니다.

Google Cloud 콘솔 사용

각 게재 관리 섹션의 Merchandising Console 단계를 따르세요.

Merchandising Console 사용

Google Cloud 콘솔 관리자는 사이트 상품 판매자에게 상품 판매 콘솔에 대한 액세스 권한을 부여하고 크리에이터 또는 승인자 역할을 할당할 수 있습니다.

사용자로서 Merchandising Console에 액세스

URL로 액세스 권한이 부여된 경우 표준 Google Cloud 콘솔 대신 Merchandising Console을 사용할 수 있습니다. Merchandising Console을 사용하여 컨트롤을 만들려면 다음 단계를 따르세요.

  1. 관리자가 제공한 외부 로그인을 통해 로그인합니다.

  2. 각 게재 조정 섹션의 Merchandising Console 문서 단계를 따르세요.

제출 후 [판매자 콘솔] 검토 대기 중인 제안된 관리라는 제목의 알림 이메일이 전송됩니다.

  1. 승인자는 제어 요청을 수락, 거부 또는 변경합니다.

Merchandising Console 사용자 온보딩

Google Cloud 콘솔 관리자는 다음과 같이 판매자에게 Merchandising Console 액세스 권한을 부여할 수 있습니다.

  1. Search for Commerce 콘솔의 컨트롤 페이지로 이동합니다.

    컨트롤 페이지로 이동

  2. 상품화 콘솔 탭으로 이동합니다.

  3. ID 설정을 구성합니다.

  4. 사용자에게 승인자 또는 크리에이터 역할을 부여합니다.

  5. 현재 Google Cloud 프로젝트와 연결된 상품 콘솔의 고유 URL을 확인할 수 있습니다. 링크를 복사하거나 Google Cloud 콘솔에서 직접 엽니다.

  6. Merchandising Console에서 미리보기의 기본 서빙 구성을 선택합니다.

  7. (선택사항) 다음 함수를 사용하여 Merchandising Console에 대한 액세스 권한을 수정합니다.

    • 사용자 추가: 사용자에게 승인자 또는 크리에이터 액세스 권한을 부여하여 상품 콘솔에 액세스할 수 있도록 합니다.

    • 사용자 삭제: 승인자 또는 크리에이터를 삭제하여 Merchandising Console에 대한 액세스 권한을 취소합니다.

  8. Search for Commerce 콘솔에서 IAM Admin 페이지로 이동합니다.

    IAM 관리 페이지로 이동

승인 담당자를 위한 추가 단계

  1. Create control(관리 콘솔 만들기)을 클릭하여 Merchandising Console 설정을 조정합니다.

  2. 시작 규칙에 질문을 추가하거나 목표 정의 화면에서 질문을 삭제합니다.

  3. (선택사항) 제출된 관리 요청이 포함된 이메일을 받은 후 요청이 표시된 대시보드에서 상태를 변경하거나 요청을 승인 또는 거부합니다.

  4. 검토 및 승인 섹션에서 승인, 거부 또는 수정을 클릭하여 각 컨트롤의 승인을 관리합니다.

    • 마지막 옵션을 선택하면 다음 화면으로 이동하여 수정한 후 수정사항 포함 승인을 클릭할 수 있습니다.

    • 승인 담당자로 추가한 모든 컨트롤은 자동으로 승인됩니다.

새 제공 컨트롤 만들기

Google Cloud 콘솔의 컨트롤 페이지 또는 Controls.create 메서드를 사용하여 인라인에서 새 서빙 컨트롤을 만듭니다.

컨트롤은 유형에 따라 요구사항이 다릅니다. 만들려는 컨트롤 유형의 생성 절차로 이동합니다.

부스트/하강 컨트롤 만들기

이 컨트롤 유형은 검색과 추천에 사용 가능합니다.

이 컨트롤 유형에 관한 상세 설명은 부스트/하강 컨트롤을 참조하세요.

검색 부스트/하강 컨트롤을 만들려면 다음 안내를 따르세요.

상품 판매 콘솔

  1. 관리자가 제공한 URL을 클릭합니다. Sign in을 클릭합니다.

    그러면 상품화 콘솔컨트롤 페이지로 이동합니다.

  2. 컨트롤 만들기를 클릭합니다.

  3. 최종 사용자의 목표와 필요한 시간을 정의합니다. 모든 질문에 답변해야 합니다. 다음을 클릭합니다.

  4. 컨트롤을 선택합니다. 컨트롤 이름을 입력하고 검색 제품을 선택한 다음 컨트롤 유형 부스팅/하강을 선택합니다.

  5. 부스트/하강 컨트롤을 구성합니다.

    1. 트리거에서 관련 검색어에 기준(예: contains 또는 not in range)을 지정하여 이 제어를 트리거하는 카탈로그 속성을 정의합니다. 카탈로그 속성이 구성되지 않은 경우 이 컨트롤이 항상 적용됩니다.

    2. 기간을 입력하여 해당 기간을 정의합니다. 지정된 기간 중 하나라도 충족되면 카탈로그 속성이 지정된 기간 동안 쿼리와 일치합니다. 기간 추가를 사용하여 기간을 추가합니다.

    3. 이 컨트롤로 트리거할 부스트/하강 작업을 정의합니다. 이러한 작업은 색상과 같은 카탈로그 속성, 포함과 같은 기준,빨간색과 같은 으로 정의됩니다.

    4. 속성 추가를 클릭하여 속성을 추가합니다.

  6. 슬라이더를 사용하여 부스트/하강 값을 설정합니다. 음수는 숨기고 양수는 부스트합니다.

  7. 제출을 클릭하여 승인자에게 제어 요청을 제출합니다. 제출된 요청의 상태는 Merchandising Console에서 확인할 수 있습니다. 마음이 바뀌면 관리 요청을 삭제할 수 있습니다.

Cloud 콘솔

  1. Search for Commerce 콘솔의 컨트롤 페이지로 이동합니다.

    컨트롤 페이지로 이동

  2. 서빙 컨트롤 탭에서 컨트롤 만들기를 클릭합니다.

    컨트롤 만들기 창이 열립니다.

  3. 환경설정 섹션의 컨트롤 이름 필드에 새 컨트롤의 이름을 입력합니다.

  4. 선택사항: 자동으로 생성된 컨트롤 ID를 변경하려면 수정을 클릭하고 새 컨트롤 ID를 입력합니다.

  5. 제품 선택 섹션에서 검색을 선택합니다.

  6. 컨트롤 유형으로 부스팅/하강 컨트롤을 선택합니다. 계속을 클릭합니다.

  7. 트리거 섹션에서 이 컨트롤을 트리거하는 사용자 동작 유형을 선택합니다.

    • 카테고리 찾아보기: 이 규칙은 사용자가 사이트에서 카테고리를 탐색할 때 트리거됩니다(search.request.query가 비어 있음).

    • 검색: 이 규칙은 사용자가 사이트를 검색할 때 트리거됩니다(search.request.query가 비어있지 않음). 카테고리를 탐색하거나 쿼리를 검색할 때 이 컨트롤을 트리거하도록 설정하려면 다음 단계를 건너뜁니다.

  8. 선택사항: 특정 카테고리를 탐색하거나 특정 쿼리를 검색하는지에 따라 이 컨트롤을 트리거할 수 있는 특정 카테고리 또는 쿼리를 설정합니다.

    • 카테고리 찾아보기를 선택한 경우: 카테고리 필드에서 탐색할 때 이 컨트롤을 트리거할 카테고리를 입력합니다.

    • 검색을 선택한 경우 쿼리 추가 버튼을 클릭하여 필터링할 쿼리 검색어 (예: running shoes)를 추가합니다. 각 검색어에 대해 부분 일치 또는 전체 일치를 선택합니다.

  9. 선택사항: 기간 추가 버튼을 클릭하여 이 컨트롤을 적용할 수 있는 시간 범위를 하나 이상 추가합니다.

  10. 계속을 클릭하여 작업 섹션으로 이동합니다.

  11. 부스트/하강 제품 필드에 제품 속성의 필터를 추가합니다.

    필터링 및 순서 지정에 설명된 필터 표현식 문법을 사용합니다. 예를 들어 'product1' 및 'product2'의 빨간색 버전과 파란색 버전((id: ANY("product1","product2")) AND (colorFamily: ANY("Red","Blue")))을 지정하려면 다음 안내를 따르세요.

  12. 부스트/하강 값에서 슬라이더를 사용하여 부스트 강도를 설정합니다. 양수를 사용하면 결과가 상향 조정되고 음수를 사용하면 아래로 내려갑니다. 계속을 클릭합니다.

  13. 서빙 구성 섹션에서 컨트롤을 적용할 서빙 구성을 선택합니다.

  14. 컨트롤 설정을 제출합니다.

    새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

이제 컨트롤 페이지의 서빙 컨트롤 탭에 새 컨트롤이 표시됩니다.

curl

요청 본문에 포함된 제어 ID와 Control의 인스턴스를 사용하여 Control.create 요청을 실행합니다.

필드 세부정보는 Controls API 참조Controls.create API 참조를 확인하세요.

사용자가 사이트에서 카테고리를 탐색하거나(search.request.query가 비어 있음) 사용자가 사이트를 검색하는 경우(search.request.query가 비어있지 않음) 부스트/하강 컨트롤이 트리거될 수 있습니다.

다음 예시에서는 browse-triggered 컨트롤의 필드를 보여줍니다. 여기서 searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_BROWSE로 설정됩니다.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_BROWSE"
              ],
              "rule": {
                "condition": {
                  "pageCategories": [
                      "CATEGORY_ABC",
                      "CATEGORY_XYZ"
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "boostAction": {
                  "boost": BOOST_NUMBER,
                  "productsFilter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"

다음 예시에서는 search-triggered 컨트롤의 필드를 보여줍니다. 여기서 searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_SEARCH로 설정됩니다.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_SEARCH"
              ],
              "rule": {
                "condition": {
                  "queryTerms": [
                    {
                      "value": "VALUE_1",
                      "fullMatch": "FULLMATCH_BOOLEAN_1"
                    },
                    {
                      "value": "VALUE_2",
                      "fullMatch": "FULLMATCH_BOOLEAN_2"
                    }
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "boostAction": {
                  "boost": BOOST_NUMBER,
                  "productsFilter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

서빙 구성에 컨트롤을 추가하려면 ServingConfig.addControl 메서드를 사용하세요.

추천 부스트/하강 컨트롤 만들기

추천 부스트/하강 컨트롤을 만들려면 다음 안내를 따르세요.

상품 판매 콘솔

  1. 관리자가 제공한 URL을 클릭합니다. Sign in을 클릭합니다.

    그러면 상품화 콘솔컨트롤 페이지로 이동합니다.

  2. 컨트롤 만들기를 클릭합니다.

  3. 최종 사용자의 목표와 필요한 시간을 정의합니다. 모든 질문에 답변해야 합니다. 다음을 클릭합니다.

  4. 컨트롤을 선택합니다. 컨트롤 이름을 입력하고 탐색 제품을 선택한 다음 컨트롤 유형 부스트/하강을 선택합니다.

  5. 부스트/하강 컨트롤을 구성합니다.

    1. 트리거에서 컨트롤을 트리거할 페이지 카테고리를 입력합니다. 카탈로그 속성이 구성되지 않은 경우 이 컨트롤은 항상 적용됩니다.

    2. 기간을 입력하여 해당 기간을 정의합니다. 지정된 기간 중 하나라도 충족되면 카탈로그 속성이 지정된 기간 동안 쿼리와 일치합니다. 기간 추가를 사용하여 기간을 추가합니다.

    3. 이 컨트롤로 트리거할 부스트/하강 작업을 정의합니다. 이러한 작업은 색상과 같은 카탈로그 속성, 포함과 같은 기준,빨간색과 같은 으로 정의됩니다.

    4. 속성 추가를 클릭하여 속성을 추가합니다.

  6. 슬라이더를 사용하여 부스트/하강 값을 설정합니다. 음수는 묻기, 양수는 부스트입니다.

  7. 제출을 클릭하여 승인자에게 제어 요청을 제출합니다. 제출된 요청의 상태는 Merchandising Console에서 확인할 수 있습니다. 마음이 바뀌면 관리 요청을 삭제할 수 있습니다.

Cloud 콘솔

  1. Search for Commerce 콘솔의 컨트롤 페이지로 이동합니다.

    컨트롤 페이지로 이동

  2. 서빙 컨트롤 탭에서 컨트롤 만들기를 클릭합니다.

    컨트롤 만들기 창이 열립니다.

  3. 환경설정 섹션의 컨트롤 이름 필드에 새 컨트롤의 이름을 입력합니다.

  4. (선택사항) 자동으로 생성된 컨트롤 ID를 변경하려면 수정을 클릭하고 새 컨트롤 ID를 입력합니다.

  5. 제품 선택 섹션에서 추천을 선택합니다.

  6. 컨트롤 유형으로 부스팅/하강 컨트롤을 선택합니다.

  7. 계속을 클릭하여 작업 섹션으로 이동합니다.

  8. 부스트/하강 제품 필드에 제품 속성의 필터를 추가합니다.

    추천 필터링에 설명된 필터 표현식 문법을 사용합니다.

    예를 들어 'product1' 및 'product2'의 빨간색 버전과 파란색 버전((id: ANY("product1","product2")) AND (colorFamily: ANY("Red","Blue")))을 지정하려면 다음 안내를 따르세요.

  9. 부스트/하강 값에서 슬라이더를 사용하여 부스트 강도를 설정합니다. 양수를 사용하면 결과가 상향 조정되고 음수를 사용하면 아래로 내려갑니다.

  10. 계속을 클릭하여 서빙 구성 섹션으로 이동합니다.

  11. 컨트롤을 적용할 서빙 구성을 선택합니다.

  12. 컨트롤 설정을 제출합니다.

    새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

컨트롤 페이지의 서빙 컨트롤 탭에 새 컨트롤이 나열됩니다.

curl

요청 본문에 포함된 제어 ID와 Control의 인스턴스를 사용하여 Control.create 요청을 실행합니다.

필드 세부정보는 Controls API 참조Controls.create API 참조를 확인하세요.

필터 표현식을 만들려면 추천 필터링에 설명된 필터 표현식 문법을 사용합니다.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_RECOMMENDATION" ],
                "boostAction": {
                  "boost": BOOST_NUMBER,
                  "productsFilter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
   

새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

서빙 구성에 컨트롤을 추가하려면 ServingConfig.addControl 메서드를 사용하세요.

필터 컨트롤 만들기

이 컨트롤 유형에 대한 상세 설명은 필터 컨트롤을 참조하세요.

상품 판매 콘솔

  1. 관리자가 제공한 URL을 클릭합니다. Sign in을 클릭합니다.

    그러면 상품화 콘솔컨트롤 페이지로 이동합니다.

  2. 컨트롤 만들기를 클릭합니다.

  3. 최종 사용자의 목표와 필요한 시간을 정의합니다. 모든 질문에 답변해야 합니다. 다음을 클릭합니다.

  4. 컨트롤을 선택합니다. 컨트롤 이름을 입력하고 검색 또는 탐색 제품을 선택한 다음 컨트롤 유형 필터를 선택합니다.

  5. 필터 컨트롤을 구성합니다.

    1. 트리거에서 관련 검색어 또는 페이지 카테고리에 기준(예: 포함 또는 범위 외)을 지정하여 이 컨트롤을 트리거하는 카탈로그 속성을 정의합니다. 카탈로그 속성이 구성되지 않은 경우 이 컨트롤이 항상 적용됩니다.

    2. 기간을 입력하여 해당 기간을 정의합니다. 지정된 기간 중 하나라도 충족되면 카탈로그 속성이 지정된 기간 동안 쿼리와 일치합니다. 기간 추가를 사용하여 기간을 추가합니다.

    3. 이 컨트롤로 트리거할 필터 작업을 정의합니다. 이러한 작업은 색상과 같은 카탈로그 속성, 포함과 같은 기준,빨간색과 같은 으로 정의됩니다.

    4. 속성 추가를 클릭하여 속성을 추가합니다.

  6. 제출을 클릭하여 승인자에게 제어 요청을 제출합니다. 제출된 요청의 상태는 Merchandising Console에서 확인할 수 있습니다. 마음이 바뀌면 관리 요청을 삭제할 수 있습니다.

Cloud 콘솔

  1. Search for Commerce 콘솔의 컨트롤 페이지로 이동합니다.

    컨트롤 페이지로 이동

  2. 서빙 컨트롤 탭에서 컨트롤 만들기를 클릭합니다.

    컨트롤 만들기 창이 열립니다.

  3. 환경설정 섹션의 컨트롤 이름 필드에 새 컨트롤의 이름을 입력합니다.

  4. 선택사항: 자동으로 생성된 컨트롤 ID를 변경하려면 수정을 클릭하고 새 컨트롤 ID를 입력합니다.

  5. 컨트롤 유형으로 필터 컨트롤을 선택합니다.

  6. 계속을 클릭하여 트리거 섹션으로 이동하세요.

  7. 이 컨트롤을 트리거하는 사용자 동작 유형을 선택합니다.

    • 카테고리 찾아보기: 이 규칙은 사용자가 사이트에서 카테고리를 탐색할 때 트리거됩니다(search.request.query가 비어 있음).

    • 검색: 이 규칙은 사용자가 사이트를 검색할 때 트리거됩니다(search.request.query가 비어있지 않음).

  8. 선택사항: 탐색한 카테고리나 검색한 쿼리에 따라 규칙을 트리거하는 제어 조건을 설정합니다. 사용 가능한 옵션은 카테고리 찾아보기 또는 검색을 선택했는지에 따라 다릅니다.

    • 카테고리 찾아보기를 선택한 경우: 카테고리 필드에서 탐색할 때 이 컨트롤을 트리거할 카테고리를 입력합니다.

    • 검색을 선택한 경우 쿼리 추가 버튼을 클릭하여 필터링할 쿼리 검색어(예: running shoes)를 추가하고 각 검색어에 대해 다음 중 하나를 선택합니다.

      • 부분 일치: 이 컨트롤은 쿼리가 이 쿼리 검색어와 부분적으로 일치하는 경우에 적용됩니다.
      • 전체 일치: 이 컨트롤은 쿼리가 이 쿼리 검색어와 전체적으로 일치하는 경우에만 적용됩니다.

      이러한 용어 중 하나가 쿼리에 포함된 경우 컨트롤이 적용됩니다.

  9. 선택사항: 기간 추가 버튼을 클릭하여 이 컨트롤을 적용할 수 있는 시간 범위를 하나 이상 추가합니다.

  10. 계속을 클릭하여 작업 섹션으로 이동합니다.

  11. 필터 작업 필드에 제품 속성의 필터를 추가합니다.

    필터링 및 순서 지정에 문서화된 필터 표현식 문법을 사용합니다.

    예를 들어 'product1' 및 'product2'의 빨간색 버전과 파란색 버전((id: ANY("product1","product2")) AND (colorFamily: ANY("Red","Blue")))을 지정하려면 다음 안내를 따르세요.

  12. 계속을 클릭하여 서빙 구성 섹션으로 이동합니다.

  13. 컨트롤을 적용할 서빙 구성을 선택합니다.

  14. 컨트롤 설정을 제출합니다.

    새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

컨트롤 페이지의 서빙 컨트롤 탭에 새 컨트롤이 나열됩니다.

curl

요청 본문에 포함된 제어 ID와 Control의 인스턴스를 사용하여 Control.create 요청을 실행합니다.

필드 세부정보는 Controls API 참조Controls.create API 참조를 확인하세요.

필터 컨트롤은 사용자가 사이트에서 카테고리를 탐색할 때(search.request.query가 비어 있음) 또는 사용자가 사이트를 검색할 때(search.request.query가 비어 있지 않음) 트리거될 수 있습니다.

다음 예시에서는 browse-triggered 컨트롤의 필드를 보여줍니다. 여기서 searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_BROWSE로 설정됩니다.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_BROWSE"
              ],
              "rule": {
                "condition": {
                  "pageCategories": [
                      "CATEGORY_ABC",
                      "CATEGORY_XYZ"
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "filterAction": {
                  "filter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"

다음 예시에서는 search-triggered 컨트롤의 필드를 보여줍니다. 여기서 searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_SEARCH로 설정됩니다.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_SEARCH"
              ],
              "rule": {
                "condition": {
                  "pageCategories": [
                      "CATEGORY_ABC",
                      "CATEGORY_XYZ"
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "filterAction": {
                  "filter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

서빙 구성에 컨트롤을 추가하려면 ServingConfig.addControl 메서드를 사용하세요.

리디렉션 컨트롤 만들기

이 컨트롤 유형에 대한 상세 설명은 리디렉션 컨트롤을 참조하세요.

상품 판매 콘솔

  1. 관리자가 제공한 URL을 클릭합니다. Sign in을 클릭합니다.

    그러면 상품화 콘솔컨트롤 페이지로 이동합니다.

  2. 컨트롤 만들기를 클릭합니다.

  3. 최종 사용자의 목표와 필요한 시간을 정의합니다. 모든 질문에 답변해야 합니다. 다음을 클릭합니다.

  4. 컨트롤을 선택합니다. 컨트롤 이름을 입력하고 검색 제품을 선택한 다음 컨트롤 유형 리디렉션을 선택합니다.

  5. 리디렉션 컨트롤을 구성합니다.

    1. 트리거에서 관련 검색어에 기준(예: contains 또는 not in range)을 지정하여 이 제어를 트리거하는 카탈로그 속성을 정의합니다. 카탈로그 속성이 구성되지 않은 경우 이 컨트롤이 항상 적용됩니다.

    2. 기간을 입력하여 해당 기간을 정의합니다. 지정된 기간 중 하나라도 충족되면 카탈로그 속성이 지정된 기간 동안 쿼리와 일치합니다. 기간 추가를 사용하여 기간을 추가합니다.

    3. 리디렉션 URL을 입력하여 이 컨트롤로 트리거할 리디렉션 작업을 정의합니다.

  6. 제출을 클릭하여 승인자에게 제어 요청을 제출합니다. 제출된 요청의 상태는 Merchandising Console에서 확인할 수 있습니다. 마음이 바뀌면 관리 요청을 삭제할 수 있습니다.

Cloud 콘솔

  1. Search for Commerce 콘솔의 컨트롤 페이지로 이동합니다.

    컨트롤 페이지로 이동

  2. 서빙 컨트롤 탭에서 컨트롤 만들기를 클릭합니다.

    컨트롤 만들기 창이 열립니다.

  3. 환경설정 섹션의 컨트롤 이름 필드에 새 컨트롤의 이름을 입력합니다.

  4. 선택사항: 자동으로 생성된 컨트롤 ID를 변경하려면 수정을 클릭하고 새 컨트롤 ID를 입력합니다.

  5. 컨트롤 유형으로 리디렉션 컨트롤을 선택합니다.

  6. 계속을 클릭하여 트리거 섹션으로 이동하세요.

  7. 검색어 또는 기간 트리거를 하나 이상 만듭니다. 리디렉션 컨트롤에는 트리거가 하나 이상 필요합니다.

  8. 이 컨트롤을 트리거하는 사용자 동작 유형을 선택합니다.

    • 카테고리 찾아보기: 이 규칙은 사용자가 사이트에서 카테고리를 탐색할 때 트리거됩니다(search.request.query가 비어 있음).

    • 검색: 이 규칙은 사용자가 사이트를 검색할 때 트리거됩니다(search.request.query가 비어있지 않음).

  9. 탐색한 카테고리나 검색한 쿼리에 따라 규칙을 트리거하는 제어 조건을 설정합니다. 사용 가능한 옵션은 카테고리 찾아보기 또는 검색을 선택했는지에 따라 다릅니다.

    • 카테고리 찾아보기를 선택한 경우: 카테고리 필드에서 탐색할 때 이 컨트롤을 트리거할 카테고리를 입력합니다.

    • 검색을 선택한 경우 쿼리 추가 버튼을 클릭하여 필터링할 쿼리 검색어(예: running shoes)를 추가하고 각 검색어에 대해 다음 중 하나를 선택합니다.

      • 부분 일치: 이 컨트롤은 쿼리가 이 쿼리 검색어와 부분적으로 일치하는 경우에 적용됩니다.
      • 전체 일치: 이 컨트롤은 쿼리가 이 쿼리 검색어와 전체적으로 일치하는 경우에만 적용됩니다.

      이러한 용어 중 하나가 쿼리에 포함된 경우 컨트롤이 적용됩니다.

  10. 기간 추가 버튼을 클릭하여 이 컨트롤을 적용할 수 있는 기간을 하나 이상 추가합니다.

  11. 계속을 클릭하여 작업 섹션으로 이동합니다.

  12. 이 컨트롤이 트리거될 때 리디렉션할 URI를 입력합니다.

  13. 계속을 클릭하여 서빙 구성 섹션으로 이동합니다.

  14. 컨트롤을 적용할 서빙 구성을 선택합니다.

  15. 컨트롤 설정을 제출합니다.

    새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

컨트롤 페이지의 제공 컨트롤 탭에 새 컨트롤이 나열됩니다.

curl

요청 본문에 포함된 제어 ID와 Control의 인스턴스를 사용하여 Control.create 요청을 실행합니다.

필드 세부정보는 Controls API 참조Controls.create API 참조를 확인하세요.

리디렉션 컨트롤은 사용자가 사이트에서 카테고리를 탐색할 때(search.request.query가 비어 있음) 또는 사용자가 사이트를 검색할 때(search.request.query가 비어 있지 않음) 트리거될 수 있습니다.

다음 예시에서는 browse-triggered 컨트롤의 필드를 보여줍니다. 여기서 searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_BROWSE로 설정됩니다.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_BROWSE"
              ],
              "rule": {
                "condition": {
                  "queryTerms": [
                    {
                      "value": "VALUE_1",
                      "fullMatch": "FULLMATCH_BOOLEAN_1"
                    },
                    {
                      "value": "VALUE_2",
                      "fullMatch": "FULLMATCH_BOOLEAN_2"
                    }
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "redirectAction": {
                  "redirectUri": "REDIRECT_URI",
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"

다음 예시에서는 search-triggered 컨트롤의 필드를 보여줍니다. 여기서 searchSolutionUseCaseSEARCH_SOLUTION_USE_CASE_SEARCH로 설정됩니다.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "searchSolutionUseCase": [
                "SEARCH_SOLUTION_USE_CASE_SEARCH"
              ],
              "rule": {
                "condition": {
                  "queryTerms": [
                    {
                      "value": "VALUE_1",
                      "fullMatch": "FULLMATCH_BOOLEAN_1"
                    },
                    {
                      "value": "VALUE_2",
                      "fullMatch": "FULLMATCH_BOOLEAN_2"
                    }
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "redirectAction": {
                  "redirectUri": "REDIRECT_URI",
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

서빙 구성에 컨트롤을 추가하려면 ServingConfig.addControl 메서드를 사용하세요.

양방향 동의어 컨트롤 만들기

이 컨트롤 유형에 대한 상세 설명은 양방향 동의어 컨트롤을 참조하세요.

상품 판매 콘솔

  1. 관리자가 제공한 URL을 클릭합니다. Sign in을 클릭합니다.

    그러면 상품화 콘솔컨트롤 페이지로 이동합니다.

  2. 컨트롤 만들기를 클릭합니다.

  3. 최종 사용자의 목표와 필요한 시간을 정의합니다. 모든 질문에 답변해야 합니다. 다음을 클릭합니다.

  4. 컨트롤을 선택합니다. 컨트롤 이름을 입력하고 검색 제품을 선택한 다음 컨트롤 유형 동의어를 선택합니다.

  5. 양방향 동의어 컨트롤을 구성합니다.

    1. 트리거에서 관련 검색어에 기준(예: contains 또는 not in range)을 지정하여 이 제어를 트리거하는 카탈로그 속성을 정의합니다. 카탈로그 속성이 구성되지 않은 경우 이 컨트롤이 항상 적용됩니다.

    2. 기간을 입력하여 해당 기간을 정의합니다. 지정된 기간 중 하나라도 충족되면 카탈로그 속성이 지정된 기간 동안 쿼리와 일치합니다. 기간 추가를 사용하여 기간을 추가합니다.

    3. 이 컨트롤로 트리거할 동의어 유형을 정의합니다. 양방향을 선택합니다. 동의어 유형에 관한 자세한 내용은 동의어 섹션을 참고하세요.

  6. 제출을 클릭합니다. 그러면 세부적인 양방향 동의어 구성 화면이 표시됩니다.

  7. 양방향 동의어 작업 아래의 필드에 동의어를 입력합니다. 이 작업은 검색 결과에서 동일하게 처리되도록 검색어를 양방향으로 연결합니다. 따라서 빨간색 소파 검색어는 빨간색 마룬 소파로 검색되지만 마룬 소파 검색어는 진홍색이나 분홍색과 같은 모든 유형의 빨간색 소파를 포함하도록 확장됩니다.

  8. 제출을 다시 클릭하여 관리 요청을 승인자에게 전송합니다. 제출된 요청의 상태는 Merchandising Console에서 확인할 수 있습니다. 마음이 바뀌면 관리 요청을 삭제할 수 있습니다.

Cloud 콘솔

  1. Search for Commerce 콘솔의 컨트롤 페이지로 이동합니다.

    컨트롤 페이지로 이동

  2. 서빙 컨트롤 탭에서 컨트롤 만들기를 클릭합니다.

  3. 컨트롤 이름 필드에 새 컨트롤의 이름을 입력합니다.

    컨트롤 만들기 창이 열립니다.

  4. 환경설정 섹션이 표시됩니다.

  5. 선택사항: 자동으로 생성된 컨트롤 ID를 변경하려면 수정을 클릭하고 새 컨트롤 ID를 입력합니다.

  6. 컨트롤 유형으로 양방향 동의어 컨트롤을 선택합니다.

  7. 계속을 클릭하여 트리거 섹션으로 이동하세요.

  8. 선택사항: 기간 추가 버튼을 클릭하여 이 컨트롤을 적용할 수 있는 시간 범위를 하나 이상 추가합니다.

  9. 계속을 클릭하여 작업 섹션으로 이동합니다.

  10. 동의어 필드에 서로 동의어로 사용할 2~100개의 검색어(예: shirttop)를 입력합니다.

    이러한 검색어 중 하나라도 쿼리에 포함되어 있으면 다른 검색어가 포함된 검색어의 동의어로 간주됩니다.

  11. 계속을 클릭하여 서빙 구성 섹션으로 이동합니다.

  12. 컨트롤을 적용할 서빙 구성을 선택합니다.

  13. 컨트롤 설정을 제출합니다.

    새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

컨트롤 페이지의 제공 컨트롤 탭에 새 컨트롤이 나열됩니다.

curl

요청 본문에 포함된 제어 ID와 Control의 인스턴스를 사용하여 Control.create 요청을 실행합니다.

필드 세부정보는 Controls API 참조Controls.create API 참조를 확인하세요.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                    ]
                },
                "twoWaySynonymAction": {
                  "synonyms": [
                    "SYNONYM_1",
                    "SYNONYM_2"
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

서빙 구성에 컨트롤을 추가하려면 ServingConfig.addControl 메서드를 사용합니다. 서빙 구성에 인라인으로 컨트롤 추가를 참조하세요.

단방향 동의어 컨트롤 만들기

이 컨트롤 유형에 대한 상세 설명은 단방향 동의어 컨트롤을 참조하세요.

상품 판매 콘솔

  1. 관리자가 제공한 URL을 클릭합니다. Sign in을 클릭합니다.

    그러면 상품화 콘솔컨트롤 페이지로 이동합니다.

  2. 컨트롤 만들기를 클릭합니다.

  3. 최종 사용자의 목표와 필요한 시간을 정의합니다. 모든 질문에 답변해야 합니다. 다음을 클릭합니다.

  4. 컨트롤을 선택합니다. 컨트롤 이름을 입력하고 검색 제품을 선택한 다음 컨트롤 유형 동의어를 선택합니다.

  5. 단방향 동의어 컨트롤을 구성합니다.

    1. 트리거에서 관련 검색어에 기준(예: contains 또는 not in range)을 지정하여 이 제어를 트리거하는 카탈로그 속성을 정의합니다. 카탈로그 속성이 구성되지 않은 경우 이 컨트롤이 항상 적용됩니다.

    2. 기간을 입력하여 해당 기간을 정의합니다. 지정된 기간 중 하나라도 충족되면 카탈로그 속성이 지정된 기간 동안 쿼리와 일치합니다. 기간 추가를 사용하여 기간을 추가합니다.

    3. 이 컨트롤로 트리거할 동의어 유형을 정의합니다. 단방향을 선택합니다. 동의어 유형에 관한 자세한 내용은 동의어 섹션을 참고하세요.

  6. 제출을 클릭합니다. 그러면 세부적인 단방향 동의어 구성 화면으로 이동합니다.

  7. 단방향 동의어 작업 아래의 필드에 동의어를 입력합니다. 이 작업은 검색 결과에서 동일하게 처리되도록 단어를 단방향으로 연결합니다. 따라서 빨간색 소파 검색어에는 진홍색 소파가 포함되지만 진홍색 소파 검색어에는 다른 유형의 빨간색 소파가 반환되지 않으므로 결과가 진홍색 소파로만 제한됩니다.

  8. 제출을 다시 클릭하여 승인자에게 제어 요청을 보냅니다. 제출된 요청의 상태는 Merchandising Console에서 확인할 수 있습니다. 마음이 바뀌면 관리 요청을 삭제할 수 있습니다.

Cloud 콘솔

  1. Search for Commerce 콘솔의 컨트롤 페이지로 이동합니다.

    컨트롤 페이지로 이동

  2. 서빙 컨트롤 탭에서 컨트롤 만들기를 클릭합니다.

    컨트롤 만들기 창이 열립니다.

  3. 환경설정 섹션의 컨트롤 이름 필드에 새 컨트롤의 이름을 입력합니다.

  4. 선택사항: 자동으로 생성된 컨트롤 ID를 변경하려면 수정을 클릭하고 새 컨트롤 ID를 입력합니다.

  5. 제어 유형으로 단방향 동의어 컨트롤을 선택합니다.

  6. 계속을 클릭하여 트리거 섹션으로 이동하세요.

  7. 선택사항: 기간 추가 버튼을 클릭하여 이 컨트롤을 적용할 수 있는 시간 범위를 하나 이상 추가합니다.

  8. 계속을 클릭하여 작업 섹션으로 이동합니다.

  9. 검색어 필드에 동의어가 쿼리에 포함될 때 동의어가 연관되어야 할 검색어(예: shoes)를 입력합니다.

  10. 동의어 필드에 지정한 검색어의 동의어로 사용할 검색어를 입력합니다(예: sneakerssandals를 검색어 shoes의 단방향 동의어로 사용).

  11. 계속을 클릭하여 서빙 구성 섹션으로 이동합니다.

  12. 컨트롤을 적용할 서빙 구성을 선택합니다.

  13. 컨트롤 설정을 제출합니다.

    새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

컨트롤 페이지의 제공 컨트롤 탭에 새 컨트롤이 나열됩니다.

curl

요청 본문에 포함된 제어 ID와 Control의 인스턴스를 사용하여 Control.create 요청을 실행합니다.

필드 세부정보는 Controls API 참조Controls.create API 참조를 확인하세요.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "oneWaySynonymAction": {
                  "synonyms": [
                    "queryTerms": [
                      "QUERY_TERM_1",
                      "QUERY_TERM_2"
                    ],
                    "synonyms": [
                      "SYNONYM_1",
                      "SYNONYM_2"
                    ]
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

서빙 구성에 컨트롤을 추가하려면 ServingConfig.addControl 메서드를 사용하세요.

연관 금지 컨트롤 만들기

이 컨트롤 유형에 대한 상세 설명은 연관 금지 컨트롤을 참조하세요.

상품 판매 콘솔

  1. 관리자가 제공한 URL을 클릭합니다. Sign in을 클릭합니다.

    그러면 상품화 콘솔컨트롤 페이지로 이동합니다.

  2. 컨트롤 만들기를 클릭합니다.

  3. 최종 사용자의 목표와 필요한 시간을 정의합니다. 모든 질문에 답변해야 합니다. 다음을 클릭합니다.

  4. 컨트롤을 선택합니다. 컨트롤 이름을 입력하고 검색 제품을 선택한 다음 컨트롤 유형 연결하지 않음을 선택합니다.

  5. 연결 금지 컨트롤을 구성합니다.

    1. 트리거에서 관련 검색어에 기준(예: contains 또는 not in range)을 지정하여 이 제어를 트리거하는 카탈로그 속성을 정의합니다. 카탈로그 속성이 구성되지 않은 경우 이 컨트롤이 항상 적용됩니다.

    2. 기간을 입력하여 해당 기간을 정의합니다. 지정된 기간 중 하나라도 충족되면 카탈로그 속성이 지정된 기간 동안 쿼리와 일치합니다. 기간 추가를 사용하여 기간을 추가합니다.

    3. 연결하지 않을 작업에서 이전 트리거 섹션에 입력한 검색어와 연결해서는 안 되는 검색어를 지정합니다. 검색어 및 연결 해제된 검색어 필드에 각각 입력합니다.

  6. 제출을 클릭하여 승인자에게 제어 요청을 보냅니다. 제출된 요청의 상태는 Merchandising Console에서 확인할 수 있습니다. 마음이 바뀌면 관리 요청을 삭제할 수 있습니다.

Cloud 콘솔

  1. Search for Commerce 콘솔의 컨트롤 페이지로 이동합니다.

    컨트롤 페이지로 이동

  2. 서빙 컨트롤 탭에서 컨트롤 만들기를 클릭합니다.

    컨트롤 만들기 창이 열립니다.

  3. 환경설정 섹션의 컨트롤 이름 필드에 새 컨트롤의 이름을 입력합니다.

  4. 선택사항: 자동으로 생성된 컨트롤 ID를 변경하려면 수정을 클릭하고 새 컨트롤 ID를 입력합니다.

  5. 컨트롤 유형으로 컨트롤을 연관하지 않음을 선택합니다.

  6. 계속을 클릭하여 트리거 섹션으로 이동하세요.

  7. 선택사항: 기간 추가 버튼을 클릭하여 이 컨트롤을 적용할 수 있는 시간 범위를 하나 이상 추가합니다.

  8. 계속을 클릭하여 작업 섹션으로 이동합니다.

  9. 검색어 필드에 명시적으로 다른 쿼리와 구별할 검색어(예: gShoe)를 입력합니다.

  10. 연결 해제된 검색어 필드에 검색 결과와 연결 해제할 검색어와 지정한 검색어를 입력합니다.

    예를 들어 검색어 cheap와 검색어 gShoe를 연결 해제할 수 있습니다.

  11. 계속을 클릭하여 서빙 구성 섹션으로 이동합니다.

  12. 컨트롤을 적용할 서빙 구성을 선택합니다.

  13. 컨트롤 설정을 제출합니다.

    새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

컨트롤 페이지의 제공 컨트롤 탭에 새 컨트롤이 나열됩니다.

curl

요청 본문에 포함된 제어 ID와 Control의 인스턴스를 사용하여 Control.create 요청을 실행합니다.

필드 세부정보는 Controls API 참조Controls.create API 참조를 확인하세요.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "doNotAssociateAction": {
                    "queryTerms": [
                      "QUERY_TERM_1",
                      "QUERY_TERM_2"
                    ],
                    "doNotAssociateTerms": [
                      "DISSOCIATED_TERM_1",
                      "DISSOCIATED_TERM_2"
                    ]
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

서빙 구성에 컨트롤을 추가하려면 ServingConfig.addControl 메서드를 사용하세요.

무시 컨트롤 만들기

이 컨트롤 유형에 대한 상세 설명은 무시 컨트롤을 참조하세요.

상품 판매 콘솔

  1. 관리자가 제공한 URL을 클릭합니다. Sign in을 클릭합니다.

    그러면 상품화 콘솔컨트롤 페이지로 이동합니다.

  2. 컨트롤 만들기를 클릭합니다.

  3. 최종 사용자의 목표와 필요한 시간을 정의합니다. 모든 질문에 답변해야 합니다. 다음을 클릭합니다.

  4. 컨트롤을 선택합니다. 컨트롤 이름을 입력하고 검색 제품을 선택한 다음 컨트롤 유형 무시를 선택합니다.

  5. 무시 컨트롤을 구성합니다.

    1. 트리거에서 관련 검색어에 기준(예: contains 또는 not in range)을 지정하여 이 제어를 트리거하는 카탈로그 속성을 정의합니다. 카탈로그 속성이 구성되지 않은 경우 이 컨트롤이 항상 적용됩니다.

    2. 기간을 입력하여 해당 기간을 정의합니다. 지정된 기간 중 하나라도 충족되면 카탈로그 속성이 지정된 기간 동안 쿼리와 일치합니다. 기간 추가를 사용하여 기간을 추가합니다.

    3. 작업 무시에 무시하려는 검색어를 입력합니다.

  6. 제출을 클릭하여 승인자에게 제어 요청을 제출합니다. 제출된 요청의 상태는 Merchandising Console에서 확인할 수 있습니다. 마음이 바뀌면 관리 요청을 삭제할 수 있습니다.

Cloud 콘솔

  1. Search for Commerce 콘솔의 컨트롤 페이지로 이동합니다.

    컨트롤 페이지로 이동

  2. 서빙 컨트롤 탭에서 컨트롤 만들기를 클릭합니다.

    컨트롤 만들기 창이 열립니다.

  3. 환경설정 섹션의 컨트롤 이름 필드에 새 컨트롤의 이름을 입력합니다.

  4. 선택사항: 자동으로 생성된 컨트롤 ID를 변경하려면 수정을 클릭하고 새 컨트롤 ID를 입력합니다.

  5. 컨트롤 유형으로 컨트롤을 연관하지 않음을 선택합니다.

  6. 계속을 클릭하여 트리거 섹션으로 이동하세요.

  7. 선택사항: 기간 추가 버튼을 클릭하여 이 컨트롤을 적용할 수 있는 시간 범위를 하나 이상 추가합니다.

  8. 계속을 클릭하여 작업 섹션으로 이동합니다.

  9. 검색어 무시 필드에 검색어가 입력될 때 검색에서 무시할 검색어를 입력합니다(예: shoddy).

  10. 계속을 클릭하여 서빙 구성 섹션으로 이동합니다.

  11. 컨트롤을 적용할 서빙 구성을 선택합니다.

  12. 컨트롤 설정을 제출합니다.

    새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

컨트롤 페이지의 제공 컨트롤 탭에 새 컨트롤이 나열됩니다.

curl

요청 본문에 포함된 제어 ID와 Control의 인스턴스를 사용하여 Control.create 요청을 실행합니다.

필드 세부정보는 Controls API 참조Controls.create API 참조를 확인하세요.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "ignoreAction": {
                  "ignoreTerms": [
                      "IGNORE_TERM_1",
                      "IGNORE_TERM_2"
                    ]
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

서빙 구성에 컨트롤을 추가하려면 ServingConfig.addControl 메서드를 사용하세요.

대체 컨트롤 만들기

이 컨트롤 유형에 대한 상세 설명은 대체 컨트롤을 참조하세요.

상품 판매 콘솔

  1. 관리자가 제공한 URL을 클릭합니다. Sign in을 클릭합니다.

    그러면 상품화 콘솔컨트롤 페이지로 이동합니다.

  2. 컨트롤 만들기를 클릭합니다.

  3. 최종 사용자의 목표와 필요한 시간을 정의합니다. 모든 질문에 답변해야 합니다. 다음을 클릭합니다.

  4. 컨트롤을 선택합니다. 컨트롤 이름을 입력하고 검색 제품을 선택한 다음 컨트롤 유형 대체를 선택합니다.

  5. 대체 컨트롤을 구성합니다.

    1. 트리거에서 관련 검색어에 기준(예: contains 또는 not in range)을 지정하여 이 제어를 트리거하는 카탈로그 속성을 정의합니다. 카탈로그 속성이 구성되지 않은 경우 이 컨트롤이 항상 적용됩니다.

    2. 기간을 입력하여 해당 기간을 정의합니다. 지정된 기간 중 하나라도 충족되면 카탈로그 속성이 지정된 기간 동안 쿼리와 일치합니다. 기간 추가를 사용하여 기간을 추가합니다.

    3. 대체 작업에서 첫 번째 필드에 대체할 검색어를 정의하고 두 번째 필드에 대체 검색어를 정의합니다.

  6. 제출을 클릭하여 승인자에게 제어 요청을 보냅니다. 제출된 요청의 상태는 Merchandising Console에서 확인할 수 있습니다. 마음이 바뀌면 관리 요청을 삭제할 수 있습니다.

Cloud 콘솔

  1. Search for Commerce 콘솔의 컨트롤 페이지로 이동합니다.

    컨트롤 페이지로 이동

  2. 서빙 컨트롤 탭에서 컨트롤 만들기를 클릭합니다.

    컨트롤 만들기 창이 열립니다.

  3. 환경설정 섹션의 컨트롤 이름 필드에 새 컨트롤의 이름을 입력합니다.

  4. 선택사항: 자동으로 생성된 컨트롤 ID를 변경하려면 수정을 클릭하고 새 컨트롤 ID를 입력합니다.

  5. 대체 컨트롤을 제어 유형으로 선택합니다.

  6. 계속을 클릭하여 트리거 섹션으로 이동하세요.

  7. 선택사항: 기간 추가 버튼을 클릭하여 이 컨트롤을 적용할 수 있는 시간 범위를 하나 이상 추가합니다.

  8. 계속을 클릭하여 작업 섹션으로 이동합니다.

  9. 검색어 필드에 대체 검색어로 대체할 검색어(예: gShoe)를 입력합니다.

  10. 대체 용어 필드에 지정한 검색어를 대체할 검색어를 입력합니다.

    예를 들어 검색어 gShoe를 대체 검색어 Google Shoe로 바꿀 수 있습니다.

  11. 계속을 클릭하여 서빙 구성 섹션으로 이동합니다.

  12. 컨트롤을 적용할 서빙 구성을 선택합니다.

  13. 컨트롤 설정을 제출합니다.

    새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

컨트롤 페이지의 제공 컨트롤 탭에 새 컨트롤이 나열됩니다.

curl

요청 본문에 포함된 제어 ID와 Control의 인스턴스를 사용하여 Control.create 요청을 실행합니다.

필드 세부정보는 Controls API 참조Controls.create API 참조를 확인하세요.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "replacementAction": {
                    "queryTerms": [
                      "QUERY_TERM_1",
                      "QUERY_TERM_2"
                    ],
                    "replacementTerm": "REPLACEMENT_TERM"
                  }
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

서빙 구성에 컨트롤을 추가하려면 ServingConfig.addControl 메서드를 사용하세요.

고정 컨트롤 만들기

고정 컨트롤을 만들려면 다음 단계를 따르세요.

상품 판매 콘솔

  1. 관리자가 제공한 URL을 클릭합니다. Sign in을 클릭합니다.

    그러면 상품화 콘솔컨트롤 페이지로 이동합니다.

  2. 컨트롤 만들기를 클릭합니다.

  3. 최종 사용자의 목표와 필요한 시간을 정의합니다. 모든 질문에 답변해야 합니다. 다음을 클릭합니다.

  4. 컨트롤을 선택합니다. 컨트롤 이름을 입력하고 검색 제품을 선택한 다음 컨트롤 유형 고정을 선택합니다.

  5. 고정 컨트롤을 구성합니다.

    1. 트리거에서 관련 검색어에 기준(예: contains 또는 not in range)을 지정하여 이 제어를 트리거하는 카탈로그 속성을 정의합니다. 카탈로그 속성이 구성되지 않은 경우 이 컨트롤이 항상 적용됩니다.

    2. 기간을 입력하여 해당 기간을 정의합니다. 지정된 기간 중 하나라도 충족되면 카탈로그 속성이 지정된 기간 동안 쿼리와 일치합니다. 기간 추가를 사용하여 기간을 추가합니다.

    3. 이 컨트롤로 트리거할 고정 작업을 정의합니다. 이러한 작업은 제품 ID 및 핀 위치 (120 이하의 숫자, 일반적인 페이지 크기)로 정의됩니다. 제품 추가를 클릭하여 최대 10개까지 추가할 수 있습니다.

  6. 제출을 클릭하여 승인자에게 제어 요청을 제출합니다. 제출된 요청의 상태는 Merchandising Console에서 확인할 수 있습니다. 마음이 바뀌면 관리 요청을 삭제할 수 있습니다.

Cloud 콘솔

  1. Search for Commerce 콘솔의 컨트롤 페이지로 이동합니다.

    컨트롤 페이지로 이동

  2. 서빙 컨트롤 탭에서 컨트롤 만들기를 클릭합니다.

    컨트롤 만들기 창이 열립니다.

  3. 환경설정 섹션의 컨트롤 이름 필드에 새 컨트롤의 이름을 입력합니다.

  4. 선택사항: 자동으로 생성된 컨트롤 ID를 변경하려면 수정을 클릭하고 새 컨트롤 ID를 입력합니다.

  5. 제품 선택 섹션에서 검색 또는 둘러보기를 선택합니다.

  6. 컨트롤 유형으로 고정 컨트롤을 선택합니다. 계속을 클릭합니다.

  7. 트리거 섹션에서 이 컨트롤을 트리거하는 사용자 동작을 선택합니다.

    • 카테고리 탐색: 탐색 요청에는 search.request.query가 비어 있는 것 외에도 page_categories 필드가 채워져 있어야 합니다.

    • 검색: 검색 요청에는 search.request.query만 채워야 합니다.

      기본적으로 탐색한 모든 카테고리와 검색한 모든 검색어가 이 컨트롤을 트리거합니다.

  8. 선택사항: 탐색한 특정 카테고리나 검색한 쿼리에 따라 규칙을 트리거하는 조건을 설정합니다.

    • 카테고리 찾아보기: 카테고리 입력란에 컨트롤을 트리거하는 카테고리를 입력합니다.

    • 검색: 필터링할 검색어 (예: running shoes)를 추가하려면 검색어 추가를 클릭합니다. 각 검색어에 대해 부분 일치 또는 전체 일치를 선택합니다.

  9. 선택사항: 기간 추가 또는 기간 추가를 클릭하여 이 컨트롤을 적용할 수 있는 기간을 하나 이상 추가합니다.

  10. 계속을 클릭하여 작업 섹션으로 이동합니다. 고정 위치의 경우 슬라이더를 사용하여 제품을 고정할 위치를 지정합니다. 고정 값 슬라이더는 0, 음수 또는 정수가 아닌 값을 허용하지 않습니다.

    상거래용 Vertex AI Search에서는 단일 컨트롤의 핀 맵에 10개의 핀을 허용합니다. 위치는 1과 120 (최대 요청 페이지 크기) 사이의 값이 될 수 있습니다.

  11. 계속을 클릭하여 서빙 구성 섹션으로 이동합니다. 컨트롤을 적용할 서빙 구성을 선택하고 컨트롤 설정을 제출합니다.

    새로 생성되거나 업데이트된 컨트롤이 실시간 트래픽을 처리할 준비가 될 때까지 몇 분 정도 걸립니다. 콘솔 평가 페이지에서 변경사항이 적용되었는지 테스트할 수 있습니다.

컨트롤 페이지의 서빙 컨트롤 탭에 새 컨트롤이 나열됩니다.

curl

요청 본문에 포함된 제어 ID와 Control의 인스턴스를 사용하여 Control.create 요청을 실행합니다.

필드 세부정보는 Controls API 참조Controls.create API 참조를 확인하세요.

curl -X POST \
 -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
 -H "Content-Type: application/json; charset=utf-8" \
 -H "X-Goog-User-Project: PROJECT_NUMBER" \
 --data '{
          "displayName": "DisplayName",
          "solutionTypes": "SOLUTION_TYPE_SEARCH",
          "searchSolutionUseCase": ["SEARCH_SOLUTION_USE_CASE_SEARCH"],
     "rule": {
            "condition": {
 "queryTerms": [
                {
                  "value": "Term1",
                  "fullMatch": "boolean: true / false"
                },
                {
                  "value": "Term2",
                  "fullMatch": "boolean: true / false"
                },
             ],
             "activeTimeRange": [
               {
                 "startTime": timestamp1,
                 "endTime": timestamp2
               },
               {
                 "startTime": timestamp3,
                 "endTime": timestamp4
               }
             ]
            },
            "pinAction": {
               "pinMap" :  {
                        "pin_position1": "product_id",
                      "pin_position2": "product_id>"
                    }
            }
              }
}' \
"https://retail.googleapis.com/v2alpha/projects/PROJECT_NUMBER/locations/LOCATION/catalogs/default_catalog/controls?controlId=CONTROL_ID"

pin_position은 [1,10] 사이의 정수여야 하며 product_id은 카탈로그에 있어야 합니다. 핀 맵에서 허용되는 최대 요소 수는 컨트롤당 10개입니다.

그런 다음 고정 컨트롤을 서빙 구성에 연결합니다.

curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-H "X-Goog-User-Project: PROJECT_NUMBER" \
-d '{
      "controlId": "CONTROL_ID"
  }' \
'https://retail.googleapis.com/v2alpha/projects/PROJECT_NUMBER/locations/LOCATION/catalogs/default_catalog/servingConfigs/SERVING_CONFIG_ID:addControl'

이 경우 CONTROL_ID는 이전에 만든 고정 컨트롤 id여야 합니다.

서빙 구성에 컨트롤을 추가하려면 ServingConfig.addControl 메서드를 사용하세요.

마지막으로 설정을 테스트하려면 검색 요청을 합니다. 요청에 고정 컨트롤이 제대로 적용되도록 하려면 이전 단계에서 만든 컨트롤에 제공된 검색어 (검색) 또는 페이지 카테고리 (탐색)를 사용합니다.

Cloud 콘솔

  1. Search for Commerce 콘솔의 평가 페이지로 이동합니다.

    평가 페이지로 이동

  2. 검색 탭으로 이동합니다.

  3. 검색어 필드에 테스트 검색어를 입력합니다.

  4. 검색 미리보기를 클릭합니다.

  5. 결과를 확인하여 선택한 제품이 고정되었는지 확인합니다.

curl

curl -s -X POST -H "Authorization: Bearer " -H "Content-Type: application/json"
--data "{'query': '','visitorId': ''}" \ "https://retail.googleapis.com/v2/projects/PROJECT/locations/global/catalogs/CATALOG/placements/default_search:search"

오류 검사 제약조건

오류 검사의 경우 다음 제약 조건에 유의하세요.

  • 두 제품을 동일한 위치에 고정할 수 없습니다. 즉, 제품 'a'와 'b'가 모두 2번 위치를 차지할 수 없습니다.
  • 반대로 하나의 제품을 두 개 이상의 위치에 고정할 수는 없습니다. 즉, 동일한 검색어에 대해 제품 'a'를 동시에 2번과 3번 위치에 고정할 수는 없습니다.
  • 필터나 정렬이 적용되지 않는다고 가정하면 product_id는 카탈로그에 제품으로 존재해야 합니다.