'No module named 'numpy.core._multiarray_umath' when using AWS Lambda

I just uploaded a .zip file to AWS Lambda with all needed packages. I ran all right in my Mac using virtual environment with python 3.8. The AWS Lambda function also has python 3.8. But when I run in AWS Lambda I get this error:

No module named 'numpy.core._multiarray_umath'

I have changed the actual numpy version (1.20.2) to other versions like 1.19.1 and 1.18.5 but the problem can't be fixed.

I am also using spacy 3.0.6 and fastapi 0.63.0.



Solution 1:[1]

When I encountered same issue, this steps worked for me:

1- Download required packages(you may need different versions):

 - pandas-1.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

   - python_dateutil-2.8.2-py2.py3-none-any.whl

   - pytz-2022.1-py2.py3-none-any.whl

 - numpy-1.21.5-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl

 - If you need others ...

enter image description here

2- Create a project folder and unzip whl files to the folder.

3- Remove *dist-info folders.

4- Add your source code to folder(lambda_function.py)

5- Zip the folder and upload to Lambda as a source code zip file. enter image description here

Also you can look these links may help you:

https://korniichuk.medium.com/lambda-with-pandas-fd81aa2ff25e https://github.com/numpy/numpy/issues/13465#issuecomment-545378314

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 mehmet sahin