Repolode
tensorflow

tensorflow/serving

面向生产环境的高性能机器学习模型推理服务系统,提供 gRPC 与 HTTP 接口。

Star
6,365
Fork
2,204
未关闭 Issue
82
最近提交
17天前

这是什么?

TensorFlow Serving 负责机器学习的推理环节:加载训练好的模型,管理其生命周期,并以带版本的方式向客户端提供访问。开箱即用支持 TensorFlow 的 SavedModel 格式,也可扩展用于服务其他类型的模型和数据,例如 embedding、词表和特征变换。

同一个服务可以同时托管多个模型,或同一模型的多个版本。新版本上线无需修改客户端代码,便于做金丝雀发布和实验模型的 A/B 测试。内置的批处理调度器会把单个推理请求合并成批次,在 GPU 上联合执行,并支持配置延迟控制参数。

服务同时提供 gRPC 和 REST 推理接口,官方以 Docker 镜像分发,并附有 Kubernetes 部署、配置及源码编译的文档。

核心功能

  • 01可同时服务多个模型或同一模型的多个版本
  • 02同时提供 gRPC 和 HTTP/REST 推理接口
  • 03新模型版本上线无需修改客户端代码
  • 04支持模型的金丝雀发布和 A/B 测试
  • 05按可配置的延迟控制将请求批处理后在 GPU 上执行

适用场景

  • 在生产环境中将 TensorFlow 模型部署为推理 API
  • 在保持接口不变的前提下逐步上线新模型版本
  • 对实验模型与线上模型进行 A/B 测试
  • 通过自定义 servable 服务非 TensorFlow 模型或 embedding

快速上手

  1. 1

    下载 TensorFlow Serving Docker 镜像

    docker pull tensorflow/serving
  2. 2

    克隆仓库以获取演示模型

    git clone https://github.com/tensorflow/serving
  3. 3

    启动容器并开放 REST 端口,加载演示模型

    docker run -t --rm -p 8501:8501 -v "$TESTDATA/saved_model_half_plus_two_cpu:/models/half_plus_two" -e MODEL_NAME=half_plus_two tensorflow/serving &
  4. 4

    使用 predict API 查询模型

    curl -d '{"instances": [1.0, 2.0, 5.0]}' -X POST http://localhost:8501/v1/models/half_plus_two:predict

使用前须知

  • README 推荐使用 Docker 部署,不推荐脱离容器直接安装。
  • 开箱即用需要将模型导出为 TensorFlow SavedModel 格式。

收录于专题

标签

常见问题

serving 是什么?
面向生产环境的高性能机器学习模型推理服务系统,提供 gRPC 与 HTTP 接口。 TensorFlow Serving 负责机器学习的推理环节:加载训练好的模型,管理其生命周期,并以带版本的方式向客户端提供访问。开箱即用支持 TensorFlow 的 SavedModel 格式,也可扩展用于服务其他类型的模型和数据,例如 embedding、词表和特征变换。
serving 可以免费使用吗?用的什么许可证?
serving 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
serving 还在维护吗?
活跃维护中。serving 最近一次提交是在 2026年10月21日。
serving 适合用来做什么?
在生产环境中将 TensorFlow 模型部署为推理 API 在保持接口不变的前提下逐步上线新模型版本 对实验模型与线上模型进行 A/B 测试 通过自定义 servable 服务非 TensorFlow 模型或 embedding
serving 怎么安装和运行?
下载 TensorFlow Serving Docker 镜像: docker pull tensorflow/serving 克隆仓库以获取演示模型: git clone https://github.com/tensorflow/serving 启动容器并开放 REST 端口,加载演示模型: docker run -t --rm -p 8501:8501 -v "$TESTDATA/saved_model_half_plus_two_cpu:/models/half_plus_two" -e MODEL_NAME=half_plus_two tensorflow/serving & 使用 predict API 查询模型: curl -d '{"instances": [1.0, 2.0, 5.0]}' -X POST http://localhost:8501/v1/models/half_plus_two:predict
在哪里获取 serving?
源代码和安装说明在 GitHub 上:https://github.com/tensorflow/serving

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目