我试图使用以下代码从Lambda运行一个木星笔记本,它使用的是造纸机:
import os
import boto3
import subprocess
# to add paths
import sys
# pip install custom package to /tmp/ and add to path
subprocess.call('pip install papermill -t /tmp/ --no-cache-dir'.split(), stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
sys.path.insert(1, '/tmp/')
# papermill to execute notebook
import papermill as pm
def lambda_handler(event, context):
s3 = boto3.resource('s3')
print('Here')
s3.meta.client.download_file("testappend","ForTrigger.ipynb", "/tmp/juptest.ipynb")
print('Here')
pm.execute_notebook('/tmp/juptest.ipynb', '/tmp/juptest_output.ipynb', kernel_name='python3')
print('Here')
s3_client.upload_file("/tmp/juptest_output.ipynb", "testappend","temp/ForTriggerOutput.ipynb") 程序抛出此错误:
"errorMessage": "No such kernel named python3",
"errorType": "NoSuchKernel"我不知道如何找到可用内核的列表。请帮忙,
提前谢谢。
发布于 2021-02-28 05:33:16
我看到你的函数中有代码可以只安装造纸机。默认情况下,纸厂只需要安装jupyter和ipykernel,这是其依赖关系的一部分,并且不包括python3内核。在init代码中添加一个显式的ipykernel安装。
pip3 install ipykernel这里是运行木星笔记本的另一种方式,它使用造纸机作为无服务器功能。你可能会发现这很有用。
https://stackoverflow.com/questions/65244170
复制相似问题