Published on

llama.cpp vs Ollama: Self-hosted Inference für deutsche Unternehmen 2026

Authors

llama.cpp vs Ollama: Self-hosted Inference für deutsche Unternehmen 2026

TL;DR

Ollama und llama.cpp sind nicht dasselbe, auch wenn Ollama llama.cpp unter der Haube als Inference-Engine nutzt. llama.cpp ist das rohe C/C++-Backend — maximale Kontrolle, minimale Abstraktion. Ollama ist der komfortable Wrapper mit Model-Registry, CLI und REST-API. Beide sind Open Source (MIT), beide laufen on-premise. Welches Tool wann für deutsche Mittelständler die richtige Wahl ist, zeigt dieser Vergleich mit Kosten, DSGVO-Bewertung und Entscheidungsmatrix.

Kriteriumllama.cppOllama
InstallationC++-Compiler + CMake, Build aus Source oder BinaryEin-Zeilen-Installation für alle Plattformen
Modell-ManagementManuell: GGUF-Dateien von Hugging Face ladenIntegrierte Registry: ollama pull llama3.2
QuantisierungSelbst wählen (q2_K bis q8_0) über llama-quantizeAutomatisch, abhängig vom verfügbaren VRAM
APIEingebauter llama-server (OpenAI-kompatibel)OpenAI-kompatible REST-API inklusive
Performance rohHöher bei gleicher Konfiguration (kein Overhead)Sehr nah an llama.cpp, leichter Wrapper-Overhead
GPU-OffloadVolle Kontrolle über -ngl-FlagAutomatisch, konfigurierbar über OLLAMA_GPU_LAYERS
Multi-GPUManuell, über -tensor-splitAutomatisch, erkennt alle GPUs
ConcurrencySequenziell pro Prozess (es sei denn, mit llama-server --parallel)FIFO-Queue (Standard); OLLAMA_NUM_PARALLEL ab 0.5.13
SteuerungFlags, Konfigurationsdateien, SkripteModelfiles, Umgebungsvariablen, CLI
Einrichtung15–30 Minuten (inkl. Build)3–5 Minuten

1. Die Architektur: Was llama.cpp wirklich ist

llama.cpp wurde 2023 von Georgi Gerganov als reine C/C++-Implementierung von LLaMA-Inference gestartet. Das Projekt definierte das GGUF-Format — heute das verbreitetste Format für quantisierte Modelle im lokalen Betrieb.

Kern-Eigenschaften:

  • Keine externen Abhängigkeiten (weder Python noch PyTorch)
  • Quantisierung von 8-Bit bis runter zu ~1,5 Bit pro Weight
  • Hardware-Backends: CUDA, Metal, Vulkan, ROCm, SYCL, CPU (AVX2/AVX512)
  • Eingebauter llama-server mit OpenAI-kompatiblem Endpoint
  • Benchmark-Tool llama-bench direkt im Projekt

llama.cpp ist der Motor. Ollama ist das Auto, das den Motor einbaut und mit Komfort-Features umgibt.

2. Was Ollama draufsetzt

Ollama verwendet llama.cpp als Inference-Backend (auf den meisten Plattformen) und fügt hinzu:

  • Model-Registry: ollama pull lädt Modelle in ein standardisiertes Verzeichnis (~/.ollama/models/)
  • Modelfile: Eigene Modell-Konfigurationen per Textdatei (Prompt-Template, System-Prompt, Parameter)
  • CLI + API: ollama run, ollama serve – alles aus einem Befehl
  • Automatische Konfiguration: VRAM-Erkennung, GPU-Offload, Quantisierung passen sich der Hardware an

Der Preis: weniger Kontrolle. Wo llama.cpp jedes Flag offenlegt, entscheidet Ollama selbst, wie das Modell geladen wird.

3. Kosten-Tabelle: Beide Open Source, aber die GPU kostet

llama.cpp und Ollama sind kostenlos (MIT-Lizenz). Die Kosten entstehen durch die Hardware.

Postenllama.cppOllama
SoftwareKostenlos, MITKostenlos, MIT
GPU (einmalig)RTX 4090 24 GB ~1.800 € oder RTX 6000 Ada ~7.000 €identisch
GPU mieten (monatlich)Hetzner GPU: ~1,50 €/hidentisch
Strom (jährlich)~400–800 € (je nach GPU-Last)identisch
SupportCommunity (GitHub Issues, Discord)Community (GitHub, Discord)
Schulung1–2 Tage Einarbeitung2–4 Stunden Einarbeitung
WartungSelbst: Updates per git pull && cmake --buildollama update
Gesamt (Jahr 1, mit Kauf-GPU)~2.500–8.500 €~2.400–8.300 € (weniger Einarbeitung)

Fazit: Die Tools selbst verursachen keine Lizenzkosten. Der Unterschied liegt in der Einarbeitungszeit und der Flexibilität.

4. DSGVO-Block: Beide on-premise, aber mit Nuancen

Gemeinsam: Sowohl llama.cpp als auch Ollama laufen vollständig auf eigener Hardware. Es werden keine Daten an Dritte gesendet. Kein API-Call verlässt das Unternehmen. Beide erfüllen damit die Kern-Anforderung der DSGVO für die Verarbeitung personenbezogener Daten: Kontrolle über die Datenverarbeitung.

Unterschiede:

DSGVO-Aspektllama.cppOllama
Daten verlassen das UnternehmenNein (bei rein lokaler Konfiguration)Nein
TelemetrieKeineOLLAMA_DEBUG=1 für Logs; kein automatisches Phone-Home
Modell-UpdatesManuell (volle Kontrolle)Über ollama pull von public Registry — Telemetrie möglich (ollama.com)
AuditierbarkeitVoll (eigene Build-Pipeline, eigener Code)Eingeschränkt (Binary von GitHub; Closed-Source-Komponente im Ollama-Desktop)
LoggingÜber llama-server --log-fileOLLAMA_DEBUG, Logs über systemd
Verschlüsselung (Transport)Optional über Reverse-Proxy (nginx + TLS)Via nginx oder Caddy

