V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
pymumu
V2EX  ›  分享创造

[分享] 一个开源的基于 pipeline 的高性能 AI 推理框架 Modelbox

  •  
  •   pymumu · 2022-11-10 19:23:25 +08:00 · 1174 次点击
    这是一个创建于 535 天前的主题,其中的信息可能已经有所发展或是发生改变。

    地址: https://github.com/modelbox-ai/modelbox
    文档: https://modelbox-ai.com/modelbox-book/

    通过 UI 编排方式实现一个 REST-API Echo-Server 服务截图:
    mnist-flowchart alt rect_w_300

    ModelBox 解决的问题

    目前 AI 应用开发时,训练完成模型后,需要将多个模型和应用逻辑串联在一起组成 AI 应用,并上线发布成为服务或应用。在整个过程中,需要面临复杂的应用编程问题:

    问题 问题说明
    需要开发 AI 应用的周边功能 比如 AI 应用编译工程,应用初始化,配置管理接口,日志管理口,应用故障监控等功能。
    需要开发 AI 常见的前后处理 音视频加解码,图像转换处理,推理前处理,后处理 YOLO 等开发。
    需要开发和云服务对接的周边功能 比如 HTTP 服务开发,云存储,大数据服务,视频采集服务对接开发。
    需要开发出高性能的推理应用 需要基于多线程,内存池化,显存池化,多 GPU 加速卡,模型 batch 批处理,调用硬件卡的 API 等手段开发应用。
    需要开发验证 docker 镜像 需要开发 docker 镜像,集成必要的 ffmpeg ,opencv 软件,CUDA, MindSpore ,TensorFlow 等软件,并做集成测试验证。
    多种 AI 业务,需要共享代码,降低维护工作 需要复用不同组件的代码,包括 AI 前后处理代码,AI 应用管理代码,底层内存,线程管理代码等。
    模型开发者,验证模型功能比较复杂 模型开发者完成模型训练后,需要编写 python 代码验证,之后,再转成生产代码;在高性能,高可靠场景改造工作量大。

    ModelBox 的目标是解决 AI 开发者在开发 AI 应用时的编程复杂度,降低 AI 应用的开发难度,将复杂的数据处理,并发互斥,多设备协同,组件复用,数据通信,交由 ModelBox 处理。开发者主要聚焦业务逻辑本身,而不是软件细节。 在提高 AI 推理开发的效率同时,保证软件的性能,可靠性,安全性等属性。

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1258 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 17:51 · PVG 01:51 · LAX 10:51 · JFK 13:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.