Wer mal mit verschiedenen LLMs rumexperimentieren will ohne dabei auf die verbreiteten Online-Angebote wie z.B. ChatGPT oder Gemini zu setzen, der kann sich für eine lokale Implementierung mal Ollama anschauen.
Ollama ist eine Software mit der man LLMs herunterladen, lokal installieren und ausführen kann.
Homepage:
Github:
github.com
Eines vorneweg, das Thema ist (nicht überraschend) ein Ressourcenfresser.
LLMs benötigen viel RAM, CPU und einiges an Storage, wenn man es on premise(=lokal) betreiben will.
Allerdings kann man je nach vorhandener Hardware auch entsprechend abgespeckte Versionen installieren, welche dann mit deutlich weniger Anforderungen auskommen.
Ich habe hier Experimente mit einem System mit AMD 16-core CPU, 64GB RAM und unterstützter GPU als auch mit einem RaspberryPi5 gefahren. Beides geht, aber nicht zwingend mit der gleichen LLM, Leistungsfähigkeit und Performance.
Die Diskussion mit Phi3 (von Microsoft...), laufend auf einem raspi5 war durchaus amüsant. Das LLM hat immer wieder darauf bestanden, dass es in der Azure-Cloud auf entsprechend fetter Hardware laufe und man z.B. mit Office365 darauf zugreife. Die Vorstellung, dass es sich bei der zugrunde liegenden Hardware lediglich um eine 4-core ARM CPU mit 8GB RAM handelt und das Interface eine CLI ist wurde fast schon arrogant immer wieder abgetan...
An Betriebssystemen wird Linux, macOS und auch Windows unterstützt.
GPU-Support gibt es für diverse GPUs von AMD, NVIDIA und Apple.
Siehe hierzu: ollama/docs/gpu.md at main · ollama/ollama
Zur Bedienung:
Die grundlegende Bedienung erfolgt hier zunächst via Command Line Interface (CLI).
Zunächst läd und installiert man sich ollama, je nach OS-Version (siehe github).
Bei mir (opensuse Tumbleweed) genügte ein
.
Danach sollte der deamon/service gestartet werden.
Wieder in meinem Fall:
.
Unter macOS war es ein
.
Jetzt kann man ollama bereits nutzen, ohne Optionen gibt es einfach die Übersicht der verfügbaren Kommandos aus.
Mit
kann man sich z.B. die installierten LLMs anzeigen lassen.
Zu Beginn dürfte diese Liste erst mal leer sein.
Um sie zu füllen, schaut man sich am besten die verfügbaren Models auf der Homepage (library) an und entscheidet sich für den Anfang erst mal für was kleineres.
Ich habe zu Beginn mit tinydolphin, phi3 (Microsoft) und gemma (Google) rumgespielt, aber ihr könnt auch was anderes wählen. Von den meisten gibt es Versionen mit unterschiedlich vielen Parametern. Die kleineren sind vom Download-Umfang weniger und brauchen auch weniger Ressourcen im Betrieb.
Die derzeit leistungsfähigsten freien LLMs dürften llama3 (META) und ganz frisch qwen2 (ALIBABA) sein.
Heruntergeladen und installiert wird das LLM der Wahl mit pull:
Bsp.:
Das lädt die 2.3 GB der Mini Version mit 3.8B Parametern runter. Will man die Medium Variante mit 14B, hängt man das per Doppelpunkt an den Namen dran, also
.
Jetzt sollte man das LLM mit list auch sehen und kann es mit run entsprechend starten:
Je nach verwendetem LLM und den verfügbaren Ressourcen kann es ein paar Sekunden dauern bis der Prompt bereit für die Eingabe ist.
Wenn man "Send a message" sieht, kann man auch schon los legen.
Die sprachliche Unterstützung variiert von LLM zu LLM. Im Zweifel dürfte Englisch die breiteste Unterstützung haben, man kann seine Kommunikation aber durchaus auch auf Deutsch absetzen. Das Ergebnis kann wie gesagt variieren.
Ebenso macht es Sinn, hier vielleicht mit unterschiedlichen LLMs und Varianten zu spielen.
Grundsätzlich gilt je mehr Parameter desto leistungsfähiger, aber auch ressourcenfressender.
Den Eingabeprompt verlasst ihr übrigens entweder mit einem /bye oder Ctrl-d.
Soviel zum Einstieg.
Ollama bringt darüberhinaus auch eine API mit über die man die LLMs auch aus eigenen Softwareprojekten heraus ansprechen kann: ollama/docs/api.md at main · ollama/ollama
Außerdem gibt es auf der Github-Seite eine Übersicht über diverse 3rd party Software, wie z.B. auch GUIs.
Wer noch tiefer einsteigen will kann auch ein eigenes Modelfile erstellen.
Viel Spass und bleibt neugierig!
Ollama ist eine Software mit der man LLMs herunterladen, lokal installieren und ausführen kann.
Homepage:

