算法部署
文章平均质量分 71
主要关注和人工智能图像算法相关的cpp学习,涉及模型部署,onnx,推理等部分,pylind,python调用cpp等方向内容
Kun Li
自古山高水远路,无一不为风尘苦。
展开
-
FastAPI包算法服务
有三个提供的接口,分别是数据拉去的接口,算法处理完,进行图片上传,上传之后告诉调用方,数据已处理完成。常规包算法服务,就是比较简单,直接起一个fastapi就可以了。原创 2024-07-15 17:44:12 · 394 阅读 · 0 评论 -
pypi发布.whl文件
前几天我准备上传自己开发的项目到PyPI上的时候发现,必应搜到的教程和官方的指引不太一样,而且2024年,PyPI已经发生了一些变化,很多以前的教程不再适用了。最后摸索了好久,终于搞定了。这篇文章分享一下过程 …2024年,将Python项目发布到PyPI保姆级教程 - 知乎。2.生成wheel或者.tar.gz文件。1.第一步修改setup.py。3.pypi的2FA。原创 2024-05-14 10:43:04 · 883 阅读 · 0 评论 -
算法训练平台资源
总之试来试去,还是autodl比较方便,但是autodl的资源是真的紧张,经常释放了就等不到卡了。现在很多平台都把github、huggingface都屏蔽了,太麻烦了。原创 2024-01-25 09:44:49 · 437 阅读 · 0 评论 -
gradio 基本样式
【代码】gradio 基本样式。原创 2023-12-22 11:59:40 · 262 阅读 · 0 评论 -
显卡算力总结
2023年12月 最新的显卡天梯图和 FP32浮点性能 性能排行榜,包括浮点性能排名、测试得分和规格数据。跑分对比、基准测试比较。2023年12月 显卡天梯图 FP32浮点性能 性能排行榜 | TopCPU.net。原创 2023-12-06 16:25:02 · 8317 阅读 · 2 评论 -
大模型训练框架
优化器并行:单个GPU的显存无法放下大模型,通常来说,模型训练过程中,GPU上需要进行存储的参数包括了模型本身的参数、优化器状态、激活函数的输出值、梯度以及一些零时的Buffer。优化器相关的并行是一种去除冗余数据的并行,ZeRO,零冗余优化器,针对模型状态的存储优化,ZeRO使用的是分片,即每张卡只存1/N的模型状态量,这样系统只维护一份模型状态,ZeRO有3个级别,1.ZeRO-1,对优化器状态分片;模型并行:模型被分割并分布在一个设备阵列上,有两种方式:张量并行/流水线并行。原创 2023-10-25 14:02:26 · 535 阅读 · 0 评论 -
利用github托管个人网站
去年年底刚刚基于开源项目al-folio重新做了自己的个人主页。注意,这个开源项目很好,但是有个尴尬的问题…your site可能会出现的慢一点,要等一段时间。一直报这个错误,应该是有一个库有问题。2.至于模板这块也不用特意整那么复杂。如何制作个人学术主页?原创 2023-09-17 16:05:41 · 663 阅读 · 0 评论 -
onnxruntime(c++)
基于onnxruntime的C++版本CPU/GPU源码编译提示:基于onnxruntime的CPU/GPU源码编译,C++版本文章目录基于onnxruntime的C++版本CPU/GPU源码编译前言一、源码地址二、步骤1.基础环境搭建2.源码编译3.注意事项总结前言一、ONNX Runtime是什么?微软在开源中提供了大量框架和引擎。基于onnxruntime的C++版本CPU/GPU源码编译_三横先生的博客-CSDN博客_onnxruntime gpu c++原创 2023-09-17 16:03:42 · 352 阅读 · 0 评论 -
yolov5在rk3588上加速
不采用fastdeploy等三方框架,使用rknn-lite2或者rknpu在rk3588上加速。rknn的npu的python接口。原创 2023-09-17 16:01:23 · 1167 阅读 · 0 评论 -
yolov5 部署替换opencv
在明厨亮灶项目部署rknn时遇到了一个要求,甲方希望部署时不使用opencv库,后续调研了一些可以用来替换opencv的库,包括nihui的opencv_mobile,paddle的flycv,simpleocv,其中simpleocv主要是从ncnn中来,flycv是对arm架构做了大量的优化,我自己是选择flycv这个库来替换opencv。如果是在gpu上,可以使用CV_CUDA这个库,其实在实际部署时,一些操作是很耗时的,比如读图,归一化,minarea等。2.type对应关系表。原创 2023-09-17 15:57:15 · 593 阅读 · 0 评论 -
stable_diffusion_webui docker环境配置
1.利用vim进入~/.bashrc文档,摁住ctrl+g,直接跳到最后一行,摁一下i键,进入插入模式,现在可以编辑文档了。2.跳到最后一个字符,摁一下换行,可以在下一行输入命令。3.一般来说在Ubuntu的终端中,ctrl+shift+c是复制,Ctrl+shift+v是粘贴,可以先写好直接粘贴;5.路径添加好了,该关闭~/.bashrc了,摁一下esc键,退出插入模式;7.这时候还没有生效!直接使用stable_difffusion_webui下的launch.py可能会有些问题,建议。原创 2023-08-18 14:37:43 · 946 阅读 · 0 评论 -
cuda/cudnn安装
一般安装完路径就在/usr/local目录下,更新驱动需要重新启动reboot,只更新cuda不需要重新启动。移动上下到driver上,再enter一下取消driver的更新。更新一下.bashrc,cp -r ~/.bashrc xxx。1.cuda 11.8网址。原创 2023-08-09 14:25:57 · 2189 阅读 · 0 评论 -
Ascend昇腾clip模型
欢迎关注我,获取我的更多学习笔记 大家好,我是极智视界,本文主要谈谈昇腾 Ascend310 AI Core 资源利用率,概念类似于上篇《 【经验分享】谈谈 GPU 利用率》中提到的 Nvidia GPU 利用率。在昇腾 Ascend310 上使…极智AI | 谈谈昇腾 Ascend310 AI Core 资源利用率 - 知乎。19G的训练数据在性能模式下大概8min。2.查看系统运行情况。原创 2023-06-06 17:29:37 · 164 阅读 · 0 评论 -
yolov5 onnxruntime部署
1.c++代码的风格,如果传&引用传递,使用void方式,如果直接传数据,则返回一个新的数据结构,引用的话可以可以减少函数调用时的栈空间和复制成本。上面的代码中,inputTensorSize是个输入张量中元素的总数,由图像的长河宽相乘得到,是个意味矩阵,没对的话会报上面这个错。3.生成解决方案是编译,可以生成exe,dll等,然后可以使用exe来跑代码。4.批量注释:Ctrl + K + C,批量取消注释:Ctrl + K + U。2.一律采用驼峰命名法,即首字母小写,其余首字母大写。原创 2023-04-17 16:03:33 · 2554 阅读 · 3 评论 -
yolov5 libtorch部署,封装dll,python/c++调用
libtorch的yolov5部署原创 2023-04-12 10:39:15 · 2259 阅读 · 0 评论 -
arm cpu模型部署
【FastDeploy + Arm】几行代码搞定Al模型在Arm CPU硬件的部署_哔哩哔哩_bilibili。原创 2023-04-05 14:49:38 · 306 阅读 · 0 评论 -
jetson部署以及多路视频流方案
【FastDeploy + NVIDIA】三行代码搞定Jetson部署及多路视频流方案分享_哔哩哔哩_bilibili。jetson在视频流场景中广泛的应用。原创 2023-04-05 14:38:53 · 632 阅读 · 1 评论 -
Intel模型部署
【FastDeploy + Intel】三行代码部署150+模型,支持Intel CPU、独立显卡、集成显卡_哔哩哔哩_bilibili。默认是openvivo运行在x86的机子,其他环境应该是默认onnxruntime。原创 2023-04-03 08:27:03 · 200 阅读 · 0 评论 -
服务化部署高并发调优
https://www.bilibili.com/video/BV1be4y1V7XZ/?spm_id_from=333.788&vd_source=4aed82e35f26bb600bc5b46e65e25c22https://www.bilibili.com/video/BV1be4y1V7XZ/?spm_id_from=333.788&vd_source=4aed82e35f26bb600bc5b46e65e25c22原创 2023-03-31 08:16:05 · 120 阅读 · 0 评论 -
linux部署controlnet
编译一下oneformer的扩展模块,在controlnet/annotator/Oneformer/oneformer/modeling/pixel-decoder/ops中,直接运行python setup.py install --user.open_clip==2.16.0 自行编译一下,在git上下载源码,用python setup.py install --user安装,在requirement中降低pytorch的版本,改成>1.8。2. 更新oneformer的seg推理。原创 2023-03-10 11:23:26 · 979 阅读 · 1 评论 -
pp-human在rk3588上部署
用源码编译,直接sudo pip install 安装有问题,源码python setup.py install --user,有的时候sudo pip install 不好使,就使用--user这种方式,有的时候三方库链接不到,python setup.py install不好使,可以试试python setup.py sdist,记住distutils只是一种打包方式。核心板与行业主板广泛应用于人工智能,商业显示,广告一体机,智能POS,人脸识别终端,物联网,智慧城市等领域。我遇到的问题是,为了编译。原创 2023-03-01 09:33:52 · 5347 阅读 · 2 评论 -
fastdeploy
试用了百度的fastdeploy确实还可以。原创 2023-02-26 15:31:32 · 528 阅读 · 0 评论 -
模型部署综述
计算图转换是指分析静态计算图的算子对应转换到各种目标格式,这个步骤其实在pytorch中是被封装好的,在torch.onnx.export中,其中在计算图生成之后和计算图转换之前,可以进行计算图优化,例如去除冗余op等,这里一般指的是onnsim之类的库,目前这块可能没有那么复杂了,有pytorch2onnx和pytorch2tensorrt等各种库,只要转成onnx就是可以的。边缘部署则主要用于嵌入式设备,主要通过将模型打包封装到 SDK,集成到嵌入式设备,数据的处理和模型推理都在终端设备上执行。原创 2023-02-13 14:38:32 · 1473 阅读 · 0 评论 -
pybind安装和vs环境配置
Pybind官方文档解读&使用教程_哔哩哔哩_bilibili解读Pybind官方英文文档 目标:将Python Runtime嵌入到C++中运行https://www.bilibili.com/video/BV1QL4y1e77u?spm_id_from=333.337.search-card.all.click在windows上的安装和配置过程,一般在linux上要更简单一点。1.pip 安装pybind112.新建一个新的cpp程序空项目,在源文件中添加c++文件3.配置pyb原创 2022-05-15 11:04:06 · 758 阅读 · 0 评论 -
mmclas中pytorch转onnx,onnxruntime推理
https://github.com/Microsoft/onnxruntime/blob/master/docs/Versioning.mdhttps://github.com/Microsoft/onnxruntime/blob/master/docs/Versioning.mdAccelerate PyTorch Inference - onnxruntimeONNX Runtime: cross-platform, high performance ML inferencing and traini原创 2022-01-11 20:30:21 · 1766 阅读 · 0 评论 -
tensorrt,mmclas中的onnx转tensorrt
NVIDIA TensorRT | NVIDIA Developerhttps://developer.nvidia.cn/zh-cn/tensorrtTensorRT详细入门指北,如果你还不了解TensorRT,过来看看吧! - 知乎好久不见各位!想我不? 经历了五一还有点后遗症,感觉还没有休息够,时间过得太快了啊啊啊。 希望大家也能及时调整工作状态,搞起来搞起来! 为了更方便地搞起来,早点进入状态。老潘为大家准备了TensorRT入门指…https://zhuanlan.zhihu.com/p/3712原创 2022-01-11 15:15:33 · 1520 阅读 · 0 评论 -
onnx
https://github.com/BBuf/onnx_learnhttps://github.com/BBuf/onnx_learnGitHub - onnx/tutorials: Tutorials for creating and using ONNX modelshttps://github.com/onnx/tutorials+原创 2022-01-04 19:04:20 · 1489 阅读 · 1 评论