TensorZero is a Rust LLMOps platform: a gateway plus observability, evals, and model optimization. Its repository was archived on 12 June 2026 and gets no more releases. GoModel is an actively developed Go gateway focused on routing, access control, and cost.
A gateway sits on every request, so its overhead adds up. Same machine, same mock backend, one gateway at a time.
GoModel 0.1.98 vs TensorZero 2026.6.0 on an AWS c7i.large (2 vCPU, 4 GiB), run 20260928-043817 (28 September 2026). 20,000 requests per workload at concurrency 10, five randomized trials. API workloads served: GoModel 6/6, TensorZero 2/6. TensorZero wins three rows, and one cause explains the profile: its server leaves Nagle's algorithm on, so each non-streaming response on a reused connection waits about 40-50 ms for the client's delayed ACK. That idle stall, not compute (5.7% CPU), sets its p50 and p99. Its first streamed token arrives in 1.3 ms, but its streaming p99 is pinned near 60 ms, and its peak throughput grows with every connection the sweep opens (about 19 req/s each) rather than hitting a ceiling. It has no Responses or Anthropic Messages endpoint, so 4 of 6 workloads failed. Rerun it with one command.
Different goals. TensorZero optimizes models from feedback; GoModel runs the shared gateway.
| GoModel | TensorZero | |
|---|---|---|
| Project status | Active, releases weekly | Archived 12 June 2026, read-only |
| Purpose | Gateway and control plane | LLMOps: gateway, evals, optimization |
| Client APIs | OpenAI Chat, Responses, Anthropic Messages | Native /inference, OpenAI chat, embeddings |
| Infra for logs, keys, limits | None; SQLite built in | Postgres or ClickHouse, optional Valkey |
| Keys, budgets, rate limits | API keys, budgets, rate limits | API keys, token and cost limits |
| Fine-tuning, prompt optimization | Not offered | SFT, DPO, GEPA, DICL |
| Evals and A/B tests | Weighted routing only, no evals | Evals and adaptive A/B tests |
| License | MIT core + commercial Pro | Apache 2.0 |
An honest split.
Migrating is a base-URL change plus model names: TensorZero'stensorzero::model_name::... becomes a GoModel model or alias.
Benchmarks are an argument; your traffic is the proof. GoModel speaks the OpenAI and Anthropic APIs natively, so pointing an existing app at it is a base-URL change.
docker run --rm -p 8080:8080 \
-e LOG_FORMAT=text \
-e OPENAI_API_KEY="your-openai-key" \
enterpilot/gomodelfrom openai import OpenAI
client = OpenAI(
base_url="http://localhost:8080/v1",
api_key="your-gomodel-key",
)Full setup, providers, and configuration live in the documentation. Questions? Ask on Discord or book a 30-minute call.