Self-hosted speech to text and TTS on a VPS
Run Whisper transcription and Piper text to speech on your own VPS. What it costs in CPU time and disk, and how to expose an OpenAI compatible endpoint.
Filtering by topic #self-hosted-ai · clear
Run Whisper transcription and Piper text to speech on your own VPS. What it costs in CPU time and disk, and how to expose an OpenAI compatible endpoint.
Pick a model by the RAM you actually have. Sizing arithmetic for 4 GB, 16 GB and 64 GB VPS plans, honest CPU token rates, and the hidden cost of context.
The KV cache is RAM your server pays for on every request. Prompt caching is a bill someone else discounts. Only one can break a model load.
Ollama truncates long prompts at a small default context window. Set num_ctx per request or server wide, and size the KV cache RAM before you raise it.
Ollama unloads your model after 5 minutes idle, so the next request pays the full load time again. Set keep_alive so it sticks, even after a reboot.
One user was fine, five crawl. How batching, KV cache limits, prefill and queue depth decide how many people your LLM server can serve at once.
Point a coding agent at a model you host: the base URL, the dummy key, the context length that breaks everything, and the jobs a local model wins.
Renting a GPU by the hour beats per-token API billing only above a certain volume. Here is the formula and the monthly token count where it flips.
Run one OpenAI-compatible endpoint in front of every provider you use: LiteLLM on a VPS with virtual keys, per-key budgets, fallbacks, and pinned images.
There is no Qwen 3.8 on Ollama yet. Here is the arithmetic for running the 27B tag that does exist on a CPU-only VPS, and what fits in 8 to 64 GB.
Open WebUI, LibreChat, Hollama and OrionChat compared on a VPS with a public IP: RAM left for the model, logins, remote Ollama, and upkeep.
llama.cpp is the engine, Ollama is the layer on top. Which one to run on a CPU-only VPS, how quantisation choice changes RAM, and when neither fits.