

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon OpenSearch Service를 사용하여 파이프라인 생성
<a name="managed-opensearch-plugin-pipeline-example"></a>

[Amazon Personalize Search Ranking 플러그인을 설치](open-search-install-managed.md)했으면 이제 OpenSearch 검색 파이프라인을 생성하여 플러그인을 구성할 준비가 된 것입니다.

검색 파이프라인은 생성한 순서대로 순차적으로 실행되는 요청 및 응답 프로세서 세트입니다.** 플러그인용 검색 파이프라인을 생성할 때 `personalized_search_ranking`응답 프로세서를 지정합니다. 검색 파이프라인에 대한 자세한 내용은 [검색 파이프라인](https://opensearch.org/docs/latest/search-plugins/search-pipelines/index/) 단원을 참조하세요.

`personalized_search_ranking` 응답 프로세서를 사용하여 검색 파이프라인을 만들고 나면 OpenSearch 쿼리에 플러그인을 적용할 준비가 된 것입니다. OpenSearch 색인 또는 개별 OpenSearch 쿼리에 적용할 수 있습니다. 자세한 내용은 [플러그인 적용](managed-apply-plugin.md) 섹션을 참조하세요.

다음 Python 코드를 사용하면 OpenSearch 서비스 도메인에 `personalized_search_ranking`응답 프로세서가 있는 검색 파이프라인을 만들 수 있습니다. `domain endpoint`을 도메인 엔드포인트 URL로 바꿉니다. 예를 들면 `https://<domain name>.<AWS region>.es-staging.amazonaws.com`입니다. 각 `personalized_search_ranking` 파라미터에 대한 자세한 설명은 [`personalized_search_ranking` 응답 프로세서에 대한 필드](opensearch-plugin-pipeline-fields.md) 섹션을 참조하세요.

```
import requests
from requests_auth_aws_sigv4 import AWSSigV4

domain_endpoint = 'domain endpoint'
pipeline_name = 'pipeline name'
url = f'{domain_endpoint}/_search/pipeline/{pipeline_name}'
auth = AWSSigV4('es')

headers = {'Content-Type': 'application/json'}

body = {
  "description": "A pipeline to apply custom re-ranking from Amazon Personalize",
  "response_processors": [
    {
      "personalized_search_ranking" : {
        "campaign_arn" : "Amazon Personalize Campaign ARN",
        "item_id_field" : "productId",
        "recipe" : "aws-personalized-ranking-v2",
        "weight" : "0.3",
        "tag" : "personalize-processor",
        "iam_role_arn": "Role ARN",
        "aws_region": "AWS region",
        "ignore_failure": true
    }
  ]
}
try:
    response = requests.put(url, auth=auth, json=body, headers=headers, verify=False)
    print(response.text)
except Exception as e:
    print(f"Error: {e}")
```