我想将一个文件导入到Sagemaker的Jupyter笔记本Python 3实例中使用。具体的代码是’import lstm。’我可以将文件存储在S3中(这可能是理想的选择),或者本地存储,随便哪种方式都可以。我已经在网上搜索了一段时间,但一直找不到解决方案。实际上,我只是想运行/理解来自Suraj Raval的YouTube频道的这个代码:https://github.com/llSourcell/Bitcoin_Trading_Bot。当我运行时,’import lstm’这一行失败了,我正在尝试弄清楚如何让它工作。
我尝试过:from s3://… import lstm。失败了。我还尝试了一些boto3方法,但无法使其工作。
import timeimport threadingimport lstm, etl, json. ##这一行import numpy as npimport pandas as pdimport h5pyimport matplotlib.pyplot as pltconfigs = json.loads(open('configs.json').read())tstart = time.time()
我只希望能够将lstm文件和所有其他文件导入到Jupyter笔记本实例中。
回答:
我认为您应该在SageMaker实例中克隆Github仓库,而不是从S3导入文件。我通过克隆成功地在SageMaker中重现了比特币交易机器人笔记本。您可以按照以下步骤进行操作
将Github仓库克隆到SageMaker笔记本
- 从AWS SageMaker控制台打开JupyterLab。
- 从JupyterLab启动器中打开终端。
- 更改目录到SageMaker
cd ~/SageMaker
- 克隆比特币交易机器人git仓库
git clone https://github.com/llSourcell/Bitcoin_Trading_Bot.gitcd Bitcoin_Trading_Bot
- 现在您可以打开笔记本
Bitcoin LSTM Prediction.ipynb
,并选择Tensorflow内核来运行笔记本。
从本地机器添加文件到SageMaker笔记本
要从本地机器向SageMaker笔记本实例添加文件,您可以使用JupyterLab中的文件上传功能
从S3添加文件到SageMaker笔记本
要从S3向SageMaker笔记本实例添加文件,请使用AWS CLI或Python SDK来上传/下载文件。
例如,要使用AWS CLI从S3下载lstm.py
文件到SageMaker
aws s3 cp s3://mybucket/bot/src/lstm.py .
使用boto3
API
import boto3s3 = boto3.resource('s3')s3.meta.client.download_file('mybucket', 'bot/src/lstm.py', './lstm.py')