模型部署与服务:从训练到生产

模型部署与服务:从训练到生产#

摘要#

上一章我们用消融实验验证了 CNN 各组件的贡献,但一个模型在实验环境跑出好结果之后呢?

PyTorch 实践:把理论变成代码 中你学会了训练模型,在 CNN 消融研究:理解卷积神经网络各组件的作用 中你学会了验证模型——现在我们将学习如何把模型部署到生产环境,让它真正对外提供服务。

本章将回答四个核心问题:

  1. 训练好的 PyTorch 模型如何跨平台导出?

  2. 生产环境需要支持多少并发请求?

  3. 同步推理和异步推理各适合什么场景?

  4. 如何用 CLI 和配置文件管理模型的生命周期?

我们将以 Ferrinx——深度学习社团开源的轻量级 ONNX 推理服务(GitHub)——作为教学工具,让你理解从训练到生产的完整链路。

学习目标

完成本章后,你将能够:

  1. torch.onnx.export 将 PyTorch 模型导出为 ONNX 格式

  2. 理解模型服务架构:同步推理 vs 异步推理、简单模式 vs 分布式模式

  3. 使用 Ferrinx 部署并管理模型的生命周期

  4. 通过 CLI 完成模型注册、推理调用等操作

  5. 为模型配置预处理/后处理流水线

  6. 理解 API 认证、限流等生产环境必备的安全机制

本章概览#

章节

内容

与前面章节的联系

引言:训练完模型之后

从训练到生产的完整链路

完整训练流程 中的模型 → 这里导出

ONNX:模型的中立语言

PyTorch 模型导出为 ONNX 格式

LeNet-5架构详解 的 LeNet → 导出示例

服务架构:从单机到分布式

模型服务架构设计

对比 实验设计 的实验架构

部署实践:用Ferrinx服务模型

Ferrinx 服务的部署操作

使用训练框架 的框架使用模式

结语:完整的学习链路

总结与完整 MLOps 链路

串联所有章节

学习路径#

本章是模型从"实验"到"生产"的最后一公里

graph LR A[PyTorch训练<br/>学会训练] --> B[ONNX导出<br/>跨平台格式] B --> C[服务架构<br/>同步/异步] C --> D[部署实践<br/>Ferrinx CLI] D --> E[生产环境<br/>API服务]

核心认知:模型部署不是训练的附属品,而是让 AI 产生价值的必要环节——没有部署,再高精度的模型也只是实验室的玩具。

本章定位#

本章和之前章节的关系:

Ferrinx 是社团开源的项目,目标让 ONNX 模型的部署"一个二进制文件,一个配置文件,就能跑起来"——这与 使用训练框架 中框架的设计哲学一脉相承。你可以在 GitHub 找到源码并贡献代码。欢迎提 Issue 和 PR 参与贡献!

前置章节

本章应用

完整训练流程

训练好的模型 → ONNX 导出

使用训练框架

框架使用模式 → 部署实践

实验设计

实验管理思维 → 生产环境管理

前置要求#

学习本章前,请确保你已经掌握

学习本章前,请确保你已经掌握:

  1. PyTorch 实践:把理论变成代码:用 PyTorch 训练和导出模型

  2. 熟悉基础的 REST API 概念(HTTP 方法、JSON 格式)

  3. 了解 实验设计 中的实验管理思维

目录#

贡献者与修订历史

查看详细修订记录
  • bba351e 2026-04-29 - Heyan Zhu: docs: update chapter summaries and learning paths for consistency
  • 0cdb1e4 2026-04-29 - Heyan Zhu: feat: add model-serving chapter and update related content