[Triton课程笔记] 2.2.1 Python Backend
1.[Triton课程笔记] 1.1.1 框架介绍2.[Triton课程笔记] 1.1.2 Triton的设计3.[Triton课程笔记] 1.1.3 Triton的辅助工具及特性4.[Triton课程笔记] 1.2.1 编程实战-准备模型仓库5.[Triton课程笔记] 1.2.2 编程实战-如何编写模型配置6.[Triton课程笔记] 1.2.3 编程实战-启动Triton Server7.[Triton课程笔记] 1.2.4 编程实战-配置ensemble model8.[Triton课程笔记] 1.2.5 编程实战-请求Triton Server9.[Triton课程笔记] 2.1.1 Backend-大纲10.[Triton课程笔记] 2.1.2-2.1.3 Backend-接口实现11.[Triton课程笔记] 2.1.4 Backend-build
12.[Triton课程笔记] 2.2.1 Python Backend
13.[Triton课程笔记] 2.2.2 Python Backend及BLS14.[Triton课程笔记] 2.2.3 BLS续
吐槽一下,英伟达的分视频真的有病,感觉是按照时长硬切,没什么逻辑。
一、大纲
两大部分:
- Python Backend
- Business Logic Scripting(BLS)
二、回顾
三、python backend
3.1 为什么需要python backend

- 预处理、后处理一般用python;
- 已经用python写好的处理单元,需要放Triton上去;
- 比C++的更容易实现,无需编译;
3.2 工作原理
组件:
- Python backend(C++)为代理;
- Python model(Python)才是真正需要实现的东西,由进程进行管理;
- 两者通过共享内存进行通信;
通信:
- Health flag:标志Python stub process是否是否健康;
- Request MessageQ:消息队列,用来从Python Backend传数据到Python stub process去运行;
- Response MessageQ:消息队列,用来将Python stub process运行完的结果传输给Python Backend;
3.3 如何实现Python Backend
实现三个关键接口:
- initialize:初始化操作;
- excute:执行操作;
- finalize:销毁操作;
3.4 简单例子
例子1 使用onnxruntime推理:
使用Python Backend 通过onnxruntime去运行Resnet50模型;
例子2,使用pytorch进行处理:
在Python Backend中调用pytorch。
需要先将pb Tensor 转为 pytorch Tensor;
处理完后,再把pytorch Tensor转回pb Tensor;
3.5 PB Tensor Placement
PB Tensor Placement究竟是放GPU还是GPU上?
- 传给Python backend的Tensor默认复制到CPU上;
- 如果需要保持在GPU上,需要在config文件中设置参数:
- parameters:{ key: "FORCE_CPU_ONLY_INPUT_TENSORS" value: {string_value: "no"}}
- 如何查看tensor Placement是否在cpu上:
- pb_utils.Tensor.is_cpu()
本文版权归作者(https://www.cnblogs.com/harrymore/)和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,如有问题, 可邮件(harrymore@126.com)咨询.
合集:
Triton课程笔记
标签:
triton
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)