从 s3 导入文件到 jupyterlabs

Importing a file into jupyterlabs from s3

我有一个文件要导入到 Sagemaker Jupyter notebook python 3 实例中使用。确切的代码是 'import lstm.' 我可以将文件存储在 s3(这可能是理想的)或本地,无论你喜欢哪个。我已经在互联网上搜索了一段时间,但一直找不到解决方案。实际上,我只是想 run/understand 来自 Suraj Raval 的 youtube 频道的这段代码:https://github.com/llSourcell/Bitcoin_Trading_Bot。当我 运行 时,'import lstm' 行失败了,我正试图弄清楚如何让它工作。

我试过: 从 s3://... 导入 lstm。失败的 我尝试了一些 boto3 方法,但无法使其正常工作。

import time
import threading
import lstm, etl, json. ##this line
import numpy as np
import pandas as pd
import h5py
import matplotlib.pyplot as plt
configs = json.loads(open('configs.json').read())
tstart = time.time()

我希望能够将 lstm 文件和所有其他文件导入 Jupyter 笔记本实例。

我认为您应该在 SageMaker 实例中克隆 Github 存储库,而不是从 S3 导入文件。我能够通过克隆从 SageMaker 复制比特币交易机器人笔记本。您可以按照以下步骤

克隆 Github 回购到 SageMaker Notebook

  1. 从 AWS SageMaker 控制台打开 JupyterLab。
  2. 从 JupyterLab 启动器,打开终端。
  3. 将目录更改为 SageMaker
cd ~/SageMaker
  1. 克隆比特币交易机器人git repo
git clone https://github.com/llSourcell/Bitcoin_Trading_Bot.git
cd Bitcoin_Trading_Bot
  1. 现在你可以打开笔记本 Bitcoin LSTM Prediction.ipynb 和 select Tensorflow 内核到 运行 笔记本。

将文件从本地机器添加到 SageMaker Notebook

要将文件从本地计算机添加到 SageMaker Notebook 实例,您可以使用 JupyterLabfile upload 中的功能

将文件从 S3 添加到 SageMaker Notebook

要将文件从 S3 添加到 SageMaker Notebook 实例,请使用 AWS CLI 或 Python SDK 到 upload/download 文件。

例如,使用 AWS CLI 从 S3 下载 lstm.py 文件到 SageMaker

aws s3 cp s3://mybucket/bot/src/lstm.py .

使用boto3API

import boto3
s3 = boto3.resource('s3')
s3.meta.client.download_file('mybucket', 'bot/src/lstm.py', './lstm.py')