私はPythonを使用してAWSラムダ関数を作成しようとしています。インライン関数の代わりにzipデプロイメントパッケージを作成し、それをAWS環境にアップロードする必要があります。私のソースコードはtest.pyファイルと他の依存関係、例えばnumpy、sklearnなどがソースコードと同じフォルダにあります。AWSラムダビルド外部依存ライブラリをPythonで
ラムダ機能をテストするとエラーが発生します。
モジュール '試験' をインポートすることができません: という名前のモジュールのsklearn .__ check_build._check_build「 ___________________________________________________________________________の/ var /タスク/ sklearn/__ check_buildの内容:setup.py
__pycache__ _check_build.cp36-win_amd64を.pyd __init__.py ___________________________________________________________________________ scikit-learnが正しく構築されていないようです。ソースから scikit-learnをインストールしている場合は、 パッケージを使用する前にビルドすることを忘れないでください。python setup.py install
またはmake
を ソースディレクトリに実行してください。インストーラを使用している場合は、 がPythonバージョン、オペレーティングシステム、 プラットフォームに適していることを確認してください。
は、ここで私は私のソースコードにnumpyのをインポートする場合、私は同様の問題に直面していますtest.py
from sklearn.model_selection import train_test_split
print('Loading function')
def lambda_handler(event, context):
#print("Received event: " + json.dumps(event, indent=2))
print("value1 is " + event['key1'])
print("value2 is " + event['key2'])
print("value3 is " + event['key3'])
return event
に存在する私のpythonのソースコードです。 (マルチアレイをインポートできません)
pip install numpy/scikit-learn -t /path/to/mydir/
を使用してすべてのライブラリをインストールしています。
Here is the folder structure after I use pip install commands
親切に私は問題を解決するのに役立ちます。ありがとう!!
[AWSラムダでScikit-Learnを使用する] – darthsidious