从S3加载sklearn模型而不提供身份验证

时间:2017-04-22 13:46:48

标签: python pandas amazon-s3 scikit-learn pickle

如果一个sklearn模型被腌制并公开上传到S3,有没有办法从那里加载它。假设我有一个叫做模型的存储桶和一个名为truncated_svd.pkl的存储桶中的pickle文件。有没有办法,我可以使用pickle从S3加载我的truncated_svd.pkl文件,而无需提供身份验证。我不想对此进行身份验证的唯一原因是因为此代码需要公开。

1 个答案:

答案 0 :(得分:0)

您需要在S3存储桶中添加存储桶策略,以便任何人都可以使用网址访问您的存储桶。

{
  "Version":"2012-10-17",
  "Statement":[
    {
      "Sid":"AddPerm",
      "Effect":"Allow",
      "Principal": "*",
      "Action":["s3:GetObject"],
      "Resource":["arn:aws:s3:::examplebucket/*"]
    }
  ]
}

见下文

bucket policy location

enter image description here

现在,您可以使用requests模块对该网址发出GET请求,并为您的模型取款。