2016-03-17 160 views
12

是否有人有與AWS Lambda兼容的完全編譯的熊貓版本?熊貓和AWS Lambda

搜索繞了幾個小時後,我似乎無法找到我尋找,並在這個問題上的文件是不存在的。

我需要訪問包lambda函數,但是我一直不成功,在得到包正確地編譯爲一個lambda函數的用法。

代替彙編的任何人都可以提供可重複的步驟來創建二進制文件?

可惜我一直沒能成功複製任何的主題導向的,因爲他們大多是SciPy的,我並不需要,並增加了負擔額外的層結合大熊貓。

+0

檢查在http://stackoverflow.com/a/43766512/345606答案的意見上,包括Python包,像熊貓,已編譯的代碼。 – Kevin

回答

7

經過一番擺弄周圍,谷歌上搜索我是能夠使一切工作和設置,可以只在未來克隆回購的很多的。

關鍵要點:

  1. 所有靜態包一定要在一個亞馬遜EC2 Linux實例
  2. 的Python代碼需要在執行前加載在lib /文件夾中的庫編譯。

Github上回購: https://github.com/moesy/AWS-Lambda-ML-Microservice-Skeleton

+0

@Moe請[標記作爲接受答案之一(http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work) – peralmq

+0

@dsvensson請帶在第二外表回購它從源代碼構建二進制文件。 – Moe

13

我相信你應該能夠使用最新版本的熊貓(或有可能的,一個你的機器上)。你可以自己這樣創建拉姆達包熊貓,

  1. 首先尋找到大熊貓軟件包安裝在您的計算機上打開一蟒蛇終端輸入

    import pandas 
    pandas.__file__ 
    

    應打印像'/usr/local/lib/python3.4/site-packages/pandas/__init__.py'

  2. 現在從該位置複製pandas文件夾(本例中爲'/usr/local/lib/python3.4/site-packages/pandas)並將其放置在存儲庫中。
  3. 包你LAMBDA代碼這樣的熊貓:

    zip -r9 my_lambda.zip pandas/ 
    zip -9 my_lambda.zip my_lambda_function.py 
    

您還可以在代碼部署到S3,讓您的LAMBDA使用的代碼從S3。

aws s3 cp my_lambda.zip s3://dev-code//projectx/lambda_packages/ 

Here's the repo that will get you started