기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
OpenSearch 쿼리에 플러그인 적용
personalized_search_ranking
응답 프로세서로 검색 파이프라인을 구성했으면 Amazon Personalize Search Ranking 플러그인을 OpenSearch 쿼리에 적용하고 순위가 다시 매겨진 결과를 볼 수 있습니다.
OpenSearch 쿼리에 플러그인을 적용할 때 검색 파이프라인의 지표를 얻어 플러그인을 모니터링할 수 있습니다. 자세한 정보는 플러그인 모니터링을 참조하세요.
Amazon OpenSearch 서비스 쿼리에 플러그인 적용
Amazon Personalize 검색 순위 플러그인을 색인에 대한 모든 쿼리와 응답에 적용할 수 있습니다. 플러그인을 개별 쿼리 및 응답에 적용할 수도 있습니다.
-
다음 Python 코드를 사용하면 검색 파이프라인을 색인에 적용할 수 있습니다. 이 접근 방식을 사용하면 이 색인을 사용하는 모든 검색에서 플러그인을 사용하여 검색 결과에 개인 맞춤을 적용합니다.
import requests from requests_auth_aws_sigv4 import AWSSigV4 domain_endpoint = '
domain endpoint
' index = 'index name
' url = f'{domain_endpoint}/{index}/_settings/' auth = AWSSigV4('es') headers = {'Content-Type': 'application/json'} body = { "index.search.default_pipeline": "pipeline name
" } try: response = requests.put(url, auth=auth, json=body, headers=headers) print(response.text) except Exception as e: print(f"Error: {e}") -
다음 Python 코드를 사용하면 Toyota 브랜드 자동차에 대한 개별 쿼리에 검색 파이프라인을 적용할 수 있습니다.
코드를 업데이트하여 도메인 엔드포인트, OpenSearch 서비스 인덱스, 파이프라인 이름, 쿼리를 지정합니다.
user_id
에, 검색 결과를 얻으려는 사용자의 ID를 지정합니다. 이 사용자는 Amazon Personalize 솔루션 버전을 생성하는 데 사용한 데이터에 포함되어 있어야 합니다. 사용자가 없는 경우 Amazon Personalize는 인기도에 따라 항목의 순위를 매깁니다.상황별 메타데이터를 사용하는 경우
context
에 장치 유형과 같은 사용자의 상황별 메타데이터를 제공합니다.context
필드는 선택 사항입니다. 자세한 정보는 상황별 메타데이터로 추천 관련성 높이기을 참조하세요.import requests from requests_auth_aws_sigv4 import AWSSigV4 domain_endpoint = '
domain endpoint
' index = 'index name
' url = f'{domain_endpoint}/{index}/_search/' auth = AWSSigV4('es') headers = {'Content-Type': 'application/json'} params = {"search_pipeline": "pipeline-name
"} body = { "query": { "multi_match": { "query": "Toyota
", "fields": ["BRAND
"] } }, "ext": { "personalize_request_parameters": { "user_id": "USER ID
" "context": { "DEVICE
" : "mobile phone
" } } } } try: response = requests.post(url, auth=auth, params=params, json=body, headers=headers, verify=False) print(response) except Exception as e: print(f"Error: {e}")
오픈소스의 쿼리에 플러그인 적용 OpenSearch
Amazon Personalize 검색 순위 플러그인을 색인에 대한 모든 쿼리와 응답에 적용할 수 있습니다. OpenSearch 플러그인을 개별 OpenSearch 쿼리 및 응답에 적용할 수도 있습니다.
-
다음 curl 명령은 로컬에서 실행되는 오픈 소스 OpenSearch 클러스터의 OpenSearch 인덱스에 검색 파이프라인을 적용합니다. 이 접근 방식을 사용하면 이 색인의 모든 검색이 플러그인을 사용하여 검색 결과에 개인 맞춤을 적용합니다.
curl -XGET "https://localhost:9200/
index
/_settings" -ku 'admin:admin' --insecure -H 'Content-Type: application/json' -d' { "index.search.default_pipeline" : "pipeline-name
" } ' -
다음 curl 명령은 로컬에서 실행되는 오픈 소스 OpenSearch 클러스터의 인덱스에 있는 Toyota 브랜드 자동차에 대한 개별 쿼리에 검색 파이프라인을 적용합니다.
user_id
에, 검색 결과를 얻으려는 사용자의 ID를 지정합니다. 이 사용자는 Amazon Personalize 솔루션 버전을 생성하는 데 사용한 데이터에 포함되어 있어야 합니다. 사용자가 없는 경우 Amazon Personalize는 인기도에 따라 항목의 순위를 매깁니다. 상황별 메타데이터를 사용하는 경우context
에 장치 유형과 같은 사용자의 상황별 메타데이터를 제공합니다.context
필드는 선택 사항입니다. 자세한 정보는 상황별 메타데이터로 추천 관련성 높이기을 참조하세요.curl -XGET "http://localhost:9200/
index
/_search?search_pipeline=pipeline-name
" -ku 'admin:admin' --insecure -H 'Content-Type: application/json' -d' { "query": { "multi_match": { "query": "Toyota", "fields": ["BRAND"] } }, "ext": { "personalize_request_parameters": { "user_id": "user ID
", "context": { "DEVICE
" : "mobile phone
" } } } } '
결과 순위가 다시 매겨지는 방식을 이해하기 위해 OpenSearch 대시보드를 사용하여 플러그인을 사용하여 순위가 다시 매겨진 OpenSearch 결과와 결과를 비교할 수 있습니다. 자세한 정보는 OpenSearch 결과를 플러그인 결과와 비교을 참조하세요.
플러그인을 OpenSearch 쿼리에 적용하면 파이프라인의 메트릭을 가져와 플러그인을 모니터링할 수 있습니다. OpenSearch 자세한 정보는 플러그인 모니터링을 참조하세요.