Poldion Self-HostedEnglish
Teil von Poldion Self-Hosted

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.

  • Python
  • FastAPI
  • Ollama
  • OpenAI-kompatibel
  • Linux & macOS
  • AMD ROCm
Oberfläche des OllamaProxy mit Speicheranzeige, freigegebenen Modellen und Modulen

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 --build

Ohne Docker: pip install -r requirements.txt und python ollama_proxy.py vor einem vorhandenen Ollama. Danach http://<host>:11435/ öffnen.

Lizenz

MIT-Lizenz. Ollama und die Modelle werden nicht mitgeliefert. Jedes Modell hat eigene Lizenzbedingungen.