Praxistipp für DSGVO-konformen Betrieb: Für viele Mittelständler reicht Ollama. Wer in regulierten Umgebungen (Gesundheit, Finanzen, Behörden) arbeitet oder einen vollständig auditierbaren Build-Prozess braucht, nutzt llama.cpp direkt mit selbst kompilierten Binaries und eigenem Model-Management.

Hinweis: Der Beitrag ersetzt keine Rechtsberatung. Bei spezifischen DSGVO-Fragen zum KI-Einsatz empfehlen wir die Abstimmung mit dem Datenschutzbeauftragten.

5. Entscheidungsmatrix: Wann llama.cpp, wann Ollama?

Dein SzenarioEmpfehlungBegründung
Einzelner Entwickler testet ModelleOllamaKein Build, kein Konfigurationsaufwand
Kleines Team (unter 5 Nutzer) im Chat-BetriebOllamaReicht, geringe Einarbeitung
Produktiv-Server mit vielen Nutzernllama.cppllama-server --parallel; mehr Kontrolle über Batch-Größe
Eingebettetes System (Raspberry Pi, Edge)llama.cppMinimale Abhängigkeiten, cross-kompilierbar
CI/CD-Pipeline mit wechselnden ModellenOllamaollama pull per Skript, schnell austauschbar
Regulierte Umgebung (ISO 27001, DSGVO)llama.cppVollständig auditierbarer Build
Multi-GPU-Server (4x RTX 4090)llama.cpp--tensor-split gibt präzise Kontrolle
Benchmarking / Performance-Messungllama.cppllama-bench direkt im Projekt
Schnelles PrototypingOllamaMinuten bis zum ersten Prompt
Maximaler Durchsatz unter LastvLLM (siehe separater Benchmark)Continuous Batching, PagedAttention

Faustregel: Wer Kontrolle braucht, nimmt llama.cpp. Wer Zeit sparen will, nimmt Ollama. Wer beides will, baut einen Ollama-Server und tauscht bei Bedarf den llama.cpp-Build aus — das ist der Vorteil der offenen Architektur.

6. FAQ

Ist Ollama nicht einfach llama.cpp mit GUI?

Nein. Ollama ist ein eigener Dienst mit Model-Registry, CLI, REST-API und Modelfile-System. Die GUI kommt von Drittanbietern wie Open WebUI. Ollama verwendet llama.cpp als Inference-Engine, nicht als UI.

Ist llama.cpp schneller als Ollama?

Ja, in der Regel — aber der Unterschied ist für die meisten Anwendungen irrelevant. Bei identischem Modell, gleicher Quantisierung und GPU-Offload liegt llama.cpp 3–10 % vorn, weil es keinen Wrapper-Overhead hat. Der Größenunterschied zeigt sich erst bei vielen parallelen Anfragen.

Kann ich Ollama-Modelle in llama.cpp laden?

Ja. Ollama speichert Modelle als GGUF-Dateien unter ~/.ollama/models/blobs/. Du kannst diese Datei direkt mit llama.cpp laden: ./llama-cli -m ~/.ollama/models/blobs/<hash>.

Kann ich llama.cpp als Backend für Ollama austauschen?

Nicht ohne Weiteres. Ollama bringt ein eigenes, modifiziertes llama.cpp als Submodul mit. Du kannst zwar ein eigenes llama.cpp kompilieren und die Binary ersetzen, das wird aber nicht offiziell unterstützt und kann bei Updates brechen.

Brauche ich eine GPU für llama.cpp oder Ollama?

Nein. Beide laufen auch auf der CPU — aber deutlich langsamer. Für einen Chatbot im Produktivbetrieb sind 8–16 Token/s auf CPU oft zu wenig. Eine GPU mit 12–24 GB VRAM ist die sinnvolle Mindestausstattung. Mehr Details im VRAM-Rechner.

Sind llama.cpp und Ollama DSGVO-konform?

Ja, beide laufen on-premise und senden keine Daten nach außen — vorausgesetzt, der Zugriff ist durch einen Reverse-Proxy mit TLS gesichert und externe Modelldownloads sind dokumentiert. Siehe DSGVO-Block oben.

Welches Modell passt auf meine GPU?

Das hängt von Quantisierung und Kontextlänge ab. Der VRAM-Rechner hilft bei der Abschätzung. Eine Übersicht über GPUs und ihre VRAM-Ausstattung gibt es im GPU-Vergleich 16 GB vs 24 GB.

Öffnet Ollama eine Internetverbindung beim Start?

Ollama prüft beim ersten Start die Modell-Registry. Im laufenden Betrieb (bei bereits geladenem Modell) besteht keine aktive Verbindung. Für DSGVO-kritische Umgebungen empfiehlt sich ein Air-Gap-Setup mit lokaler Modell-Registry.

7. Quellen

QuelleURL
llama.cpp GitHub Repositorygithub.com/ggml-org/llama.cpp
Ollama GitHub Repositorygithub.com/ollama/ollama
GGUF-Format-Spezifikationgithub.com/ggml-org/ggml
vLLM vs Ollama Durchsatz-Benchmarkki-mittelstand.eu
VRAM-Rechner für KI-Modelleki-mittelstand.eu
GPU-Vergleich 16 GB vs 24 GBki-mittelstand.eu
Ollama Load-Balancer mit nginxki-mittelstand.eu

Verwandte Themen

📖 Verwandte Artikel

Weitere interessante Beiträge zu ähnlichen Themen