Purpose-built moderation, benchmarked against OpenAI.
zlm-v1-moderation-edge, ZeroGPU's production moderation ZLM, evaluated head-to-head against OpenAI omni-moderation on quality and latency, on real production-range inputs.
One trunk, fourteen heads.
zlm-v1-moderation-edge is a DeBERTa encoder with a shared trunk feeding one binary safe/unsafe head and 13 category heads. Per-category decision thresholds are calibrated on a validation split, never on test. It serves production traffic today from ZeroGPU edge infrastructure.
Wins the decision that matters.
On a held-out test split of 4,277 rows (1,425 unsafe / 2,852 safe), zlm-v1-moderation-edge beats OpenAI omni-moderation on the binary safe/unsafe decision and on 9 of 13 harm categories.
| Model | Precision | Recall | F1 | AUC |
|---|---|---|---|---|
| zlm-v1-moderation-edge | 0.888 | 0.911 | 0.899 | 0.984 |
| OpenAI omni-moderation | 0.882 | 0.827 | 0.853 | 0.967 |
Largest wins come on the categories production filters lean on hardest: graphic violence (+0.59 F1), illicit content (+0.19 to +0.26), and self-harm detection (+0.10 to +0.13).
Co-located inference beats round trips.
Measured from a Fly worker in the same region as the production app, with the operator's network out of the picture. Both providers were called back-to-back on the same 400 distinct real texts through an identical HTTP path, one request at a time. Reported over the production operating range: real traffic is prompts and chat messages under 200 characters.
| Input length | n | ZeroGPU p50 | ZeroGPU p95 | OpenAI p50 | OpenAI p95 | Advantage |
|---|---|---|---|---|---|---|
| 0–60 chars | 79 | 82 ms | 102 ms | 145 ms | 252 ms | 1.8× |
| 60–120 chars | 72 | 105 ms | 127 ms | 150 ms | 244 ms | 1.4× |
| 120–200 chars | 61 | 129 ms | 155 ms | 151 ms | 252 ms | 1.2× |
OpenAI's latency is flat at ~150 ms because roughly a third of it is network: traffic leaving and re-entering the datacenter, an overhead that persists no matter how fast the model gets. ZeroGPU inference is co-located with the workload: ~4 ms of network, and the rest is real inference. The gap widens as inputs get shorter, exactly where moderation traffic lives.
Right model, right compute.
Quality on your distribution
A purpose-built ZLM trained and calibrated for real production traffic outperforms a general-purpose moderation API on the decisions that gate your product.
Latency in the request path
Moderation sits inline before every response. Co-located inference returns verdicts in ~82–129 ms p50, fast enough to never be the bottleneck.
Capacity that scales with you
zlm-v1-moderation-edge runs on the ZeroGPU edge network: capacity scales with your deployment, with content residency and no external dependency in the critical path.
What this benchmark does and doesn't claim.
- The latency advantage holds for inputs under ~200 characters, the production operating range. On longer inputs, CPU encoder cost grows with token count and OpenAI is faster past the crossover.
- Latency figures are single-request (concurrency 1). Per-request latency holds below the current deployment's throughput ceiling; scaling throughput is a machine-count change, not a model change.
- Throughput scales with provisioned capacity. Per-request latency figures hold within the provisioned throughput of a given deployment.
Run moderation on ZeroGPU.
zlm-v1-moderation-edge is available today through the ZeroGPU OpenAI-compatible API.