0

它已經4天了,我正試圖解決這個問題。我在本地機器上創建了我的代碼。在本地機器上創建的Lambda函數工作得很好。當我用aws creating liberaries wit aws中提到的自由工具壓縮它時。並將zip文件夾上傳到S3存儲桶。直到這裏一切工作正常。當我在lambda函數中使用這個鏈接時會出現問題。 lambda函數沒有找到sklearn liberary和返回錯誤sklearn不能在aws lambda函數中工作。部署包問題

START請求ID:bf7b2618-34c5-11e7-a8eb-43a949065813版本:$最新 無法導入模塊「主」:動態模塊沒有定義模塊出口功能(PyInit__check_build)


在/ var /任務/ sklearn的內容/ check_build: setup.py _check_build.so __init .pyc文件 INIT的.py setup.pyc


似乎scikit學習沒有被正確建立。

如果您已經安裝了源scikit學習,請不要忘記 使用之前創建軟件包:在源目錄python setup.py installmake運行。

如果您使用過安裝程序,請檢查它是否適合您的Python版本,操作系統和平臺。

到目前爲止,我已經嘗試了所有可能的方法。當我運行這個命令來建立這個包

蟒蛇的setup.py安裝或建設出現

錯誤CPython的__check_buid失蹤。 它已經4天我嘗試了一切。如果有人知道。請在這裏幫助我。提前感謝您。

+0

[熊貓&AWSλ1的可能的複製(http://stackoverflow.com/questions/36054976/pandas-aws-lambda) –

回答

0

這些可能是相同的問題與psycopg2,熊貓,numpy的和複雜的依賴其他庫 - 你必須從源代碼編譯他們,不在本地,但無論是使用Amazon Linux實例或Amazon Linux的碼頭形象。在AWS文檔的步驟提到它甚至,看點4在文檔:

  • 連接到通過SSH 64位亞馬遜Linux實例。
  • 可以省略這一步驟,並與一些圖書館做本地,像請求或pytz,但更復雜的要求亞馬遜的Linux。

    爲您的特定問題,一步一步溶液中描述here

    +0

    由於亞當,我嘗試了你在逐步解決方案中提到的一個。但在Docker運行映像後無法繼續。圖像無法找到build.sh文件。我莫名其妙手動生成它。但仍然無法正常工作。你可以稍微解釋一下這個庫的本地創建請求,謝謝 –

    +0

    像'requests'這樣的庫你可以'pip install -t/yourlambdadirectory/requests',然後壓縮它們,上傳它們,這樣可以正常工作。對於像熊貓這樣的圖書館,你必須找到在亞馬遜Linux上爲你預編譯的人,或者自己動手。我自己從來沒有這樣做,總是使用預編譯。在[此鏈接](https://github.com/moesy/lambda.service.skeleton)中,您可以嘗試相當近期的熊貓。它基於[這個答案](http://stackoverflow.com/questions/36054976/pandas-aws-lambda)。 我還沒有找到預編譯sklearn壽,對不起。 –