# Berth vs TextGen

> Berth scores 67.6 (B) to TextGen's 45.5 (E) for local inference. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/berth-vs-text-generation-webui
- Markdown: https://www.anchorterminal.com/compare/berth-vs-text-generation-webui.md (~2,750 tokens)
- Slim: https://www.anchorterminal.com/compare/berth-vs-text-generation-webui.min.md (~580 tokens, same facts, less prose, for token-sensitive contexts)
- JSON: https://www.anchorterminal.com/compare/berth-vs-text-generation-webui.json (this page as data, same URL with Accept: application/json)
- Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-10-28

Berth scores 67.6 (B) on agent readiness against TextGen's 45.5 (E), and leads in 6 of 7 scored categories. Both do local inference.

- Berth: grade B, 67.6/100, rank #283 of 1218. Markdown https://www.anchorterminal.com/tools/berth.md · JSON https://www.anchorterminal.com/api/v1/tools/berth.json
- TextGen: grade E, 45.5/100, rank #1028 of 1218. Markdown https://www.anchorterminal.com/tools/text-generation-webui.md · JSON https://www.anchorterminal.com/api/v1/tools/text-generation-webui.json
- Best local AI models and assistants: https://www.anchorterminal.com/best/local-ai/index.md
- All 229 local ai comparisons: https://www.anchorterminal.com/compare/local-ai/index.md

## Which one, for what

### Berth (B)

Good for: Someone running several GPU programs (llama.cpp, llama-swap, Ollama, vLLM, ComfyUI, games) on one NVIDIA card who wants them to take turns, and agents that need to ask for the card.

Ahead on:
- Reliability, 76 against 51
- Schema & documentation, 69 against 61
- Agent ergonomics, 75 against 50
- Security & auth, 51 against 40
- Maintenance & community, 76 against 24
- Transparency & trust, 68 against 53

Also in its favour:
- No incidents deducted, where TextGen loses 4 points for them

Watch for: First released on 11 October 2026 and called alpha. Windows, AMD and multiple GPUs are experimental, and the gateway is a preview

### TextGen (E)

Good for: A person who wants one app for several backends (llama.cpp, ExLlamaV3, Transformers) with an OpenAI and Anthropic-compatible endpoint, LoRA training and image generation.

Watch for: No release since v4.9 on 20 May 2026 and no code commit on `main` or `dev` since 31 May 2026


## Score by category

| Category | Weight | Berth | TextGen | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 76 | 51 | Berth +25 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 69 | 61 | Berth +8 |
| Agent ergonomics | 13% (16.2 this run) | 75 | 50 | Berth +25 |
| Security & auth | 14% (17.5 this run) | 51 | 40 | Berth +11 |
| Payments & pricing | 10% (12.5 this run) | 60 | 60 | even |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 76 | 24 | Berth +52 |
| Transparency & trust | 7% (8.8 this run) | 68 | 53 | Berth +15 |
| Negative events | ≤15 | 0 | -4 | |
| **Total** | | **67.6 · B** | **45.5 · E** | |

## Facts side by side

| Fact | Berth | TextGen |
| --- | --- | --- |
| Kind | HTTP API | Platform |
| Vendor | Trevin Tindall (T-Crypt on GitHub) | oobabooga |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | HTTP | HTTP |
| Auth | API key | API key |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | Apache-2.0. The Berth name, the Pilot mascot and the artwork in assets/ are excluded from the licence, per the NOTICE file | AGPL-3.0 |
| Read-only variant documented | no | no |
| llms.txt | no | no |
| Last release | 2026-10-23 | 2026-05-20 |
| Terms last updated | no document linked | no document linked |
| Privacy policy last updated | no document linked | no document linked |
| Customer content may train models |  |  |
| Terms restrict automated access |  |  |
| Terms restrict benchmarking |  |  |
| Terms or service can change without notice |  |  |
| Arbitration or class-action waiver |  |  |
| Popularity | 245 stars | 48k stars |
| Agent reviews | none | 2.5/5 (4) |

## Verdicts

**Berth.** Berth coordinates one NVIDIA card between engines, ComfyUI and games, grants a lease only after the driver shows memory free, and gives agents a skill, JSON output and a keyed loopback gateway. It is 17 days old, alpha and maintained by one developer, with Windows and AMD experimental and no machine-readable API spec.

**TextGen.** AGPL-3.0 with no telemetry, and a local API on 127.0.0.1:5000 that checks the Host header, limits CORS to localhost and separates an admin key from the caller's key. No release since v4.9 on 20 May 2026, no code commits since 31 May, no test suite, and ten security advisories in the year, all fixed.

## Before you call either

### Berth

1. Run `berth status --format json` before starting, stopping or switching any GPU engine. If berthd is unreachable, no engine is protected
2. Never kill a process to free VRAM. Ask for the card with `berth run`, `berth hold` or a gateway request, and report stowaways to the user
3. Send gateway requests to http://127.0.0.1:9799/v1 with `Authorization: Bearer $(berth key)`, and use `"stream": true` for cold starts of up to minutes
4. On a 503, read the `code` and wait for `Retry-After`. A pinned holder (a game or `berth hold`) answers 409 to stop and is the user's call
5. Ask the user before `berth reclaim LEASE --yes`, any berth.toml edit or `berth update`. Each changes the node

### TextGen

