[当我尝试在AWS SageMaker中运行批处理转换作业时,遇到以下错误:
ImportError:没有名为cv2的模块
[请注意,我能够在笔记本实例中“导入CV2”。 jupter可以在笔记本实例中运行“ import CV2”。但是在推理期间无法在端点上运行它。我已经尝试过使用“ env”作为链接AWS Sagemaker - Install External Library and Make it Persist
的以下方法但是它仍然不起作用。
有人有解决的好方法吗?谢谢!
我的代码是:
env = {
'SAGEMAKER_REQUIREMENTS': 'requirements.txt', # path relative to `source_dir` below.
}
image_embed_model = MXNetModel(model_data=model_data,
entry_point='sagemaker_entrypoint.py',
role=role,
source_dir = 'src',
env = env,
py_version='py3',
framework_version='1.6.0')
transformer = image_embed_model.transformer(instance_count=1, # Please pay attention here!!!
instance_type='ml.m4.xlarge',
output_path=output_path,
assemble_with = 'Line',
accept = 'text/csv'
)
transformer.transform(batch_input,
content_type='text/csv',
split_type='Line',
input_filter='$[0:]',
join_source='Input',
wait=False)
您可以按照https://github.com/aws/sagemaker-python-sdk/blob/master/doc/using_mxnet.rst#use-third-party-libraries将第三方库导入到批量转换实例。打包模型数据之前,请确保require.txt文件保存在正确的目录下。