KoboldCpp or text-generation-webui?

Text-generation-webui, often called oobabooga and now named TextGen in its README, is a web and desktop app that can drive several engines, including llama.cpp, ExLlamaV3 and Transformers, so it loads more model formats than KoboldCpp, which runs GGUF. Pick it for non-GGUF formats; pick KoboldCpp for a single file with less to install. We installed its portable CPU build: with the same GGUF files and 4 threads, KoboldCpp generated 1 to 11% slower after a long prompt and read it 30 to 41% slower, and TextGen is a 916 MB download against KoboldCpp's 103 MB.

Checked against KoboldCpp 1.124.2 · updated 13 Nov 2026
  • lab-lnx: Linux test VM · 4 vCPU · 15 GB · no GPU
How we test
On this page
  1. Measured: same model, same machine
  2. KoboldCpp vs oobabooga: model formats and engines
  3. Interface and features
  4. For SillyTavern
  5. When to choose text-generation-webui
  6. When to choose KoboldCpp
  7. Which should you use?

Measured: same model, same machine

We installed TextGen 4.9’s portable Linux CPU build (916 MB unpacked) and ran it with its llama.cpp loader, next to KoboldCpp 1.124.2, on one CPU-only Ubuntu machine with 4 vCPUs F107. Both were timed the same way, through the streaming endpoint, with two model files. Both defaulted to 2 threads; the 4-thread columns set them explicitly.

One Ubuntu 24.04 machine, 4 vCPUs, 4096 context, 128 tokens, median of 3, streaming measurement
CriterionKoboldCpp --threads 4KoboldCpp, default threadsTextGen --threads 4TextGen, default threads
Qwen2.5-0.5B: generation after a short prompt (tokens/s)78.5 F10773.0 F10769.6 F10769.0 F107
Qwen2.5-0.5B: generation after a 1,652-token prompt (tokens/s)51.8 F10748.5 F10757.9 F10755.4 F107
Qwen2.5-0.5B: prompt processing, 1,652 tokens (tokens/s)206.8 F107189.7 F107294.9 F107263.1 F107
Qwen2.5-1.5B: generation after a short prompt (tokens/s)38.8 F10736.2 F10737.2 F10738.3 F107
Qwen2.5-1.5B: generation after a 1,652-token prompt (tokens/s)31.0 F10730.7 F10731.3 F10732.0 F107
Qwen2.5-1.5B: prompt processing, 1,652 tokens (tokens/s)87.9 F10781.1 F107148.4 F107127.6 F107
Start-up, 0.5B / 1.5B (Ollama: model load, service already running)3.5 / 5.01 s F1074.02 / 6.03 s F1071.51 / 1.51 s F1072.01 / 1.5 s F107
Memory after the runs, 1.5B (resident memory of the runner)1,407 MB F1071,407 MB F1072,204 MB F1072,204 MB F107
What you installOne file, 103 MB F107One file, 103 MB F107916 MB portable build F107916 MB portable build F107

With 4 threads on both, KoboldCpp generated 11% (0.5B) and 1% (1.5B) slower after the long prompt and read the long prompt 30% and 41% slower. TextGen used more memory (about 2.2 GB against 1.4 GB on the 1.5B), is nine times bigger to unpack, and was ready in 1.5 to 2 s against 3.5 to 5 s. We measured only its llama.cpp loader on a CPU: its ExLlamaV3 and Transformers loaders, a GPU and the web interface were not run. This is a CPU test on one machine type with small models. GPU speed, bigger models and other CPUs can differ, and absolute numbers moved by up to 2 times between GitHub machines in earlier runs F44.

KoboldCpp vs oobabooga: model formats and engines

The README lists these backends: llama.cpp, ik_llama.cpp, Transformers, ExLlamaV3 and TensorRT-LLM, and lets you switch between them without restarting F101. The portable builds, for Linux, Windows and macOS with CUDA, Vulkan, ROCm and CPU-only options, are for GGUF models; Transformers and ExLlamaV3 models need the full installation. KoboldCpp runs GGUF, plus old GGML formats; safetensors need converting: we gave it one and it stopped with exit code 3 F82 (how to get a GGUF). If you want EXL formats on NVIDIA, that is a real reason to choose TextGen.

Interface and features

KoboldCpp and TextGen; the TextGen column is from its README of 17 August 2026, not from our tests
CriterionKoboldCppTextGen (text-generation-webui)
LicenceAGPL-3.0AGPL-3.0 (its LICENSE file) F101
How you get itOne portable file F01Portable builds (GGUF only) or a full install F101
InterfaceLauncher window plus Lite and others works F62A desktop app, or a web page at port 7860 F101
API stylesKoboldAI, OpenAI, Ollama, A1111 and more works F23OpenAI and Anthropic compatible, with tool calling F101
Model formatsGGUF, plus old GGMLGGUF, Transformers, ExLlamaV3 and more F101
ImagesBuilt in works F88A diffusers tab, full install F101
SpeechWhisper and TTS built in works F90Extensions (TTS, voice input) F101
TrainingNoLoRA training tab F101
Tools and web searchWeb search flag, MCP, an agent (not all tested)Tool calling with web search, MCP servers F101

For SillyTavern

SillyTavern lists KoboldCpp as a backend and we connected it (SillyTavern). TextGen offers an OpenAI-compatible API, which SillyTavern’s Chat Completion mode can use; we did not test that.

When to choose text-generation-webui

You need EXL formats or unquantized Transformers models, want to train LoRAs, or want extensions, and you accept a larger install.

When to choose KoboldCpp

You run GGUF models and want one file with a launcher, a story and chat page, image and voice features built in, several API styles on one port, and .kcpps config files.

Which should you use?

  • EXL3 or Transformers models: TextGen.
  • GGUF models, least to install: KoboldCpp.
  • Fine-tuning your own LoRA: TextGen.
  • Story and chat page with SillyTavern in mind: KoboldCpp.

Frequently asked questions

Is oobabooga better than KoboldCpp?

They suit different needs. TextGen loads more model formats (its README lists Transformers and ExLlamaV3 as well as llama.cpp) and has training and extensions. On our CPU test with GGUF files and 4 threads, TextGen generated and read prompts a little faster than KoboldCpp, and KoboldCpp is one 103 MB file against TextGen's 916 MB portable build.

Can KoboldCpp run EXL2 or safetensors models?

No, text models only as GGUF (plus old GGML). A safetensors file stopped KoboldCpp with exit code 3 in our test. Convert it or download a GGUF.

Which is easier to install?

KoboldCpp is one 103 MB file you run. TextGen's portable build is a 916 MB folder with all dependencies for GGUF models; its README says other formats need a fuller install. Both started in a few seconds on our test machine (TextGen 1.5 to 2 s, KoboldCpp 3.5 to 5 s).

Do both work with SillyTavern?

SillyTavern lists KoboldCpp as a backend and we connected it on 1.19.0. TextGen offers an OpenAI-compatible API on its README's terms; we did not test SillyTavern with it.