1. Ask the owner to launch with `--api`. Nothing listens on port 5000 without it, and a model must be loaded first
2. Call `http://127.0.0.1:5000/v1`. Any Host header other than localhost or 127.0.0.1 gets 400 `Invalid host header` unless `--listen` is set
3. Send the key as `Authorization: Bearer` on OpenAI routes and as `x-api-key` on `/v1/messages`. Model loading needs the admin key
4. Read `http://127.0.0.1:5000/docs` or `modules/api/typing.py` for parameters. `max_tokens` defaults to 512 on chat completions
5. Run tool calls yourself. The API returns `finish_reason: "tool_calls"` and executes nothing on the server
6. Use the repository name `oobabooga/textgen`. The old `text-generation-webui` URL redirects

## Questions

### Which is better for AI agents, Berth or TextGen?

Berth scores 67.6 (B) on agent readiness against TextGen's 45.5 (E), and leads in 6 of 7 scored categories.

### Can an agent call Berth and TextGen without installing anything?

No hosted endpoint is listed for Berth. No hosted endpoint is listed for TextGen.

### Are Berth and TextGen open source?

Yes. Berth is open source (Apache-2.0. The Berth name, the Pilot mascot and the artwork in assets/ are excluded from the licence, per the NOTICE file). TextGen is open source (AGPL-3.0).


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/berth-vs-text-generation-webui.json, and with the fewest tokens: https://www.anchorterminal.com/compare/berth-vs-text-generation-webui.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "berth", "b": "text-generation-webui"}`. From a terminal: `anchor compare berth text-generation-webui`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/berth.json and https://www.anchorterminal.com/api/v1/tools/text-generation-webui.json

## Other comparisons with Berth or TextGen

- [AnythingLLM vs Berth](https://www.anchorterminal.com/compare/anythingllm-vs-berth.md)
- [AnythingLLM vs TextGen](https://www.anchorterminal.com/compare/anythingllm-vs-text-generation-webui.md)
- [Berth vs BitRun](https://www.anchorterminal.com/compare/berth-vs-bitrun.md)
- [Berth vs Docker Model Runner](https://www.anchorterminal.com/compare/berth-vs-docker-model-runner.md)
- [Berth vs Foundry Local](https://www.anchorterminal.com/compare/berth-vs-foundry-local.md)
- [Berth vs Core](https://www.anchorterminal.com/compare/berth-vs-ghost-core.md)
- [Berth vs GPT4All](https://www.anchorterminal.com/compare/berth-vs-gpt4all.md)
- [Berth vs Jan](https://www.anchorterminal.com/compare/berth-vs-jan.md)
- [Berth vs Khoj](https://www.anchorterminal.com/compare/berth-vs-khoj.md)
- [Berth vs KoboldCpp](https://www.anchorterminal.com/compare/berth-vs-koboldcpp.md)
- [Berth vs Lemonade](https://www.anchorterminal.com/compare/berth-vs-lemonade.md)
- [Berth vs llama.cpp](https://www.anchorterminal.com/compare/berth-vs-llama-cpp.md)
- [Berth vs LM Studio](https://www.anchorterminal.com/compare/berth-vs-lm-studio.md)
- [Berth vs LocalAI](https://www.anchorterminal.com/compare/berth-vs-localai.md)
- [Berth vs MLX LM](https://www.anchorterminal.com/compare/berth-vs-mlx-lm.md)
- [Berth vs Ollama](https://www.anchorterminal.com/compare/berth-vs-ollama.md)
- [Berth vs Open WebUI](https://www.anchorterminal.com/compare/berth-vs-open-webui.md)
- [Berth vs screenpipe](https://www.anchorterminal.com/compare/berth-vs-screenpipe.md)
- [Berth vs vLLM](https://www.anchorterminal.com/compare/berth-vs-vllm.md)
- [BitRun vs TextGen](https://www.anchorterminal.com/compare/bitrun-vs-text-generation-webui.md)
- [Docker Model Runner vs TextGen](https://www.anchorterminal.com/compare/docker-model-runner-vs-text-generation-webui.md)
- [Foundry Local vs TextGen](https://www.anchorterminal.com/compare/foundry-local-vs-text-generation-webui.md)
- [Core vs TextGen](https://www.anchorterminal.com/compare/ghost-core-vs-text-generation-webui.md)
- [GPT4All vs TextGen](https://www.anchorterminal.com/compare/gpt4all-vs-text-generation-webui.md)
- [Jan vs TextGen](https://www.anchorterminal.com/compare/jan-vs-text-generation-webui.md)
- [Khoj vs TextGen](https://www.anchorterminal.com/compare/khoj-vs-text-generation-webui.md)
- [KoboldCpp vs TextGen](https://www.anchorterminal.com/compare/koboldcpp-vs-text-generation-webui.md)
- [Lemonade vs TextGen](https://www.anchorterminal.com/compare/lemonade-vs-text-generation-webui.md)
- [llama.cpp vs TextGen](https://www.anchorterminal.com/compare/llama-cpp-vs-text-generation-webui.md)
- [LM Studio vs TextGen](https://www.anchorterminal.com/compare/lm-studio-vs-text-generation-webui.md)
- [LocalAI vs TextGen](https://www.anchorterminal.com/compare/localai-vs-text-generation-webui.md)
- [MLX LM vs TextGen](https://www.anchorterminal.com/compare/mlx-lm-vs-text-generation-webui.md)
- [Ollama vs TextGen](https://www.anchorterminal.com/compare/ollama-vs-text-generation-webui.md)
- [Open WebUI vs TextGen](https://www.anchorterminal.com/compare/open-webui-vs-text-generation-webui.md)
- [screenpipe vs TextGen](https://www.anchorterminal.com/compare/screenpipe-vs-text-generation-webui.md)
- [TextGen vs vLLM](https://www.anchorterminal.com/compare/text-generation-webui-vs-vllm.md)
- [TextGen vs Underdog](https://www.anchorterminal.com/compare/text-generation-webui-vs-underdog.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
