---
id: "tensorflow-serving"
type: "component"
kind: "ml-inference"
provider: "default"
category: "compute"
docs: "https://www.tensorflow.org/tfx/guide/serving"
url: "https://localhost:3000/catalogue/components/tensorflow-serving"
---

# TensorFlow Serving

Self-hosted gRPC/REST server for TensorFlow and other saved models.

| | |
|---|---|
| Provider | [default](https://localhost:3000/catalogue?provider=default) |
| Kind | [ML inference](https://localhost:3000/catalogue/kinds/ml-inference) |
| Category | Compute |
| Official docs | [https://www.tensorflow.org/tfx/guide/serving](https://www.tensorflow.org/tfx/guide/serving) |

## Properties

| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| `accelerator` | enum | `none`, `gpu`, `asic` | no | "none" | inherited |
| `acceleratorModel` (advanced) | enum | `nvidia-h100`, `nvidia-h200`, `nvidia-b200`, `nvidia-l4`, `nvidia-a100`, `amd-mi300x`, `aws-trainium`, `aws-inferentia`, `google-tpu`, `intel-gaudi`, `groq-lpu`, `cerebras-wse` | no | — | inherited |
| `batching` | boolean | — | no | false | inherited |
| `embeddingSyncMinutes` (advanced) | integer | — | no | — | inherited |
| `inputs` | enum | `live`, `historical`, `both` | no | "live" | **"live"** |
| `instances` | integer | — | no | — | inherited |
| `managed` | boolean | — | no | false | inherited |
| `snapshotToObjectStore` (advanced) | boolean | — | no | false | inherited |
| `training` | enum | `batch`, `online` | no | "batch" | **"batch"** |

Bold values are the ones this component pins.

## Rules that apply · 1

### Stateful node without zone redundancy `stateful-node-without-zone-redundancy` (error)

- Page: https://localhost:3000/catalogue/rules/stateful-node-without-zone-redundancy.md
- Why: A stateful compute node pinned to exactly one availability zone disappears with that zone, and its state goes with it. Nodes inside a cell are exempt, because there the cell is deliberately single-zone and redundancy comes from the other cells.
- Applies to: every node in category compute
- Message: Stateful node '{{node.id}}' lives in exactly one availability zone. A zone outage takes its state with it.

It fires when:

- all of these hold:
  - the node's `stateless` is false
  - the node sits inside exactly 1 availability-zone group
  - this does not hold:
    - the node sits inside at least one cell group

## Other products of the same kind · 37

- [SageMaker endpoint](https://localhost:3000/catalogue/components/sagemaker-endpoint.md) `sagemaker-endpoint` — aws
- [Azure ML endpoint](https://localhost:3000/catalogue/components/azure-ml-endpoint.md) `azure-ml-endpoint` — azure
- [Workers AI](https://localhost:3000/catalogue/components/cloudflare-workers-ai.md) `cloudflare-workers-ai` — cloudflare
- [Anyscale Endpoints](https://localhost:3000/catalogue/components/anyscale-endpoints.md) `anyscale-endpoints` — default
- [Banana](https://localhost:3000/catalogue/components/banana-dev.md) `banana-dev` — default
- [Baseten](https://localhost:3000/catalogue/components/baseten.md) `baseten` — default
- [Beam](https://localhost:3000/catalogue/components/beam-cloud.md) `beam-cloud` — default
- [BentoML](https://localhost:3000/catalogue/components/bentoml.md) `bentoml` — default
- [Hugging Face Inference Endpoints](https://localhost:3000/catalogue/components/huggingface-inference.md) `huggingface-inference` — default
- [Infinity](https://localhost:3000/catalogue/components/infinity-embeddings.md) `infinity-embeddings` — default
- [Jan](https://localhost:3000/catalogue/components/jan.md) `jan` — default
- [KServe](https://localhost:3000/catalogue/components/kserve.md) `kserve` — default
- [llama.cpp server](https://localhost:3000/catalogue/components/llama-cpp-server.md) `llama-cpp-server` — default
- [llm-d](https://localhost:3000/catalogue/components/llm-d.md) `llm-d` — default
- [LM Studio](https://localhost:3000/catalogue/components/lm-studio.md) `lm-studio` — default
- [LMDeploy](https://localhost:3000/catalogue/components/lmdeploy.md) `lmdeploy` — default
- [LocalAI](https://localhost:3000/catalogue/components/localai.md) `localai` — default
- [Generic ML inference](https://localhost:3000/catalogue/components/ml-inference.md) `ml-inference` — default
- [MLC LLM](https://localhost:3000/catalogue/components/mlc-llm.md) `mlc-llm` — default
- [Modal](https://localhost:3000/catalogue/components/modal.md) `modal` — default
- [Mystic AI](https://localhost:3000/catalogue/components/mystic-ai.md) `mystic-ai` — default
- [NVIDIA NIM (self-hosted)](https://localhost:3000/catalogue/components/nvidia-nim.md) `nvidia-nim` — default
- [OctoAI](https://localhost:3000/catalogue/components/octoai.md) `octoai` — default
- [Ollama](https://localhost:3000/catalogue/components/ollama.md) `ollama` — default
- [Ray Serve](https://localhost:3000/catalogue/components/ray-serve.md) `ray-serve` — default
- [Seldon Core](https://localhost:3000/catalogue/components/seldon-core.md) `seldon-core` — default
- [SGLang](https://localhost:3000/catalogue/components/sglang.md) `sglang` — default
- [TensorRT-LLM](https://localhost:3000/catalogue/components/tensorrt-llm.md) `tensorrt-llm` — default
- [Text Embeddings Inference](https://localhost:3000/catalogue/components/text-embeddings-inference.md) `text-embeddings-inference` — default
- [Text Generation Inference](https://localhost:3000/catalogue/components/text-generation-inference.md) `text-generation-inference` — default
- [TorchServe](https://localhost:3000/catalogue/components/torchserve.md) `torchserve` — default
- [NVIDIA Triton](https://localhost:3000/catalogue/components/triton.md) `triton` — default
- [vLLM](https://localhost:3000/catalogue/components/vllm.md) `vllm` — default
- [Xinference](https://localhost:3000/catalogue/components/xinference.md) `xinference` — default
- [Vertex AI endpoint](https://localhost:3000/catalogue/components/vertex-ai-endpoint.md) `vertex-ai-endpoint` — gcp
- [OCI Data Science Model Deployment](https://localhost:3000/catalogue/components/oci-data-science-model-deployment.md) `oci-data-science-model-deployment` — oci
- [OCI Generative AI Dedicated AI Cluster](https://localhost:3000/catalogue/components/oci-generative-ai-cluster.md) `oci-generative-ai-cluster` — oci

## Use it in a design

```yaml
nodes:
  - { id: "tensorflow-serving", component: "tensorflow-serving" }
```

## Source (`component` YAML, verbatim)

```yaml
# yaml-language-server: $schema=../../schema/component.schema.json
# TensorFlow Serving: self-hosted gRPC/REST model server; request batching is disabled by default.
schemaVersion: "1"
type: "component"
id: "tensorflow-serving"
kind: "ml-inference"
provider: "default"
docs: "https://www.tensorflow.org/tfx/guide/serving"
defaults:
  training: "batch"
  inputs: "live"
properties:
  batching:
    type: "boolean"
    default: false
```

Human page: https://localhost:3000/catalogue/components/tensorflow-serving
