Springe zum Inhalt

so: gestern den llama.cpp angeworfen und heute die ersten MCPs drangeschnubbelt.

nach viel Recherche und Theorie hat "einfach mal machen" geholfen und dieser Beitrag: -klick-

So sieht das bei mir aus:


# Installation von uv (Python Package Manager) sudo curl -LsSf https://astral.sh/uv/install.sh | sh # Erstellung des Verzeichnisses für MCP-Server sudo mkdir /opt/MCPs cd /opt/MCPs # Öffnen der Konfigurationsdatei im Editor joe joe config.json # Hier ist der Inhalt, den du in die Datei kopierst: { "mcpServers": { "time": { "command": "uvx", "args": ["mcp-server-time", "--local-timezone=Europe/Berlin"] }, "fetch": { "command": "uvx", "args": ["mcp-server-fetch"] }, "ddg-search": { "command": "uvx", "args": ["duckduckgo-mcp-server"] } } } # Wechsel zurück zum übergeordneten Verzeichnis cd .. # Berechtigungen für das Verzeichnis ändern (völlige Berechtigung für alle) sudo chmod 777 ./MCPs/ # Wechsel in das Verzeichnis MCPs cd MCPs/ # Erneutes Öffnen der Konfiguration zur Überprüfung joe config.json # Starten des mcp-proxy Servers mit der definierten Konfiguration # --stateless: Keine Persistierung von Sitzungen # --allow-origin "*": Erlaubt CORS von allen Domains # --port 8001: Bindet an Port 8001 uvx mcp-proxy --named-server-config config.json --allow-origin "*" --port 8001 --stateless

und das Ergebnis ist dann:

das ist wirklich cool und mit Web-Search ist er jetzt vielseitiger und dass er nachfragen kann, welches Datum wir haben, ändert "seine Meinung" zu Artikeln, die das Modell sonst als Parodie oder Satire bezeichnet hatte, als es dachte, das wären Artikel "aus der Zukunft"

Ich finde den Gedanken sehr interessant, einen potenten PC im Haus zu haben, den mensch bei Bedarf einschaltet und dann von beliebigen anderen Geräten im Haushalt dessen angebotenes KI-Modell bequem á la chatgpt nutzen kann.

Dafür habe ich einen Ryzen 7700X mit 32 GB DDR5-RAM und einer GeForce 4800.

Das ist kein ultimatives KI-Setup, auch weil die Grafikkarte nur 16 GB vram hat, aber zum "Spielen" also zum Ausprobieren und schauen, was geht, was fehlt und wo es hingeht, reicht es allemal.

Hier meine kleinen Notizen:

Ich habe ubuntu 26.04 lts installiert (später vielleicht auf ubuntu server ohne gui gehen). Danach habe ich mich dafür entschieden, llama.cpp auszuprobieren. Im Vergleich zu ollama soll das schwieriger zu konfigurieren sein, aber ich wollte ihm mal ne Chance geben.

Mit dieser Anleitung von Frank -klick- hat es auf Anhieb überraschend einfach funktioniert. Meine kleinen Anpassung wegen neuer Versionen sahen dann so aus.



# System aktualisieren: Paketlisten abrufen und bereits installierte Pakete auf Updates prüfen.
sudo apt update && sudo apt upgrade -y

# Basis-Entwicklungsumgebung installieren:
# Benötigt für: Compilierung von Code, Git für Versionskontrolle, CMake für Build-System,
# sowie CUDA-spezifische Bibliotheken (libomp, curl, zlib) für die spätere Installation.
sudo apt install build-essential git cmake libomp-dev libcurl4-openssl-dev curl zlib1g-dev

# CUDA-Repo hinzufügen:
# Download der GPG-Schlüsselring-Debian-Paket, um den offiziellen NVIDIA-Softwarequellen zu aktivieren.
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2604/x86_64/cuda-keyring_1.1-1_all.deb

