[Ollama] ist ein Runner für Large Language Modelle (LLM) im Format GGUF. 

!!!Herunterladen von Modellen
Teilweise können diese direkt von der Seite ollama.com heruntergeladen werden:

{{{
ollama pull llama3.2:1b
}}}

Andere Modelle können von Huggingface heruntergeladen werden:

{{{
ollama pull hf.com/<model-name>
}}}

!!!Installation von Modellen über Modelfile
Ansonsten können Modelle über ein Modelfile erzeugt werden. Im einfachsten Fall sieht das so aus:

{{{
FROM ./<model-file>.gguf
}}}

Dann führt man ollama create aus:

{{{
ollama create <model-name> -f .\Modelfile
}}}

!!!Ollama Tunnel
Lokales Ollama auf einen Server im Internet tunneln:

* OpenSSH installieren
* AutoSSH installieren
* Ein Schlüsselpaar id_rsa und id_rsa.pub erzeugen
* Den öffentlichen Schlüssel auf dem Server installieren
* Den privaten Schlüssel nach C:\Windows\System32\config\systemprofile\.ssh kopieren
* Gegebenenfalls known_hosts ebenfalls dort installieren
* Falls Ollama für den privaten Nutzer installiert ist, dies z.B. nach C:\server\ollama verschieben
* Mit NSSM (Non-Sucking Service Manager) sowohl Ollama als auch AutoSSH als Windows Service installieren

Der Befehl für AutoSSH sieht etwa wie folgt aus:

{{{
autossh -M 0 -v -o TCPKeepAlive=yes -o ServerAliveInterval=30 -o ServerAliveCountMax=3 -R 172.17.0.1:11434:localhost:11434 <user>@<host>
}}}

* -M 0: Monitoring der Verbindung
* -v: Verbose, kann von NSSM in eine Logdatei umgeleitet werden
* -o: Diverse Keepalives
* -R: Reverse-Portweiterleitung von lokal 11434 remote auf Docker-IP-Range

Gegebenenfalls auf dem Ubunto-Host SSH Port Forwarding aktivieren:

{{{
GatewayPorts clientspecified
AllowTcpForwarding yes
}}}

__Hinweis:__ Es sollte nicht "GatewayPorts yes" verwendet werden, da die Ports sonst komplett ins Internet weitergeleitet werden.