趋近智
FastAPI 基于异步原理构建,使其能够同时高效地处理大量连接。本章侧重于将这些原理应用到您的机器学习 (machine learning)API。您将学习如何使用 async 和 await 定义异步路由处理程序,并了解它们在何处提供最大的优势,通常在I/O密集型预处理或后处理步骤中。
我们将解决一个常见问题:如何将CPU密集型任务(如模型推理 (inference))整合到异步应用程序中,并介绍避免阻塞服务器事件循环的方案,例如使用 run_in_threadpool 等方法。此外,您还将学习实现后台任务,用于在响应发送后可以执行的操作,例如记录详细的预测结果或发送通知。本章最后将审视专门针对通过API提供机器学习模型服务时的性能要点,确保您的应用程序在负载下保持响应性。
5.1 理解 FastAPI 路由中的 async 和 await
5.2 机器学习推理何时适用异步
5.3 运行阻塞型机器学习操作
5.4 使用后台任务
5.5 ML I/O 异步请求的优势
5.6 API 端点性能考量
5.7 实践:实现异步操作