Я загружаю маринованную модель машинного обучения с помощью моего Lambda-обработчика, поэтому мне нужно sklearn (я получаю «ModuleNotFoundError: нет модуля с именем« sklearn », если он не включен)
Поэтому я создал новое развертывание» пакет в Docker со склеарном.
Но когда я попытался загрузить новый файл lambda.zip, я не смог сохранить функцию lambda. Я получаю сообщение об ошибке: размер распакованного файла должен быть меньше, чем 262144000 байт
. Я сделал поиск в Google и нашел два предложения: (1) с использованием CLFAG с PIP и (2) с использованием Lambda Слои .
Не думаю, что слои будут работать. Перемещение частей моего пакета развертывания в слои не приведет к уменьшению общего размера (и в AWS документации указано «общий размер функции в разархивированном виде, и все слои не могут превышать ограничение на размер разархивированного пакета развертывания, равное 250 МБ ".
CFLAGS звучит многообещающе, но я никогда раньше не работал с CFLAGS и получаю ошибки.
Я пытаюсь добавить флаги: -Os -g0 -Wl,--strip-all
Pre-CLFAGS моя docker команда pip была: pip3 install requests pandas s3fs datetime bs4 sklearn -t ./
Сначала я попробовал: pip3 install requests pandas s3fs datetime bs4 sklearn -t -Os -g0 -Wl,--strip-all ./
Это привело к ошибкам из-за разновидности "no such option: -g"
Тогда я попробовал CFLAGS = -Os -g0 -Wl,--strip-all pip3 install requests pandas s3fs datetime bs4 sklearn -t ./
и CFLAGS = -Os -g0 -Wl,--strip-all
Но они выдавали ошибку "CFLAGS: команда не найдена"
Может кто-нибудь помочь мне понять, как использовать CFLAGS?
Кроме того, я знаком с поговоркой «нищие не могут быть выбирающими», поэтому любой совет будет оценен.
Тем не менее, я немного новичок, так что если вы может помочь мне с CFLAGS в контексте моего Docker рабочего процесса пакета развертывания, это было бы очень ценно. * 10 40 *
Мой docker рабочий процесс:
- docker run -it olivierhervieu / amazon linux -python36-onbuild
- mkdir deploy
- cd deploy
- запросы на установку pip3 pandas s3fs datetime bs4 sklearn -t ./
- zip -r lambda.zip *