如果您需要使用流行AI项目,如Stable Diffusion WebUI、ComfyUI、RAG、TensorRT等底层需要使用GPU实例来加速计算的应用,推荐以镜像方式部署函数应用。将容器镜像作为函数的交付物,提升开发和交付效率。
创建函数
登录函数计算控制台,在左侧导航栏,单击函数。
在顶部菜单栏,选择地域,然后在函数页面,单击创建函数。
在创建函数页面,选择GPU 函数,设置以下配置项,然后单击创建。
基本设置:设置函数名称。
函数代码:配置函数的运行环境和代码相关信息。
配置项
说明
示例
运行环境
使用示例镜像:选择函数计算提供的示例镜像,快速体验部署镜像函数。您需要从配置项容器镜像下方镜像列表中选择目标镜像。
使用ACR中的镜像:单击配置项容器镜像下方的选择 ACR 中的镜像,在弹出的选择容器镜像面板,选择已创建的容器镜像实例和ACR 镜像仓库,然后在下方选择镜像区域找到目标镜像并在其右侧操作列单击选择。
使用示例镜像
容器镜像
选择目标镜像。
SpringBoot Web 应用示例镜像
启动命令
程序的启动命令。如果不配置启动命令,则默认使用镜像中的Entrypoint/CMD。
无
监听端口
您的代码中的HTTP Server所监听的端口。
9000
高级配置:配置函数的实例相关信息和函数执行超时时间等。
配置项
说明
示例
GPU 卡型
选择GPU卡型,关于GPU卡型介绍,请参见规格介绍。
Tesla系列
规格方案
根据您的业务情况,选择或手动输入合理的GPU 显存规格、vCPU规格和内存规格组合。关于各资源使用的计费详情,请参见计费概述。
GPU显存规格=4 GB
vCPU规格=2 vCPU
内存规格=4 GB
临时硬盘大小
根据您的业务情况,选择临时存储文件的硬盘大小。函数计算为您提供512 MB以内的硬盘免费使用额度,超过512 MB后开始计费。
说明临时硬盘中所有目录可写,共享临时硬盘的空间。
临时硬盘大小与底层执行函数的实例生命周期一致,实例被系统回收后,硬盘上的数据也会消失。如您需要对文件进行持久化保存,可以选择挂载NAS或OSS。具体操作,请参见配置NAS文件系统和配置OSS对象存储。
512 MB
执行超时时间
设置超时时间。执行超时时间默认为60秒,最长为86400秒。
60
单实例并发度
函数计算支持一个实例同时并发执行多个请求,这个值用来配置单个函数实例可以同时处理多少个请求。具体操作,请参见配置单实例并发度。
20
时区
选择函数的时区。在此处设置函数的时区后,将自动为函数添加一条环境变量TZ,其值为您设置的目标时区。
UTC
函数角色
函数计算平台会使用这个RAM角色来生成访问您的阿里云资源的临时密钥,并传递给您的代码。更多信息,请参见授予函数计算访问其他云服务的权限。
mytestrole
允许访问 VPC
是否允许函数访问VPC内资源。更多信息,请参见配置网络。
是
专有网络
允许访问 VPC选择是时必填。创建新的VPC或在下拉列表中选择要访问的VPC ID。
fc.auto.create.vpc.1632317****
交换机
允许访问 VPC选择是时必填。创建新的交换机或在下拉列表中选择交换机ID。
fc.auto.create.vswitch.vpc-bp1p8248****
安全组
允许访问 VPC选择是时必填。创建新的安全组或在下拉列表中选择安全组。
fc.auto.create.SecurityGroup.vsw-bp15ftbbbbd****
允许函数默认网卡访问公网
是否允许函数通过默认网卡访问公网。关闭后,当前服务中的函数将无法通过函数计算的默认网卡访问公网。
重要使用固定公网IP地址功能时,您必须关闭允许函数默认网卡访问公网,否则配置的固定公网IP地址不生效。更多信息,请参见配置固定公网IP地址。
是
日志功能
是否启用阿里云日志服务。取值说明如下:
启用:函数的执行日志被持久化保存到日志服务,方便您进行代码调试、故障分析和数据分析等。
禁用:函数的执行日志将无法通过日志服务存储和查询。
启用
环境变量:设置函数运行环境中的环境变量。更多信息,请参见配置环境变量。
编辑函数
函数创建完成后,如果需要变更镜像,您可以在函数详情页的配置页签,编辑运行时,详见下图。
更多修改,例如修改环境变量、日志存储等设置,请参见配置函数。
删除函数
登录函数计算控制台,单击函数,选择地域,在目标函数的操作列,选择 ,然后在弹出的对话框,确认要删除的函数已无任何触发器、预留实例等绑定资源后,再次确认删除。
相关文档
针对不同使用场景,函数计算提供事件函数、Web函数、任务函数和GPU函数四种函数类型,关于如何针对使用场景选择函数类型,请参见函数选型。
除控制台外,函数计算还提供API的方式来管理函数,具体请查看函数。
函数执行超时,您可以尝试的操作见函数执行超时,报错Function time out after怎么办?。
使用频率较低的函数调用时间会比较长,具体原因见为什么使用频率较低的函数调用时间比较长?。如果想消除冷启动延时的影响,可以使用预留模式的实例,具体可参考如何让实例一直存活不销毁,消除冷启动延时的影响?。
如果您想获取函数的ARN在代码中定位阿里云资源,可参见获取函数ARN。