"Mein Cline friert ständig ein." – Ein Satz, der in r/LocalLLaMA täglich auftaucht. Die Lösung ist meist dieselbe: Falsches Modell, zu wenig RAM-Headroom, oder ein OOM-Killer, der zuschlägt.
Dieser Guide zeigt dir, wie du einen stabilen AI Coding Assistant auf einem 16GB RAM VPS einrichtest. Kein Einfrieren, keine Timeouts, volle Datenkontrolle.
💡 Noch keinen VPS? Unser Ollama VPS-Rechner berechnet die Hardware für dein Modell.
Falls du Ollama noch nicht installiert hast, starte mit unserem Ollama VPS Setup Guide.
Das Problem: Warum Cline auf deinem VPS einfriert
Die meisten Freezes haben drei Ursachen:
1. Memory Pressure
Ein 14B-Modell in Q4-Quantisierung braucht ~8-10 GB RAM. Klingt okay bei 16 GB – aber:
- Linux Kernel: ~500 MB
- Docker Overhead: ~200 MB
- VS Code Server (Remote SSH): ~500 MB
- Ollama Runtime: ~300 MB
Verfügbar fürs Modell: ~14 GB. Bei 10 GB Modell + 4 GB Context bleibt kein Spielraum mehr. Ein einziger größerer Request triggert den OOM-Killer.
2. Falsche Quantisierung
Nicht alle Q4-Varianten sind gleich:
- Q4_K_M: Beste Balance aus Qualität und Größe
- Q4_K_S: Kleiner, aber merkbar schlechtere Code-Qualität
- Q8_0: Zu groß für 16 GB bei 14B-Modellen
3. Context Window Overflow
Cline sendet oft den gesamten Datei-Kontext. Bei einem 32K Context Window und großen Dateien explodiert der RAM-Bedarf.
Die Lösung: Das richtige Setup
Hardware-Empfehlung: 16 GB RAM VPS
Für stabiles LLM-Hosting brauchst du mindestens 16 GB RAM und 8 vCPUs. Hier die besten Optionen:
| Anbieter | Produkt | vCPU | RAM | Storage | Preis/Mo | |
|---|---|---|---|---|---|---|
| IONOS VPS Linux S+ | 2 | 2 GB | 80 GBNVMe SSD | 2.50 | Angebot | |
| VPS 500 G12 | 2 | 4 GB | 128 GBSSD | 5.91 | Angebot | |
| CPX42 | 8 | 16 GB | 240 GBNVMe SSD | 30.33 | Angebot | |
| AMD Ryzen 12 Cores | 12 | 64 GB | 1000 GBNVMe SSD | 102.82 | Angebot |
Warum diese Specs?
- 16 GB RAM = 7B-Modell + 6 GB Headroom für System und IDE
- 8 vCPUs = Schnelle Token-Generierung (~30-50 tokens/s)
- NVMe SSD = Schnelles Modell-Loading
Ein Hetzner CX32 oder IONOS VPS L reicht für dieses Setup völlig aus.
Schritt 1: Modell-Auswahl (Der wichtigste Schritt)
Vergiss 14B-Modelle auf 16 GB RAM. Sie funktionieren – bis sie es nicht mehr tun.
Empfehlung: Qwen2.5-Coder-7B-Instruct
| Eigenschaft | Wert |
|---|---|
| Parameter | 7 Milliarden |
| Quantisierung | Q5_K_M (empfohlen) |
| RAM-Bedarf | ~5.5 GB |
| Context | 32K tokens |
| Stärken | Code-Completion, Refactoring, Erklärungen |
Warum nicht größer?
Ein 7B-Modell mit Q5-Quantisierung schlägt ein 14B-Modell mit Q4 in der Praxis, weil:
- Mehr RAM-Headroom = Keine Freezes bei großen Requests
- Schnellere Inferenz = Bessere IDE-Integration
- Höhere Quantisierung = Bessere Code-Qualität pro Parameter
Alternative: DeepSeek-Coder-V2-Lite-Instruct
Falls du mehr "Reasoning" brauchst (komplexe Architektur-Fragen):
| Eigenschaft | Wert |
|---|---|
| Parameter | 16B (MoE, effektiv ~2.4B aktiv) |
| Quantisierung | Q4_K_M |
| RAM-Bedarf | ~6 GB |
| Stärken | Komplexe Code-Analyse, Multi-File Reasoning |
DeepSeek nutzt Mixture-of-Experts – nur ein Teil der Parameter ist aktiv, daher der niedrige RAM-Bedarf trotz 16B.
Download-Links (Hugging Face)
- Qwen2.5-Coder-7B-Instruct-GGUF (Offiziell)
- DeepSeek-Coder-V2-Lite-Instruct-GGUF (Community)
Schritt 2: Ollama mit Ressourcen-Limits
Standard-Ollama frisst allen verfügbaren RAM. Für Stabilität brauchen wir Limits.
docker-compose.yml
services:
ollama:
image: ollama/ollama:latest
container_name: ollama
restart: unless-stopped
ports:
- "11434:11434"
volumes:
- ollama_data:/root/.ollama
environment:
- OLLAMA_NUM_PARALLEL=1
- OLLAMA_MAX_LOADED_MODELS=1
- OLLAMA_FLASH_ATTENTION=1
deploy:
resources:
limits:
memory: 12G
reservations:
memory: 8G
volumes:
ollama_data:
Wichtige Einstellungen erklärt
| Variable | Wert | Warum |
|---|---|---|
OLLAMA_NUM_PARALLEL | 1 | Verhindert parallele Requests, die RAM sprengen |
OLLAMA_MAX_LOADED_MODELS | 1 | Nur ein Modell im RAM (kein Swap zwischen Modellen) |
OLLAMA_FLASH_ATTENTION | 1 | Effizientere Attention-Berechnung |
memory: 12G | Limit | 4 GB bleiben fürs System |
Modell laden
docker compose up -d
docker exec -it ollama ollama pull qwen2.5-coder:7b-instruct-q5_K_M
Schritt 3: Continue.dev statt Cline
Cline ist mächtig, aber frisst zu viel RAM. Für Remote-Ollama auf VPS empfehle ich Continue.dev:
Warum Continue.dev?
| Feature | Cline | Continue.dev |
|---|---|---|
| Tab-Autocomplete | Nein | Ja |
| Chat + Edit | Ja | Ja |
| Memory Footprint | Hoch | Niedrig |
| Ollama-Stabilität | Problematisch | Excellent |
| Open Source | Ja | Ja |
Installation
- VS Code Extension: "Continue" installieren
- Config erstellen:
~/.continue/config.json
{
"models": [
{
"title": "Qwen Coder",
"provider": "ollama",
"model": "qwen2.5-coder:7b-instruct-q5_K_M",
"apiBase": "http://YOUR_VPS_IP:11434"
}
],
"tabAutocompleteModel": {
"title": "Qwen Autocomplete",
"provider": "ollama",
"model": "qwen2.5-coder:7b-instruct-q5_K_M",
"apiBase": "http://YOUR_VPS_IP:11434"
}
}
SSH-Tunnel (Empfohlen)
Statt Port 11434 öffentlich zu exponieren:
ssh -L 11434:localhost:11434 user@YOUR_VPS_IP
Dann in der Config apiBase: "http://localhost:11434" nutzen.
Schritt 4: Anti-Freeze Optimierungen
OOM-Killer Tuning
Verhindere, dass Linux Ollama killt:
# Ollama-Prozess vor OOM-Killer schützen
echo -1000 | sudo tee /proc/$(pgrep ollama)/oom_score_adj
Für permanente Lösung in /etc/systemd/system/ollama.service.d/override.conf:
[Service]
OOMScoreAdjust=-1000
Swap-File (Notfall-Buffer)
Ein kleines Swap-File als Sicherheitsnetz:
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
Achtung: Swap ist nur für Notfälle. Wenn Ollama regelmäßig swappt, ist das Modell zu groß.
Context-Limit in Continue.dev
Begrenze den Context, den Continue sendet:
{
"contextProviders": [
{
"name": "code",
"params": {
"nRetrieve": 10,
"nFinal": 5
}
}
]
}
Kostenvergleich: VPS vs. Cloud APIs
| Lösung | Kosten | Tokens | Datenschutz |
|---|---|---|---|
| GPT-4 API | ~20-50 Euro mtl.* | Begrenzt | Daten bei OpenAI |
| Claude API | ~20-40 Euro mtl.* | Begrenzt | Daten bei Anthropic |
| 16GB VPS + Ollama | ~10-15 Euro mtl. | Unbegrenzt | Volle Kontrolle |
*Bei typischer Entwickler-Nutzung (50-100K Tokens/Tag)
Break-Even: Nach ~2 Wochen intensiver Nutzung hat sich der VPS amortisiert.
FAQ
Häufig gestellte Fragen
Fazit
Ein lokaler LLM Coding Assistant auf einem 16GB VPS ist 2026 absolut machbar – wenn du das richtige Setup wählst:
- 7B-Modell statt 14B (Stabilität > Größe)
- Q5_K_M Quantisierung für beste Code-Qualität
- Continue.dev statt Cline für Remote-Ollama
- Docker mit Memory-Limits gegen Freezes
- SSH-Tunnel für Sicherheit
Die Kosten: ~10-15 Euro mtl. für unbegrenzte, private AI-Coding-Power.


