lefaceEarly access
own engine · own kernels · one GPU

Same GPU.4.7 timesthe tokens.

leface is an LLM inference engine for teams who can't buy an H100. It brings its own GPU kernels, so a single RTX 4090 serves Qwen3.8-27B at 244 tok/s to a user, 4.7× vLLM on the same card.

leface · since you arrived0244.2 tok/s
vLLM · same GPU052.3 tok/s
users4.67× vLLM

Qwen3.8-27B, one RTX 4090, both engines at their measured speed. Every block is a token, a filled wall is one answer leface vLLM

scroll
4.67×vLLM · 1 userQwen3.8-27B
9,539tok/s · 256 usersQwen3.5-4B
128kcontext on 24 GBQwen3.8-27B
0.2 sfirst token, 20k follow-upcached prompt
244 tok/sQwen3.8-27B · one user · RTX 40904.67×vLLM on the same card1,536 tok/sQwen3.8-27B · 32 users · one card9,539 tok/sQwen3.5-4B · 256 users128kcontext on 24 GB0.2 sfirst token · 20k-token follow-up94.5HumanEval+ · 27B in 4 bitsidenticaloutput to plain decoding · lossless253 tok/sQwen3-14B · one userOpenAIcompatible API · drop-in
02 / live

Ask it something. Watch the meter.

Your prompt runs on the same RTX 4090 the benchmarks were measured on. Nothing is cached or replayed: the timings below are what your browser received.

Qwen3.8-27B · 4-bit · one RTX 4090 · ⌘↵
first token—
decode—
tokens—
wall—
The answer streams here, token by token.
03 / measured

Same GPU, every load. Median of three runs.

Output tokens per second, greedy decoding, a different coding prompt per user, 128 tokens each. vLLM 0.32 runs its fastest configuration on every row.

loadoutput tokens / second · same RTX 4090leface ÷ vLLM
1user
244leface
52.3vLLM
4.67×
4users
692leface
182vLLM
3.81×
8users
946leface
344vLLM
2.75×
16users
1,354leface
338vLLM
4.00×

RedHat INT4 weights in both engines; vLLM in the mode that fits 24 GB. vLLM 0.32 in its fastest configuration per row; median of 3 runs.

04 / get

What you get. Nothing you have to change.

4.7×

The same card, more tokens

On the RTX 4090 you already have, Qwen3.8-27B answers at 244 tok/s. Nothing to buy.

128k

Long context in 24 GB

A full 128k-token context for a 27B model fits on one consumer card, and a 20k-token follow-up starts in 0.2 s.

=

Identical output

Speed costs nothing in quality: the tokens are the ones plain decoding would produce, and HumanEval+ says 94.5 for the 27B.

/v1

Drop-in API

OpenAI-compatible chat completions with streaming. Point your client at it and keep your code.

05 / quality

Faster, not looser. Same answers.

The speed costs no quality: the output is identical, token for token, to plain decoding. What 4-bit weights cost, measured on HumanEval+ (164 tasks, greedy, thinking off):

modelleface 4-bitvLLM fp8
Qwen3.5-4B81.7 / 74.486.0 / 79.9
Ornith-1.5-9B79.3 / 73.280.5 / 73.8
Qwen3-14B87.8 / 82.390.9 / 86.0
Qwen3.8-27B94.5 / 90.2INT4: does not fit in 24 GB

base / plus pass@1, %. The small models lose 1–6 points to fp8 in 4-bit; the 27B keeps 94.5.

06 / faq

Straight answers.

One rented RTX 4090 (24 GB), Oct 2026. Greedy decoding, 128 output tokens per user, a different short coding prompt per user, thinking off. Every row is the median of three runs (spread under 2 %). vLLM 0.32 runs its best mode on every row, including its own speculative modes where they are faster.

No. For a given prompt, leface produces the same tokens as plain decoding of the same weights; the test suite checks that token for token.

From about 64 concurrent users up the GPU is compute-bound and the lead narrows to roughly 1.7–2.4×. Long-prompt prefill is bound by the card's compute too: a 64k-token prompt still takes ~21 s on a 4090.

Qwen3.5 / 3.6 / 3.8 hybrids, Qwen3 and Qwen3-MoE, Qwen2.5, Llama 3 (including its RoPE scaling), Mistral, Phi-3, Mixtral and DeepSeek-V2 on CUDA; AMD MI355X is next.

Soon. It serves an OpenAI-compatible API, so switching is a base URL. Ask for early access and you get the first release.