这个项目能做什么
TensorFlow Serving 是一个面向生产环境的机器学习模型服务系统。它专注于推理阶段:接收已训练的模型,管理其生命周期,并通过高性能、带引用计数的查找表向客户端提供带版本的访问。虽然它可以开箱即用地与 TensorFlow 模型集成,但其架构允许扩展到其他模型类型和数据。
README 中描述的关键能力包括:
- 同时服务多个模型,或同一模型的多个版本。
- 同时暴露 gRPC 和 HTTP 推理端点。
- 在不更改客户端代码的情况下部署新的模型版本。
- 支持新版本的灰度发布以及实验性模型的 A/B 测试。
- 由于实现开销低,增加的延迟极小。
- 调度器可将单个推理请求分组为批次,以便在 GPU 上联合执行,并具有可配置的延迟控制。
- 支持多种可服务对象:TensorFlow 模型、嵌入、词表、特征变换,甚至非基于 TensorFlow 的机器学习模型。
README 提供了一个使用 Docker 的快速开始示例:拉取 tensorflow/serving 镜像,克隆仓库,启动一个挂载了演示模型的容器,并使用 curl 请求查询 REST API。它还链接到官方 TensorFlow 文档站点上的端到端训练与服务教程。
文档涵盖设置选项,包括 Docker(推荐)、不使用 Docker 的安装、使用 Docker 从源码构建,以及在 Kubernetes 上部署。使用指南说明了如何将 TensorFlow 模型导出为 SavedModel,然后配置并使用 TensorFlow Serving。其他指南涵盖性能、TensorBoard 性能分析、REST API、gRPC API 定义、SavedModel 预热、SignatureDef,以及服务带有自定义算子的模型。
关于扩展,README 指出该架构高度模块化,允许诸如批调度等部分被单独使用,或针对新用例进行扩展。它指向架构文档、C++ API 参考,以及创建新型 Servable 或自定义 Servable 版本来源的指南。
贡献指南可在仓库中获取,并引用了官方 TensorFlow 网站以获取更多信息。
评论
0 评分人数达到10人后显示
登录后参与讨论。