基于函数计算实现AI推理

本文涉及的产品
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
函数计算FC,每月15万CU 3个月
简介: 本场景基于函数计算建立一个TensorFlow Serverless AI推理平台。

基于函数计算实现AI推理


1. 创建资源

创建资源

  1. 在页面左侧,单击 云产品资源 下拉列表,查看本次实验所需资源。
  2. 单击屏幕右侧 创建资源 ,免费创建当前实验所需云产品资源。

说明:

资源创建过程需要1~3分钟。完成实验资源的创建后,您可以在 云产品资源 列表查看已创建的资源信息,例如:IP地址、子用户名称和子用户密码等。

2. 连接ECS服务器

连接ECS服务器

1. 资源创建完毕后,双击 LX终端图标 即可打开shell终端窗口。

2. 在终端中输入连接命令ssh [username]@[ipaddress]后按键盘enter键。您需要将username和ipaddress替换成ECS服务器的登录名和公网地址,ECS服务器的登录名和公网地址可在第一小节中的 云产品资源 下拉列表中查看。例如:

ssh root@139.xxx.xxx.230

3. 输入yes,该操作表示同意继续连接。执行该操作后,您将会收到输入登录密码的提示。

4. 输入登录密码。密码为已创建的ECS服务器的登录密码。注意输入密码时不会有任何显示。

5. 成功连接后如下图所示:

6. 体验过程中可以收起子用户信息来更完整查看实验手册。

3. 开通函数计算和日志服务

开通函数计算和日志服务

1. 双击打开桌面 FireFox ESR浏览器,在RAM用户登录框中点击 下一步,复制 云产品资源 列表中 子用户密码 粘贴(lx shell粘贴快捷键ctrl+shift+v,其他地方粘贴是ctrl+v)到浏览器 RAM用户登录界面,即可登录当前子账号。

2.  在阿里云管理控制台,点击顶部【产品与服务】 ,然后点击【函数计算】 ,进入服务开通页面。

3.  选择资源提供的 地域 ,勾选函数计算服务协议,点击【立即开通】。

开通成功页面如下。

4.  同理,开通日志服务。

开通成功页面如下。

4. 安装Fun工具

安装Fun工具

Fun 是一个用于支持Serverless应用部署的工具,能帮助您便捷地管理函数计算、API 网关和日志服务等资源。它通过一个资源配置文件(template.yml),协助您进行开发、构建和部署操作。

1.  将Fun的安装包下载到本地。请将下面的FUN_VERSION变量的值设置为最新版本号,最新版本号请参见Releases。以下操作将在ECS服务器上安装和配置Fun。

FUN_VERSION="v3.6.1"
curl -o fun-linux.zip https://gosspublic.alicdn.com/fun/fun-$FUN_VERSION-linux.zip

2.  安装解压工具unzip,并使用unzip将下载的Fun安装包解压到当前目录。

yum -y install unzip
unzip fun-linux.zip

3.  将解压出来的可执行文件移动到系统路径。

mv fun-*-linux /usr/local/bin/fun

4.  配置Fun关联的阿里云账号和调用SDK的超时时间等信息。

fun config

请参考以下信息输入您的阿里云账号ID、AccessKeyID和AccessKey密钥等信息。

  • Aliyun Account ID:子用户名称中@符号后面部分就是给您分配的主账号ID,例如u-zftb79nc@105997185439****中包含的账号ID为105997185439****
  • Aliyun Access Key ID和Aliyun Access Key Secret:请使用平台提供给您的子账号AK ID和AK Secret。

  • The timeout in seconds for each SDK client invoking:建议将超时时间设置长一点(例如10000),防止在上传部署包时发生超时中断。

正确设置如下所示:

地域选择 与云产品资源提供的地域相同 一般为 cn-shanghai

5. 安装Docker

安装Docker

1.  安装Docker的依赖库。

yum install -y yum-utils device-mapper-persistent-data lvm2

2.  添加docker-ce的软件源信息。

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3.  安装docker-ce。

yum makecache fast
yum -y install docker-ce

4.  启动Docker服务。

systemctl start docker

6. 创建NAS文件系统挂载点

创建NAS文件系统挂载点

1. 依然使用当前提供的子账号返回管理控制台,搜索NAS,然后单击【文件存储NAS】,登录NAS控制台。

2. 选择【文件系统】 > 【文件系统列表】。

3. 选择资源所在地域,找到资源信息栏中的NAS文件系统ID对应的文件系统,单击【更多】 > 【添加挂载点】。

4. 在【添加挂载点】页面,配置如下参数。

5. 点击文件系统ID,然后点击进入挂载使用界面查看挂载点地址,如下图。

7. 下载项目代码

下载项目代码

1. 安装Git工具并使用Git克隆项目代码到本地(如果克隆失败可以先在网站上打开该地址,然后进行安装)。

yum -y install git
git clone https://github.com/awesome-fc/cat-dog-classify.git

2. 编辑项目中FUN的部署模板文件template.yml,修改日志服务项目名称和NAS存储挂载配置。

a. 使用vim打开模板文件。

cd cat-dog-classify
vim template.yml

b. 输入以下命令全局替换日志服务项目名称。

:%s/log-ai-pro/log-ai-test/g

命令中log-ai-test为修改后的项目名称,您可以替换为您的自定义项目名称。

c. 修改NAS挂载配置。默认auto方式将会自动创建NAS文件系统,这里我们修改填写为平台预创建好的NAS文件系统的信息。

