Vor fast genau einem Jahr testete ich, wie gut oder schlecht eine lokal installierte KI (LLM) funktionieren würde. Mein Setup hatte sich seit dem letzten Test nicht geändert, einzig und allein der CPU-Lüfter wurde durch eine Wasserkühlung ersetzt. Meine gesamte Hardware in meinem Rechner besteht fast nur aus "ausgemusterter" Hardware (z.B. älteres Server-Mainboard, usw.), die nicht mehr benötigt und verschenkt wurde. Die ebenfalls gebrauchte Grafikkarte bekam ich letztes Jahr zum Geburtstag geschenkt. Daraus hatten wir einen tollen Rechner für mich gebaut, für den wir nur wenige Komponenten dazu holen mussten, weil Gehäuse, Netzteil und mehr alles schon vorhanden war. Mein derzeitiges Setup:
Prozessor: 12 × AMD Ryzen 5 3600 6-Core Processor
Arbeitsspeicher: 32 GB
Grafikkarte: NVIDIA GeForce RTX 3070 (8GB VRAM)
Installiert habe ich auf diesem Rechner Arch Linux mit KDE (Wayland).
Ein klasse Rechner, der stabil läuft und mit dem es Spaß macht, zu arbeiten.
Wichtig zu wissen ist, dass ein LLM in den Grafikkarten-Speicher (VRAM) geladen wird. Dieser sollte also üppig bemessen sein - grob gesagt: Je höher der VRAM der Grafikkarte, umso ein bessere LLM-Modell kann man damit benutzen. Und besser heißt hier - ebenfalls grob gesagt (damit auch für Anfänger verständlich) - leistungsfähiger, "intelligenter", effizienter und vielleicht auch fehlerfreier und mit weniger Halluzination beim Ergebnis. Zum noch besseren Verständnis: Meine Grafikkarte mit 8GB ist für mein Vorhaben recht knapp bemessen. 😂
Nach dem ernüchternden Ergebnis im letzten Jahr hatte ich absolut keine Erwartungen mehr an mein Vorhaben. Zu ernüchternd war das Ergebnis von damals, denn zu diesem Zeitpunkt dauerte es unfassbar lange, bis die geladene KI überhaupt mal auf einen Prompt reagierte. Noch viel länger dauerte dann aber auch eine Antwort! In der Zeit konnte man locker - je nach geladenem Modell - Kaffee kochen, wenn nicht gleich auch noch anpflanzen gehen.
Ich installierte also gestern erst einmal LM-Studio für einen ersten groben Test. Über LM-Studio kann man - ebenfalls sehr vereinfacht erklärt - LLMs herunterladen, konfigurieren, aber auch nutzen. Dafür gibt es eine Oberfläche, die ähnlich der Oberflächen ist, wie man sie von den LLMs im Internet kennt (ChatGPT, Gemini, Claude, Mistral, etc.). Ich versuchte gleich mal ein Modell, von dem ich hörte, dass es sehr interessant sein sollte (Gemma 4 26B A4B) - wusste aber von vornherein, dass es mit meinem GPU-VRAM absolut unpassend wäre. Und natürlich scheiterte schon das Laden des LLM in LM-Studio und brach ab. Ja gut, aber damit war zu rechnen gewesen. Selbst wenn es bei mir gestartet wäre - mein VRAM wäre dafür viel zu klein gewesen. Alles, was nicht in den VRAM passt, wird in den RAM ausgelagert. Ist der RAM dann voll, geht es auf die SSD/M.2... was den PC immer mehr und mehr verlangsamt. Außerdem kann es hier auch zu schlechteren Ergebnissen des LLMs kommen.
Also musste ein bedeutend kleineres Modell her... Gemma 4 E2B. Dieser passte locker in meinen VRAM, das Modell war realitv schnell runtergeladen mit unter 5GB (Downloadgröße). Da dieser recht flott auf meinem Rechner lief, steigerte ich mich dann langsam. Nun muss man wissen - das mit den LLMs ist eine Wissenschaft für sich. Es gibt gefühlt drölf Milliarden verschiedene Modelle, alle noch mit zig verschiedener Quantisierung und vielen weiteren Parameter. Deswegen verzichte ich jetzt hier teilweise auf die exakten Modellbezeichnungen.
Ich tastete mich ein wenig weiter hoch bin zum Gemma 4 E4B Q8_0 GGUF. DEN musste ich schon ganz schön drosseln, drosseln bedeutete hierbei den GPU-Offload runterzustellen (auf 25) und auch die Kontextlänge setze ich stark runter (auf 32768). Den Gemma 4 E4B Q8_0 GGUF testete ich dann erst einmal eine Zeit in LM-Studio mit den einfachsten Dingen wie "Erstelle mir ein Rezept für einen Apfelkuchen", "Wie lautet der Songtext von "XYZ"", "Übersetze mir diesen englischen Text in die deutsche Sprache", "Erstelle mir einen Alt-Text mit maximal 2 - 3 Sätzen für dieses Foto", usw.
Ich ging auch noch einen Schritt weiter. Ich installierte mir VS-Code und dort Cline als Extension. Mit Cline kann ich mir aussuchen, welches LLM mit welches Programm in VS-Code genutzt werden soll - ich trug dort also LM-Studio ein, was auch als Server agiert für das lokal installierte Modell und wählte "meinen" Gemma 4B E4B Q8_0 aus. Zum testen gab es dann einen "einfachen" Prompt von mir:
"Generiere mir eine anspruchsvolle Webseite für einen Shop. Enthalten sein soll ein Warenkorb, eine moderne Menüführung aus dem Jahr 2026 und modernes CSS." Diesen Test führte ich mit unterschiedlichen Modellen durch - es war sehr interessant, wie unterschiedlich die Ergebnisse waren. Bewusst lies ich mit diesem Prompt dem LLM einen gewissen Handlungsspielraum, weil ich einfach schauen wollte, was es so macht.
Das klappte erstaunlich gut. Ja gut. Ich hatte hierbei nun aber auch ausgeblendet, wie viel mein Rechner damit zu tun hatte - ein Blick in btop zeigte, dass der VRAM ordentlich, wenn auch noch nicht ganz, gefüllt war, der Rest wurde in den RAM ausgelagert. Was kein Thema wäre - aber der Rechner wird dadurch halt auch etwas langsamer und ich wollte ja keinen Absturz oder OOM-Kill provozieren. Außerdem dauerte es wirklich für meinen Geschmack dann doch einen Ticken zu lange, bis mal so eine Antwort vom LLM generiert und auch ausgespuckt wurde. Und irgendwann dauerte es immer länger in VS-Code, bis mal etwas fertig wurde. Wenn ich länger meine, dann meine ich, es dauerte 10 Minuten, bis eine CSS-Datei, eine HTML-Datei und eine JS-Datei erstellt wurden.
Ich stieg also auf den Gemma 4B E4B Q4_K_M um. Dieser lud schnell, die Antworten kamen flott, der Rechner fühlte sich fast so an wie ohne geladenes LLM. Die Ergebnisse waren auf alle Fälle so, dass man sagen kann: Für die ganz normalen, einfachen Aufgaben wie vorhin schon erwähnt reicht dieses LLM völlig aus! Die Contextgröße konnte ich hier etwas höher setzen, GPU-Offload auf maximum. Das machte Spaß und kam mir von der Geschwindigkeit (und nur von der Geschwindigkeit!) fast vor wie ein LLM im Internet!
Nun gibt es zwischen diesen beiden Modellen noch ein weiteres Modell und man sollte natürlich immer seinen Sweet Spot finden. Also auf zum testen des Gemma 4B E4B Q6_K. Hier allerdings auch mit reduziertem GPU-Offload (33 bzw. 35 oder weniger, wenn z.B. auch noch OBS nebenbei läuft!) und fester Contextgröße von 32768. Und ich glaube, das ist es für mich. Die Antworten kommen nicht ganz so schnell, wie man es von Gemini und Co. gewohnt ist - aber man darf einfach nicht vergessen, dass es sich hierbei um ein lokal installiertes Modell handelt. Und wenn ich nun entscheiden muss, ob ich meine Daten bei Gemini oder Mistral eingebe - auch wenn ich 5 Sekunden länger warten muss - für so einfache Dinge nehme ich dann natürlich lieber meine eigene KI, die ich auf meinem eigenen Rechner hoste!
Nun bin ich ja schon bekannt dafür, dass ich gerne bastel und teste... ich wollte es einfach wissen! Wie gut kann die lokale KI mit Coding umgehen? Kann sie das überhaupt? Die ersten groben Tests mit HTML/CSS und JS sahen schon ganz ok aus. Hätte ich diese Test weiter vertieft, mit anderen Prompts - hier wären garantiert noch bessere Ergebnisse bei herausgekommen.
Aktuell nutze ich recht häufig eine Kombi (je nach anfallender Arbeit) aus Gemini, AI Studio, Claude oder aber auch Antigravity. Natürlich würde ich diese gerne eines Tages komplett durch ein lokal installiertes Modell ersetzen, klar. Wer nicht. Also habe ich mit den 3 Gemma 4 E4B - Modellen einfach mal spaßeshalber ausprobiert, was hier schon möglich ist.
Um es abzukürzen: hilfreich kann eine llms.txt nicht nur für lokal installierte KIs sein, in der klare Anweisungen stehen. Bei der Nutzung von Cline empfiehlt sich auch eine .clinerules, in der ebenso Regeln definiert werden. Das erspart dem LLM Token und bei der teilweise sehr geringen Contextgröße ist das ein echter Vorteil.
Also was meine getesteten Modells können: Coden. Das man dieses Ergebnis nicht mit dem Ergebnis von Claude und Co. vergleichen kann - darüber brauchen wir ja nun nicht zu reden, das ist klar. Aber ich bin angenehm überrascht. Ich ging davon aus, dass ich nach diesen Tests wieder alles deinstallieren kann wie im letzten Jahr, aber nein! Diese LLMs sind für mich nutzbar, brauchbar und absolut überraschend gut.
Für private Daten, die die KI im Netz nicht bekommen soll, ist sowas natürlich ideal. Auch wenn mal das Internet ausfällt, hat man "zur Not" das lokal installierte LLM noch zu Hand.
Ich werde die lokale KI in den nächsten Tagen weiterhin gründlich testen und bin auf weitere Ergebnisse gespannt. Auch gespannt bin ich auf die Entwicklung bezüglich neuer Modelle in den nächsten Monaten, hier wird sich noch mal so einiges tun, da bin ich mir sicher. Es lohnt sich also, immer mal wieder nach neuen Modellen zu schauen, die sich lokal installieren lassen!
Wer am Wochenende mal ein bisschen Zeit zum testen und basteln hat, hier in Kurzfassung die Schritte, die ich unternommen habe:
LM-Studio installierenModell aussuchen und über LM-Studio installierenModell starten über LM-Studio und Server starten (Taskleiste rechte Maustaste)VS-Code installieren (bei Bedarf)Extension Cline über VS-Code installierenLM-Studio mit aktivierten LLM in Cline-Einstellungen aktivierenFertig 😉Was man dazu benötigt:
- Zeit
- Keine große Erwartung
- Freude am testen
- Zeit, um das geeignete Modell für seine Konfiguration zu finden (das wird vermutlich der Teil sein, der am längsten dauert, alles andere geht schnell)
- Eine Grafikkarte mit entsprechenden VRAM!
- Bei NVidia -> Cuda, AVX2
- Besser Linux als Windows
- Alternativ kann man die Installation auch per Ollama versuchen - das hat bei mir aber nicht wirklich funktioniert
Womit es nur ein sehr reduziertes Benutzererlebnis werden wird:
- Raspberry Pi u.ä.
- PC/Notebook ohne "echte" Grafikkarte
Ein ganz kurzes Demo-Video von mir dazu gibt es hier: clip.place/w/aP1mzaPX1N4C9A49i…
#KI, #AI, #LLM, #SelfHosted, #SelfHosting, #LokaleKI, #JoolsBastelt
RE: clip.place/videos/watch/4f726c…