triton-inference-server/python_backend
Triton backend that enables pre-process, post-processing and other logic to be implemented in Python.
解决的问题
允许开发者在无需编写任何 C++ 代码的情况下,使用 Triton Inference Server 部署用 Python 编写的机器学习模型。这消除了为自定义 Python 模型逻辑实现复杂 C++ 后端的障碍。
工作原理
开发者创建一个名为 TritonPythonModel 的 Python 类,并实现一组特定的生命周期方法。Triton 服务器随后加载此 Python 脚本并调用这些方法来管理模型:
auto_complete_config:如果缺少配置文件,可选择性地定义模型的输入、输出和批处理设置。initialize:在模型加载时执行一次性设置和状态初始化。execute:核心逻辑,模型处理InferenceRequest对象列表,并返回对应的InferenceResponse对象列表。finalize:在模型卸载时执行清理操作。is_ready:检查模型是否健康并准备好处理请求。
适用人群
希望将使用 PyTorch、TensorFlow 或 JAX 等框架的 Python 模型部署到生产级推理服务器,但又不想学习 C++ 的 AI 工程师和数据科学家。
亮点
- 无需 C++:可直接部署 Python 模型。
- 框架无关:支持 PyTorch、TensorFlow、JAX 和 NumPy。
- 解耦模式:支持异步或解耦方式返回响应。
- 业务逻辑脚本(BLS):可在 Python 内实现复杂的模型链式调用和编排。
- GPU 支持:通过 DLPack 实现与 GPU 张量的互操作性。
相关
- 项目
- 项目
- 项目
- 项目
- 项目