# Den Schlüsselring installieren, damit "apt" jetzt CUDA-Pakete findet.
sudo dpkg -i cuda-keyring_1.1-1_all.deb

# Repo erneut aktualisieren, damit CUDA-Pakete sichtbar werden.
sudo apt update && sudo apt upgrade -y

# Versuchsweise CUDA Toolkit 12.6 installieren (dies wird oft überschrieben oder ignoriert).
sudo apt install cuda-toolkit-12-6

# Suchen nach dem aktuellen CUDA-Paketnamen.
sudo apt-cache search cuda-toolkit

# Tatsächliche Installation des neuesten CUDA Toolkits (hier 13.1).
sudo apt install cuda-toolkit-13-1

# Build-Abhängigkeiten für CUDA-Bibliotheken (cublas) installieren.
sudo apt install build-essential git cmake libcublas-dev libomp-dev libcurl4-openssl-dev curl zlib1g-dev

# Überprüfen, ob libcublas-Pakete verfügbar sind.
sudo apt-cache search libcublas

# Installieren der spezifischen CUDA-Bibliothek für CUDA 13.1.
sudo apt install build-essential git cmake libcublas-dev-13-1 libomp-dev libcurl4-openssl-dev curl zlib1g-dev

# Arbeitsverzeichnis für das LLM-Projekt erstellen.
mkdir ~/llama
# In das Verzeichnis wechseln.
cd ~/llama

# Den Open-Source-Code für LLaMA von der GitHub-Repository klonen.
git clone https://github.com/ggerganov/llama.cpp.git
# In das geklonte Projekt wechseln.
cd llama.cpp

# Konfiguration des Build-Prozesses starten:
# Aktiviert CUDA-Geschwindigkeitsoptimierung (-DGGML_CUDA=ON).
sudo cmake .. -DGGML_CUDA=ON
# Hinweis: Da cmake hier als root ausgeführt wird, passiert dies oft ohne Ausgabe oder im Hintergrund,
# bevor das Build-Verzeichnis erstellt wird (siehe unten).

# Verzeichnisinhalt anzeigen (zeigt die Struktur nach dem Klonen).
ls

# Build-Verzeichnis innerhalb des Projekts erstellen.
mkdir build
# In das Build-Verzeichnis wechseln (Best Practice bei cmake, um Code und Build getrennt zu halten).
cd build

# Konfiguration erneut aufrufen (diesmal korrekt im build-Verzeichnis, um Dateien zu generieren).
sudo cmake .. -DGGML_CUDA=ON
# Kompilierung des Codes starten:
# --build . : Startet den Build im aktuellen Verzeichnis
# --config Release : Baut die Release-Version (optimiert)
# -j $(nproc) : Nutzt alle verfügbaren CPU-Kerne parallel für schnelleres Compilieren.
sudo cmake --build . --config Release -j $(nproc)

# Zielverzeichnis für heruntergeladene Modelle erstellen.
mkdir /opt/models
# Als root das Zielverzeichnis erstellen (falls vorherige Fehlschläge existierten).
sudo mkdir /opt/models
# Berechtigungen setzen (777): Jeder kann lesen, schreiben und ausführen.
# ⚠️ Sicherheitshinweis: 777 ist sehr offen; normalerweise reicht 755 oder 770 für Modelle.
chmod 777 /opt/models
# Berechtigungen als root erneut setzen (sicherstellen).
sudo chmod 777 /opt/models
# Zurück in das Modelle-Verzeichnis wechseln.
cd /opt/models/

# ============================================================================
# Hab dann diese Modelle heruntergeladen (und bisher nur Qwen3.5-9B-Q4_K_M.gguf getestet)
# - Qwen3.5-9B-DeepSeek-V4-Flash-Q4_K_M.gguf
# - Qwen3.5-9B-Q4_K_M.gguf
# - gemma-4-12b-it-Q4_K_M.gguf
# - gemma-4-E4B-it-Q4_K_M.gguf
# ============================================================================

