AI常见部署方式

1.AI部署简介

  1. 没人告诉你的大规模部署AI高效流程!
对大部分 TensorFlow 模型来说,部署流程是相同的:

 1. 将图像固化为 Protobuf 二进制文件
 2. 调整推断代码,使它可以处理固化的图
 3. 容器化应用程序
 4. 在最上面加上 API 层
本文提出了一个大规模部署 AI 的高效工作流程:

固化图并将推断封装在 API 下
重复使用会话和图,缓存输入和输出
用 Docker 容器化应用程序(包括 API 层)
将大规模应用程序与 Kubernetes 一起部署在你选择的云上
将训练从推断中分离出来
建立任务队列,将较小的任务确立为优先级
使用这些技术,你就可以在成本最小、速度和效率最大的情况下大规模部署 AI。

2.具体部署

  1. 使用ONNX部署深度学习和传统机器学习模型
  2. 自动部署深度神经网络模型TensorFlow(Keras)到生产环境中
  3. 深度学习Tensorflow生产环境部署(上·环境准备篇)
客户端 ----> web服务(flask或者tornado) --grpc或者rest--> tensorflow serving
  1. 深度学习Tensorflow生产环境部署(下·模型部署篇)
  2. Tensorflow 2.x模型-部署与实践
  3. 如何部署tensorflow训练的模型
  4. 将tensorflow模型部署到服务器上
  5. Tensorflow如何进行工业部署?
确定好输入和输出节点,把模型导出成SavedModel格式,
然后用TF-Serving启动服务,
调用方发http请求或者grpc请求就可以拿到预测结果
  1. 使用 Docker 部署 TensorFlow 环境

    在这里插入图片描述

  2. 已经训练好的tensorflow模型如何部署到web上?

可以做成一个http服务,提供一个web接口,模型只在服务器上就可以了.
使用时候客户端通过http请求上传要识别的图片等数据到服务端接口,服务端计算后返回给客户端.
  1. 部署PyTorch模型到终端
  2. 如何将pytorch模型通过docker部署到服务器
在服务端训练出特定的算法模型——再将这个模型部署到服务端或者终端(以后大多数场景下是部署到终端)——需要服务端AI框架到终端AI推理框架的转换工具。

Tensorflowserving:

  1. 模型部署 TensorFlowServing
  2. tensorflow2.0基础(10)——使用tensorflow-serving部署模型
  3. Tensorflow-serving部署模型到服务器
  4. tensorflow serving部署keras或tf2.0模型
  5. docker部署tensorflowserving以及模型替换
  6. Tensorflow-serving+Docker安装+模型部署
  7. 用Docker容器自带的tensorflowserving部署模型对外服务(成功率100%)
  8. TensorFlow Serving + Docker +Tornado机器学习模型生产级快速部署
常用的做法如使用flask、Django、tornado等web框架创建一个服务器app,这个app在启动后就会一直挂在后台,然后等待用户使用客户端POST一个请求上来(例如上传了一张图片的url),app检测到有请求,就会下载这个url的图片,接着调用你的模型,得到推理结果后以json的格式把结果返回给用户。
这个做法对于简单部署来说代码量不多,对于不熟悉web框架的朋友来说随便套用一个模板就能写出来,但是也会有一些明显的缺点:
1. 需要在服务器上重新安装项目所需的所有依赖。
2. 当接收到并发请求的时候,服务器可能要后台启动多个进程进行推理,造成资源紧缺。
3. 不同的模型需要启动不同的服务。
而为了解决第一个问题,Docker是最好的方案。

在这里插入图片描述

  • 2
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值