VpcConfig:
        VpcId: 'vpc-uf6u8*****zf1r4'
        VSwitchIds: [ 'vsw-uf6******038fy' ]
        SecurityGroupId: 'sg-uf6e******w6qz'
      NasConfig:
        UserId: 10003
        GroupId: 10003
        MountPoints:
          - ServerAddr: '33****u83.cn-shanghai.nas.aliyuncs.com:/'
            MountDir: '/mnt/auto'

修改的参数说明如下:

  • VpcConfig中的VpcId、VSwitchId和SecurityGroupId信息请登录ECS控制台后在实例详情页查看。

  • ServerAddr的值修改为第6小节中的挂载点地址。

修改后如下图所示:

8. 将依赖文件上传到NAS

将依赖文件上传到NAS

1.  执行以下命令初始化NAS。

fun nas init

2.  查看本地NAS的目录位置。

fun nas info

命令输出如下所示:

3.  执行以下命令安装相关依赖。

fun install -v

命令执行成功结果如下所示。

该命令将根据Funfile文件中的定义:

  • 将依赖下载到.fun/nas/auto-default/classify/python目录中。
  • 将model中的模型文件拷贝到.fun/nas/auto-default/classify/model/目录中。

4.  将本地NAS目录同步到阿里云NAS存储中。

fun nas sync

命令执行结果如下所示。

5.  查看文件是否上传到远程NAS目录。

fun nas ls nas://classify:/mnt/auto/

9. 部署到函数计算平台

部署到函数计算平台

执行以下操作将函数部署到函数计算平台:

fun deploy -y

执行结果如下图所示,图中19176540-18576685985*****.test.functioncompute.com为函数计算平台分配的临时域名,有效期10天,每天有1000次的调用限制。

10. 测试预测服务

测试预测服务

1.  部署完成后,等待30秒钟左右,在浏览器打开临时域名,如下图所示。

2.  上传一张猫或狗的图片。

3.  单击【Predict】按钮,查看预测识别结果。

函数计算具有动态伸缩的特性, 根据并发请求量,自动弹性扩容出执行环境来执行环境。当预留的实例不能满足调用函数的请求时, 函数计算就自动进行按需扩容实例供函数执行,此时的调用就有冷启动的过程。使用预留模式可以消除冷启动毛刺问题,详情请参见预留实例

实验地址:https://developer.aliyun.com/adc/scenario/35a73acbb9cb477e8a4a5b22021f23a9

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
3天前
|
人工智能 运维 监控
领先AI企业经验谈:探究AI分布式推理网络架构实践
当前,AI行业正处于快速发展的关键时期。继DeepSeek大放异彩之后,又一款备受瞩目的AI智能体产品Manus横空出世。Manus具备独立思考、规划和执行复杂任务的能力,其多智能体架构能够自主调用工具。在GAIA基准测试中,Manus的性能超越了OpenAI同层次的大模型,展现出卓越的技术实力。
|
7天前
|
人工智能 自然语言处理 算法
AI做数学学会动脑子! UCL等发现LLM程序性知识,推理绝不是背答案
大型语言模型(LLM)在数学推理中的表现一直备受争议。伦敦大学学院等机构的研究发现,LLM可能通过综合程序性知识而非简单检索来解决数学问题。研究分析了7B和35B参数模型在三个简单数学任务中的数据依赖,表明模型更关注解决问题的过程和方法,而非答案本身。这一发现为改进AI系统提供了新思路,但也指出LLM在复杂问题处理上仍存在局限。论文地址:https://arxiv.org/abs/2411.12580
26 2
|
8天前
|
人工智能 搜索推荐 安全
基于函数计算一键部署 AI 陪练,快速打造你的专属口语对练伙伴
AI 口语学习涵盖发音训练、对话交流、即时反馈、个性化场景模拟和流利度提升等。本方案以英语口语学习的场景为例,利用函数计算 FC 部署 Web 应用,结合智能媒体服务(AI 实时互动)的 AI 智能体和百炼工作流应用,实现英语口语陪练。
|
9天前
|
机器学习/深度学习 人工智能 算法
PRefLexOR:MIT自进化AI框架上线!动态知识图谱+跨域推理,重塑自主思考
PRefLexOR 是 MIT 团队推出的新型自学习 AI 框架,结合偏好优化和强化学习,通过递归推理和多步反思,动态生成知识图谱,支持跨领域推理和自主学习。
87 3
PRefLexOR:MIT自进化AI框架上线!动态知识图谱+跨域推理,重塑自主思考
|
12天前
|
人工智能 运维 架构师
Serverless + AI 让应用开发更简单,加速应用智能化
Serverless + AI 让应用开发更简单,加速应用智能化
|
12天前
|
人工智能 运维 Serverless
Serverless + AI 让应用开发更简单
Serverless + AI 让应用开发更简单
|
12天前
|
人工智能 运维 Serverless
Serverless GPU:助力 AI 推理加速
Serverless GPU:助力 AI 推理加速
|
12天前
|
人工智能 运维 Devops
CAP:Serverless + AI 让应用开发更简单
CAP:Serverless + AI 让应用开发更简单
|
12天前
|
人工智能 Cloud Native Serverless
Serverless Devs 官网全新升级,Serverless+AI 重磅来袭
Serverless Devs 官网全新升级,Serverless+AI 重磅来袭
|
12天前
|
存储 文件存储 对象存储
AI 场景下,函数计算 GPU 实例模型存储最佳实践
AI 场景下,函数计算 GPU 实例模型存储最佳实践

相关产品

  • 函数计算