You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Lambda部署含Numpy的Python包时出现导入错误求助

解决AWS Lambda导入Numpy的路径错误问题

问题原因

你直接把Numpy的源码目录塞进了ZIP包的根目录,Lambda运行时会把ZIP根目录加入Python的模块搜索路径。当执行import numpy时,Python会优先加载根目录里的Numpy源码文件夹,而非正常安装好的可执行包,因此触发了"不要从源码目录导入"的错误。

修复方案

方案1:正确打包依赖(直接包含在代码包)

  1. 新建一个空文件夹,比如lambda_build
  2. 用pip把依赖安装到这个文件夹里,注意要适配Lambda的Python版本和服务器架构(比如x86_64或arm64),命令示例:
    # 适配Lambda的Python 3.11 x86_64架构
    pip install numpy pandas -t ./lambda_build --platform manylinux2014_x86_64 --only-binary=:all: --python-version 311
    
  3. 把你的src文件夹复制到lambda_build目录下
  4. 进入lambda_build目录,把所有文件打包成ZIP(注意不要把外层的lambda_build文件夹本身包进去,要包里面的内容)
    最终ZIP结构应该是:
    - numpy/
    - pandas/
    - src/
      - lambda_handler.py
    

方案2:用Lambda层管理依赖(更推荐)

  1. 新建一个python文件夹
  2. 把Numpy、Pandas安装到这个python文件夹里,命令同上,只是把目标路径改成./python
  3. 把python文件夹打包成ZIP,上传到AWS Lambda作为一个层
  4. 在你的Lambda函数配置里关联这个层,然后只上传你的src文件夹即可,代码里正常import numpy就可以运行

这样处理后,Python会加载正确的已安装依赖包,不会再触发源码目录的导入错误。

内容的提问来源于stack exchange,提问作者Anil Chouhan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 17:22:04