# Alle Dateien mit der Endung .gguf aus dem Download-Ordner in das aktuelle Verzeichnis verschieben.
mv ~/Downloads/*.gguf ./

# Installationsbefehle aus dem vorherigen Build-Projekt in das Systempfad /usr/local/libexec/llama installieren.
sudo cmake --install .
# Bibliothekspfade neu laden, damit das System die neu kompilierten CUDA-Bibliotheken sofort finden kann.
sudo ldconfig 

# Startbefehl für den LLM-Server:
# --model : Pfad zum spezifischen Modell (Qwen3.5).
# --host 0.0.0.0 : Macht den Server auf allen Netzwerkschnittstellen erreichbar (nicht nur localhost).
# --port 8080 : Der Port, auf dem der Server lauscht.
llama-server --model /opt/models/Qwen3.5-9B-Q4_K_M.gguf --host 0.0.0.0 --port 8080

... sieht dann so aus:


Anmerkung:

Wenn die CUDA-Driver noch nicht installiert sind, sollte das jetzt nachgeholt werden. In diesem Konfigurator kannst du dein Betriebssystem und eine Installationsmethode auswählen, um dir die Befehle für deinen Server anzeigen zu lassen.

so... es geht weiter: der nächste Schritt, in Richtung digitaler Unabhängigkeit ist ein google-freies Handy mit Graphene als Betriebssystem.

Klingt nerdy und kompliziert, aber die ersten Schritte sind sensationell einfach.

Wenn man es erstmal geschafft hat, einen Edge- oder Chrome-Browser zu öffnen, muss man nur noch ein paar Knöpfe auf einer Webseite drücken

...fühlt sich an, wie aus der Zukunft:

Verglichen mit adb-Kommandos, twrp-Recoveries und passendem Rom-Flashen... wow !

Bei einem Dual-Boot-System passiert es häufig, dass die Uhrzeit im Windows-System danach eine oder zwei Stunden hinterherhinkt ...in Mitteleuropa..

Diesen Befehl hier in der Administrator-CMD ausführen und schwupps gibt es eine "geplante Aufgabe", die die Uhrzeit direkt nach UserAnmeldung synchronisiert:

schtasks /create /tn "ZeitSyncBeiAnmeldung" /tr "cmd /c net start w32time & w32tm /resync" /sc onlogon /rl highest /f

❤️ dieses upplay verbessert meinen Tag
absolut herrlich: ins Fenster tabben und Leertaste: alle Lautsprecher (im Haus) stumm.
+ und - für Lautstärke
playlist klick klick fertig
❤️

...das klingt vermutlich etwas seltsam und zu normal um meine Begeisterung nachzufühlen.

Aber die di.days und die BigTech-Abkehr haben auch vor meiner Art Musik zu hören nicht Halt gemacht.

als mini-Server nutze ich daheim minidlna, aber sicher würde auch ein USB-Stick an der FritzBox seinen Dienst tun und dann hab ich nach Möglichkeiten gesucht, meine Yamaha MusicCast-Lautsprecher vom PC aus zu bespielen.

..sah trostlos aus .. bis ich UPPLAY gefunden hab.

ich starte das Programm (bei mir unter mint und ubuntu) und es fragt mich direkt, welchen MusicCast-Lautsprecher das Programm verwenden soll. Danach wille es noch wissen, von welchem dlna-Server die Musik kommen soll. Zack gehts los und die Musik läuf und ich kann sie sehr einfach und schnell über meinen PC steuern, Lautstärke ändern, pausieren usw.

Hab eben dem Projekt gespendet: ja, ich bin begeistert! -hier gehts zu UPPLAY-

um mehr aus der Nintendo Switch rauszuholen, empfehle ich euch einen Blick ...nee... mindestens drei Blicke auf die YT-Videos von NiklasCFW. Ich finde, er hat n super Maß zwischen Verständlichkeit und Geschwindigkeit ...weißde, wie ich mein? ...genau!

Tipps:
Custom Firmware installieren
https://www.youtube.com/watch?v=hYoEoa9p_P0

so kommt Ubuntu auf die Switch
https://www.youtube.com/watch?v=LGdxt1RGuIU

Als Anleitung für den Kamikaze-Mod hab ich dieses Video genutzt:
https://www.youtube.com/watch?v=350jFcukmYA&t=112s

und sehr sehr schön bebildert ist das hier
https://www.reddit.com/user/L3gendaryBanana/comments/1bsdc29/complete_nintendo_switch_oled_modchip/

boah.-arrrghgrzzz.. aber am Ende gehts ja dann doch irgendwie

also: neues Debian13 : cool - jitsi: auch cool - aber jitsi will jre 17 und Debian 13 kennt da nur 21 oder so ... also spart euch ne Stunde Rummachen und tut dies hier:

"alte" bookworm-Quellen hinzufügen: Datei anlegen durch öffnen)

/etc/apt/sources.list.d/bookworm.list

da komtm das hier rein:

deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
deb http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware

Dann mit Pinning in /etc/apt/preferences.d/bookworm-pin die Bookworm-Quellen niedriger priorisijääährn:

Package: *
Pin: release a=bookworm
Pin-Priority: 100

danach einmal apt update und jitsi-meet installiert , wie es soll ...oder mag ... jedenfalls klappt das bei mir so und ist gut jetzt 🙂

und so kams: vorgestern hat mir ein Spieler wenig stolz erklärt, dass er sich nicht für Training und Spiele anmelden kann, weil er die Teampunkt-App nicht aufs Handy installieren kann, weil das Ding uralt ist und keinen Speicherplatz und so. ...Tipp am Rande: wer Jugendfußball trainiert, sollte die Teampunkt-App ausprobieren! ... nundenn: ich dachte mir, dass ich daheim mal schaue, welche ausgemusterten Handys ich daheim hab, was er bekommen kann.

Gestern dann hat ein Hacker-Papa uns ein Alt-Technik-Spende zukommen lassen. Ein wunderschönes Nexus 4 aus erinnerungswürdigen Zeiten, zwei Kindle, ein tablet und ein nokia 6.1 mit androidone.
Die androidone-Idee war super ...offenbar ZU gut für einen kommerziellen Markt...weiß nicht. Jedenfalls hat mir das Telefon direkt gefallen und das android 10 lief flott darauf. So wie es war, war es schon sehr gut für ein "nur-Teampunkt-Handy".

...trotzdem hat es mir keine Ruhe gelassen und als ich gesehen habe, dass es nightly lineage22 gibt ...also android 15 ... war die Sache klar.

Diese Anleitung zum Bootloader-Unlocken:

und (natürlich) diese hier fpr die lineage-Installation:

https://wiki.lineageos.org/devices/PL2/install/

...ich hätte sehr gerne auf die google-Dienste verzichtet. Weil es die TeampunktApp aber nicht vom dfb als apk gibt ...gans die MindTheGApps noch mit dazu

das hatte in einem Rutsch funktioniert ... wow: das kannte ich schon schlimmer...

okay... das geht nicht immer und überall und letzte Woche hab ich drei baugleiche Dell-SFF-Kisten in ein FreeDos gebootet um dann die räudige bios-exeupdate auszuführen ... nein ...Korrektur: um ZWEIMAL hinternander wegen zu großem Versionssprung eine EXE-Bios-Update auszuführen... okay.. aber: wenn man diese Torturen durchlebt hat, weiß mans auch zu schätzen, wie schöööön es ist, wenn es anders funktioniert:

an meinem betagten aber geliebten Thinkpad t480 gebe ich unter dem aktuellen (Juli 2025) ubuntu fwupdmgr update ein und zackizack aktualisiert er Bios (ja..UEFI...), Controller und was da sonst so intern fleucht...

hier ein Screenshot, weil ich Bilder mag: