无法将 cvxpy 安装到 AWS lambda 的 virtualenv 中

2023-12-08

我正在尝试在 AWS lambda 函数中运行 cvxpy 包。该包不在 SDK 中,因此我了解到我必须将依赖项编译为 zip,然后将 zip 上传到 lambda 函数中。

我已经做了一些研究并尝试了下面的链接,但是当我尝试 pip install cvxpy 时,我收到错误消息 - 我使用的是 Windows 机器,但我知道 AWS Lambda 在 Linux 上运行。

感谢您的帮助!

http://i-systems.github.io/HSE545/machine%20learning%20all/cvxpy_install/CVXPY%2BInstallation%2BGuide%2Bfor%2BWindows.html

https://programwithus.com/learn-to-code/Pip-and-virtualenv-on-Windows/

https://medium.com/@manivannan_data/import-custom-python-packages-on-aws-lambda-function-5fbac36b40f8

https://www.cvxpy.org/install/index.html


用于安装cvxpy在 Windows 上它需要 C++ 构建工具(请参考:https://buildmedia.readthedocs.org/media/pdf/cvxpy/latest/cvxpy.pdf)

在 Windows 上:

  • 我创建了一个lambda层python目录结构python/lib/python3.7/site-packages(参考:https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)并在该 site-packages 目录中安装了我的 pip 包。
pip install cvxpy --target python/lib/python3.7/site-packages
  • 然后,我拉上拉链python/lib/python3.7/site-packages作为 cvxpy_layer.zip 并将其上传到 S3 存储桶(层压缩文件最大限制仅为 50 MBhttps://docs.aws.amazon.com/lambda/latest/dg/limits.html),将其附加到我的 lambda 层。
  • 现在,该层已准备就绪,但 lambda 无法导入安装在 Windows 计算机上的包。 (参考:AWS Lambda - 无法导入模块“lambda_function”)

在 Linux 上:

  • 我创建了与之前相同的目录结构python/lib/python3.7/site-packages并安装 cvxpy 并将其压缩,如下所示。
  • 后来我将 zip 文件上传到 S3 存储桶并创建了一个新的 lambda 层。
  • 将该 lambda 层附加到我的 lambda 函数中,我可以解决之前失败的导入问题,并在 lambda 上运行基本的 cvxpy 程序。
mkdir -p alley/python/lib/python3.7/site-packages
pip install cvxpy --target alley/python/lib/python3.7/site-packages
cd alley
zip -rqvT cvxpy_layer.zip .

Lambda 层图像:

enter image description here

Lambda函数执行:

enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法将 cvxpy 安装到 AWS lambda 的 virtualenv 中 的相关文章

随机推荐

  • 如何在 WCF 中将有限值设置为 maxoccurrs 而不是“无界”

    我有 WCF 服务 当我公开我的服务时 我的所有数据契约都将转换为元素 并且每个带有 ComplextType 标记的元素也会转换为 ArrayOf 在 ComplextType 标记中 maxOccurs 的默认值为 无界 但实际上我想覆
  • 如何将Dataframe转换为Series?

    我想将 N 列转换为一个系列 如何有效地做到这一点 Input 0 1 2 3 0 64 98 47 58 1 80 94 81 46 2 18 43 79 84 3 57 35 81 31 预期输出 0 64 1 80 2 18 3 57
  • 将 System.in 重定向到 swing 组件

    大家好 我正在使用 Swing 和 Apache Commons 制作一个终端应用程序 我能够重定向System out and System err to a JTextArea很容易 但我该怎么做System in 我需要覆盖吗Inpu
  • 从文件路径创建位图/可绘制对象

    我正在尝试从现有文件路径创建位图或可绘制对象 String path intent getStringExtra FilePath BitmapFactory Options option new BitmapFactory Options
  • 更改 JOptionPane 中的图标

    我有一个扩展的类JOptionPane 其中有一个方法调用showConfirmDialog new JFrame JScrollPane jp Friends List 2 0 icon 有没有办法无需调用即可更改图标showConfir
  • R ggplot2 for循环绘制相同的数据

    我已经组合了一个简单的 for 循环来生成一系列图 然后使用 grid arrange 来绘制它们 我有两个问题 绘图的轴正确更改为列名称 但same数据绘制在每个图表上 添加断点并单步执行代码后 它似乎正确递增 所以我不确定为什么 我已将
  • 如何从列表中删除复选框项目

    我的列表中有 50 个列表项 现在我已经检查了 10 个项目 那么当我单击删除按钮时如何从列表视图中删除 删除 这 10 个检查项目 这是我的代码 请查看我的代码和响应错误在哪里 public class BookmarksJokes ex
  • scanf 不等待输入就返回0

    我从来没有用 C 编程过 今天我必须编写一些小代码 程序非常简单 我想将两个整数相加 但是当我试图检查给定的输入是否是数字并且第一个 scanf 返回 0 时 第二个 scanf 也返回 0 而无需等待输入 代码 int main int
  • 有没有一种css3方法可以在y轴上固定,让它在x轴上滚动?

    这个问题已经被问过无数次了 here there and 另一个地方就这样 然而我找不到真正好的答案 通常 我的表格在垂直方向上比视口深得多 我希望能够滚动表格 tbody 而其 thead 保持固定且可见 其中一些表格也比视口宽得多 这里
  • AWS Glue Python Shell 与 Oracle cx_Oracle 的连接问题

    我正在研究 AWS Glue Python Shell 我想将 python shell 与 Oracle 连接 我成功安装了 psycopg2 和 mysql 库 但是当我尝试使用 cx Oracle 连接 Oracle 时 我已成功安装
  • 使用 MultiIndex 计算 pandas hub_table 中的小计

    我在数据框中有以下原始数据 BROKER VENUE QUANTITY 0 BrokerA Venue 1 300 1 BrokerA Venue 2 400 2 BrokerA Venue 2 1400 3 BrokerA Venue 3
  • 如何在 Dagger Hilt 中获得 MVP?

    我无法使用模型视图演示者 MVP Hilt 方法编译代码 我收到此错误 MotionPoC app build generated source kapt debug com aria motionpoc di MotionApp Hilt
  • 键名称中的 MongoDB 点 (.)

    似乎 mongo 不允许插入带有点 或美元符号 的键 但是当我使用 mongoimport 工具导入其中包含点的 JSON 文件时 它工作得很好 驱动程序抱怨尝试插入该元素 这是文档在数据库中的样子 id oid make saab mod
  • 使用按钮切换 URL 参数

    我的网站上有一个按钮 可以使用 jQuery 切换元素的可见性 如何将该元素的状态存储在 cookie 或本地存储中 因此 当用户下次访问该网站时 它会被记住 我不想使用 jQuery 插件 另外我想在按钮单击时向 url 添加一个参数 t
  • C# 字符串转十进制解析

    我正在尝试在 C 中解析或将字符串转换为十进制 我需要能够解析字符串 例如 123 345 676 8999 美元相当于 123345676 90 我只需要保留小数点后 2 位 并且需要进行适当四舍五入 你们能建议一种方法来执行上述操作吗
  • Jquery 验证成功函数在重新验证时未清除有效标签?

    我有一个使用 JQuery Validate 插件来验证数据的表单 对于用户名字段 但不是表单上的其他字段 如果用户名可用 我想在字段旁边显示 用户名可用 我这几乎可以工作了 唯一有问题的是 当用户在输入有效值后编辑用户名时 以前的有效消息
  • 同时访问Android中的前置和后置摄像头[重复]

    这个问题在这里已经有答案了 我想同时访问前置和后置摄像头 这可能吗 根据我的测试 这是不可能完成的 如果一个应用程序已经在访问后置摄像头 而另一个应用程序正在尝试访问前置摄像头 则会崩溃 我在这里发现了一些以前的帖子 但没有答案 我们可以在
  • 如何在 React 中正确使用 Ajax

    我是 React JS 新手 我有这段代码创建了一个appdiv 与一些MusicPlayer标签元素 class App extends React Component render return div div
  • 如何在 HTML 中使用 jQuery 只获取没有标签的直接文本

    我有一个 HTML strong 1 strong TEXT THAT I ONLY NEED p some par p ul ul 我只需要 我只需要文字 它不在他的 HTML 中的任何标签内 我如何使用 jQuery 获取它 最好的方法
  • 无法将 cvxpy 安装到 AWS lambda 的 virtualenv 中

    我正在尝试在 AWS lambda 函数中运行 cvxpy 包 该包不在 SDK 中 因此我了解到我必须将依赖项编译为 zip 然后将 zip 上传到 lambda 函数中 我已经做了一些研究并尝试了下面的链接 但是当我尝试 pip ins