这是一篇关于构建和部署“MNIST 思维映射器”应用的文章,主要内容如下:
- 演示:可以观看此视频了解应用的工作方式。
- 概述:作者作为应用和基础设施开发者,希望亲手训练和部署神经网络,并将其包装在 REST API 中,以构建允许用户与之交互的前端。文章详细介绍了构建和成功部署该应用的步骤及遇到的问题。
- 开源代码:大部分工作都开源,此项目也不例外。
- 应用流程图:前端提供可绘制画布,用户在其上涂鸦,定期将图像发送到后端 API,后端运行推理并返回预测数字,前端显示结果。
- 模型训练:使用 PyTorch 定义简单神经网络架构,加载 MNIST 数据集,训练模型并保存到磁盘。还创建了一个简单的 FAST API 服务器进行自我测试。
- 第一个挑战:Vercel 的 Python 支持不成熟,文档稀少,示例简单,错误信息不直观,如“data too long”,且缺乏常见捆绑问题的解决方案等重要细节。
- 转换为 ONNX 并再次尝试:尝试将 PyTorch 模型转换为 ONNX 格式,以减少模型大小,但在作者的案例中未起作用,仍得到相同错误。
- 在 Modal.com 中寻找 Python 后端主机:研究发现 Modal.com 轻量级且易于设置,将本地的 Fast API Python 后端转换为
modal_function.py并部署,虽然存在冷启动问题,但开发者体验良好。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。