Github:
GitHub - ollama/ollama: Get up and running with Llama 3, Mistral, Gemma, and other large language models.
Get up and running with Llama 3, Mistral, Gemma, and other large language models. - ollama/ollama
Eines vorneweg, das Thema ist (nicht überraschend) ein Ressourcenfresser.
LLMs benötigen viel RAM, CPU und einiges an Storage, wenn man es on premise(=lokal) betreiben will.
Allerdings kann man je nach vorhandener Hardware auch entsprechend abgespeckte Versionen installieren, welche dann mit deutlich weniger Anforderungen auskommen.
Ich habe hier Experimente mit einem System mit AMD 16-core CPU, 64GB RAM und unterstützter GPU als auch mit einem RaspberryPi5 gefahren. Beides geht, aber nicht zwingend mit der gleichen LLM, Leistungsfähigkeit und Performance.
Die Diskussion mit Phi3 (von Microsoft...), laufend auf einem raspi5 war durchaus amüsant. Das LLM hat immer wieder darauf bestanden, dass es in der Azure-Cloud auf entsprechend fetter Hardware laufe und man z.B. mit Office365 darauf zugreife. Die Vorstellung, dass es sich bei der zugrunde liegenden Hardware lediglich um eine 4-core ARM CPU mit 8GB RAM handelt und das Interface eine CLI ist wurde fast schon arrogant immer wieder abgetan...
An Betriebssystemen wird Linux, macOS und auch Windows unterstützt.
GPU-Support gibt es für diverse GPUs von AMD, NVIDIA und Apple.
Siehe hierzu: ollama/docs/gpu.md at main · ollama/ollama
Zur Bedienung:
Die grundlegende Bedienung erfolgt hier zunächst via Command Line Interface (CLI).
Zunächst läd und installiert man sich ollama, je nach OS-Version (siehe github).
Bei mir (opensuse Tumbleweed) genügte ein
Code:
zypper in ollama
Danach sollte der deamon/service gestartet werden.
Wieder in meinem Fall:
Code:
systemctl start ollama
Unter macOS war es ein
Code:
ollama serve
Jetzt kann man ollama bereits nutzen, ohne Optionen gibt es einfach die Übersicht der verfügbaren Kommandos aus.
Mit
Code:
ollama list
Zu Beginn dürfte diese Liste erst mal leer sein.
Um sie zu füllen, schaut man sich am besten die verfügbaren Models auf der Homepage (library) an und entscheidet sich für den Anfang erst mal für was kleineres.
Ich habe zu Beginn mit tinydolphin, phi3 (Microsoft) und gemma (Google) rumgespielt, aber ihr könnt auch was anderes wählen. Von den meisten gibt es Versionen mit unterschiedlich vielen Parametern. Die kleineren sind vom Download-Umfang weniger und brauchen auch weniger Ressourcen im Betrieb.
Die derzeit leistungsfähigsten freien LLMs dürften llama3 (META) und ganz frisch qwen2 (ALIBABA) sein.
Heruntergeladen und installiert wird das LLM der Wahl mit pull:
Bsp.:
Code:
ollama pull phi3
Code:
ollama pull phi3:14b
Jetzt sollte man das LLM mit list auch sehen und kann es mit run entsprechend starten:
Code:
ollama run phi3
Je nach verwendetem LLM und den verfügbaren Ressourcen kann es ein paar Sekunden dauern bis der Prompt bereit für die Eingabe ist.
Wenn man "Send a message" sieht, kann man auch schon los legen.
Die sprachliche Unterstützung variiert von LLM zu LLM. Im Zweifel dürfte Englisch die breiteste Unterstützung haben, man kann seine Kommunikation aber durchaus auch auf Deutsch absetzen. Das Ergebnis kann wie gesagt variieren.
Ebenso macht es Sinn, hier vielleicht mit unterschiedlichen LLMs und Varianten zu spielen.
Grundsätzlich gilt je mehr Parameter desto leistungsfähiger, aber auch ressourcenfressender.
Den Eingabeprompt verlasst ihr übrigens entweder mit einem /bye oder Ctrl-d.
Soviel zum Einstieg.
Ollama bringt darüberhinaus auch eine API mit über die man die LLMs auch aus eigenen Softwareprojekten heraus ansprechen kann: ollama/docs/api.md at main · ollama/ollama
Außerdem gibt es auf der Github-Seite eine Übersicht über diverse 3rd party Software, wie z.B. auch GUIs.
Wer noch tiefer einsteigen will kann auch ein eigenes Modelfile erstellen.
Viel Spass und bleibt neugierig!