Criar um pipeline com o Amazon OpenSearch Service
Depois de instalar o plug-in Classificação de pesquisas do Amazon Personalize, você poderá configurá-lo criando um pipeline de pesquisas do OpenSearch.
Um pipeline de pesquisa é um conjunto de processadores de solicitação e resposta executados sequencialmente na ordem em que você os criou. Na hora de criar um pipeline para o plug-in, você especifica um processador de respostas de personalized_search_ranking. Acesse Pipelines de pesquisa
Depois de criar um pipeline de busca com um processador de respostas de personalized_search_ranking, você pode a aplicar o plug-in às consultas do OpenSearch. Você pode usá-lo com um índice do OpenSearch ou uma consulta individual do OpenSearch. Para obter mais informações, consulte Aplicar o plug-in.
Você pode usar o código Python a seguir para criar um pipeline de pesquisa com um processador de respostas de personalized_search_ranking em um domínio do OpenSearch Service. Substitua domain endpoint pelo URL do endpoint do seu domínio. Por exemplo: https://<domain
name>.<AWS region>.es-staging.amazonaws.com. Para obter uma explicação completa de cada parâmetro personalized_search_ranking, consulte Campos para o processador de resposta de personalized_search_ranking.
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}")