OllamaProxy
Ein normalisierender Proxy vor Ollama: Jedes Modell läuft mit genau einer Konfiguration und bleibt im Speicher – egal, was Open WebUI, Home Assistant oder Agenten schicken.

Warum?
Jeder Client schickt eigene Einstellungen an Ollama, vor allem die Kontextgröße. Ollama lädt das Modell dann jedes Mal neu, und das dauert bei großen Modellen Sekunden bis Minuten. Der Proxy gibt nur ausgewählte Modelle frei und erzwingt für jedes die gleichen Werte. So läuft pro Modell ein einziger Runner dauerhaft.
Alle Clients zeigen einfach auf den Proxy, für Ollama auf Port 11435 und für OpenAI-Clients auf /v1.
Funktionen
Freigegebene Modelle
Alias, Kontext, keep_alive und think-Vorgabe je Modell; unbekannte Namen landen beim Standardmodell.
Profile
Weitere Namen mit eigenen Sampling-Werten auf demselben Runner – z. B. ein Coding-Profil, ohne neu zu laden.
OpenAI → nativ
Übersetzt /v1/chat/completions in die native API, inklusive Streaming, Werkzeugen und Bildern.
Bild- und Audio-Helfer
Modelle ohne Vision oder Audio bekommen Medien vorab von einem Helfermodell beschrieben.
Wächter
Lädt dauerhafte Modelle nach einem Neustart automatisch nach – nur wenn sie in den Speicher passen.
Echte Speicheranzeige
Misst den tatsächlichen Verbrauch je Modell, auch auf Unified-Memory-Systemen wie AMD Strix Halo.
Module
Weitere Dienste auf derselben Maschine hängen sich als Modul an: Sie stehen in modules.json, erscheinen mit Link und Speicherverbrauch in der Oberfläche, und der Wächter gibt ihren Speicher nach Leerlauf frei.
Zusammenspiel
Der Proxy ist die KI-Zentrale. WhisperNotes, BasaltNotes, ImageGen und Tabletop Forge holen ihr Sprachmodell hier ab und richten sich nach der erzwungenen Kontextgröße.
Schnellstart
git clone https://github.com/Poldion/OllamaProxy.git ~/ollama-proxy/app
cp ~/ollama-proxy/app/deploy/stack.env.example ~/ollama-proxy/stack.env
cd ~/ollama-proxy/app && docker compose --env-file ../stack.env up -d --buildOhne Docker: pip install -r requirements.txt und python ollama_proxy.py vor einem vorhandenen Ollama. Danach http://<host>:11435/ öffnen.