【问题标题】:How to use AWS Personalize real time campaign invocations from AWS Lambda?如何使用来自 AWS Lambda 的 AWS Personalize 实时活动调用?
【发布时间】:2019-07-25 11:19:40
【问题描述】:

AWS Personalize 是 Amazon 的一项新服务,用于提供个性化推荐。由于该服务尚未集成到 boto3 中,我如何从 Lambda 函数中使用它。 有一种方法可以使用 python 从本地调用它,步骤 3-6 中提到了一些额外的步骤AWS Python SDK

但这涉及下载一些 JSON 并将模型添加到 AWS 服务。

我们将不胜感激!

【问题讨论】:

  • 您应该参考Getting started with aws-personalize in pythonCreating a Campaign - Amazon Personalize 了解如何使用AWS 个性化活动。另外我认为你应该在你的问题中添加更多细节。
  • @NiraliAcharya 我已经参考了文档并且过程很简单,但是 BOTO 3 没有将 AWS Personalize 服务整合到他们的 SDK 中,因此我遇到了问题。我在帖子中提到的步骤(链接中的第 3-6 步)解释了从本地计算机调用活动,但我需要在 Lambda 环境中复制相同的步骤。

标签: python amazon-web-services aws-lambda aws-sdk recommendation-engine


【解决方案1】:

我是这样工作的:

import boto3
import os
import json
import importlib

path = '/tmp/models/personalize-runtime/2018-05-22/'
os.makedirs(path)

BUCKET_NAME = 'personalize-dataset' # replace with your bucket name
KEY = 'personalize-runtime.json' # replace with your object key
FILENAME = '/tmp/models/personalize-runtime/2018-05-22/service-2.json'

s3 = boto3.resource('s3')
s3.Bucket(BUCKET_NAME).download_file(KEY, '/tmp/models/personalize-runtime/2018-05-22/service-2.json')


importlib.reload(boto3)

而且你需要给 lambda 添加一个环境变量:AWS_DATA_PATH == /tmp/models

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-10
    • 2020-09-29
    • 1970-01-01
    • 1970-01-01
    • 2020-07-13
    • 1970-01-01
    • 2021-02-16
    • 2017-12-07
    相关资源
    最近更新 更多