Was ist Janas?
Janas von Maurizio Cammalleri ist eine Sammlung von KI-Werkzeugen in C, ohne Abhängigkeiten außer der C-Bibliothek. Ihr Hauptteil, Janas-LLM, führt Mixture-of-Experts-Sprachmodelle aus, deren Dateien größer sind als der Arbeitsspeicher des Rechners. Die Gewichte bleiben auf der Platte; die Experten, die ein Token braucht, werden von einer NVMe-SSD gelesen, und die immer wieder gebrauchten liegen in einem Experten-Cache, der den freien RAM füllt.
Janas liest ein eigenes .jns-Format, konvertiert aus GGUF-Dateien (Q4_K_M und mehrere andere 3- bis 5-Bit-Typen) oder fertig konvertiert vom Hugging-Face-Konto des Projekts geladen. Unterstützt werden die Familien Qwen3, Qwen3.5, Qwen3.6, Qwen3-Next, Gemma 4 und Llama 3. Um die Engine herum gibt es einen Terminal-Chat, janas-server (eine HTTP-API im Stil von OpenAI), janas-mcp (das Modell als Werkzeuge für MCP-Clients) und eine C-Bibliothek.
Das Repo wurde am 20. September 2026 angelegt, hat rund 548 GitHub-Sterne und 44 Forks und steht unter GPL-3.0 oder später. Es erscheinen datierte Releases für Linux und Windows auf x86-64, zuletzt v2026.10.30.1 am 30. Oktober. Die README nennt es ein Experiment, kein Produkt.
Lohnt sich Janas?
Janas ist ein ernsthafter, ungewöhnlich gut dokumentierter Versuch, Mixture-of-Experts-Modelle auszuführen, die nicht in den Speicher passen, und seine Spitzenwerte sind trotzdem als Selbstauskunft zu lesen. Die Tabelle des Autors, gemessen auf einem einzigen Laptop (Intel Core Ultra 9 185H, 32 GB RAM, eine NVMe-Platte mit etwa 5,7 GB/s Lesegeschwindigkeit), zeigt Qwen3-Next-80B, eine Datei von 48,4 GB, beim Schreiben mit 26,4 tok/s gegenüber 3,0 bei llama.cpp und beim Lesen eines Prompts mit 68,4 gegenüber 17,7. Die Kurzbeschreibung des Repos nennt noch ältere Werte, 37 tok/s und 2,8 für llama.cpp über 13 Modelle; die README führt inzwischen 17 Zeilen. Die 37 stammen aus Drafts, also dem eigenen Vorhersageblock des Modells, der Tokens vorausrät, die das Modell dann prüft; im Chat nennt die README 31-35 tok/s mit warmem Cache.
Der Kniff funktioniert nur bei Mixtures of Experts. Qwen3-Next aktiviert pro Token etwa 3B seiner 80B Parameter, also hält Janas die meistgenutzten Experten in einem Cache (21 GiB beim 80B) und liest den Rest mit O_DIRECT von der SSD, wobei die wahrscheinlichen Experten der nächsten Schicht schon geladen werden, während die aktuelle rechnet. Fasst der Cache weniger als ein Fünftel der Experten, werden leichte Experten, die nicht im Speicher liegen, ganz weggelassen; das tauscht etwas Genauigkeit gegen Tempo: Die Übereinstimmung mit dem wahrscheinlichsten Token von llama.cpp sank in einem Lauf des Autors von 393 auf 384 von 400. Auch die llama.cpp-Vergleichsbasis brauchte Umwege, um überhaupt zu laufen, weil der übliche Build auf diesem Laptop keinen Speicher mehr hatte; ein Teil des Abstands misst also den Speicherhunger von llama.cpp und nicht die reine Geschwindigkeit.
Unabhängige Belege gibt es, aber nur teilweise. Tester haben das 80B auf Rechnern mit etwa 31 GiB RAM mit 9,5 bis 16,2 tok/s ohne Drafts ausgeführt, was bestätigt, dass es funktioniert. Den Vergleich 26,4 gegen 3,0 hat niemand nachgestellt. Der beste externe Direktvergleich, auf einem i9-14900HX mit 62,5 GiB, fand llama.cpp bei Qwen3-30B schneller (38,9 gegen 28,3 tok/s), beide gleichauf beim 80B, das dort in den RAM passte, und Janas vorn beim 142 GB großen Qwen3-235B (3,0 gegen 1,59). Auf einem Ryzen 5 5500 ohne AVX-VNNI las llama.cpp Prompts mehr als doppelt so schnell.
Die Kosten zeigen sich bei Latenz und Stabilität. Die erste Antwort einer Sitzung läuft mit 16-20 tok/s, solange die Experten noch von der Platte kommen, ein Prompt von 32.000 Tokens brauchte 15 Minuten zum Einlesen, und die README warnt, dass die Engine einen Desktop in den Swap drängen kann und einmal einen Reset des GPU-Treibers ausgelöst hat. GPU-Unterstützung gibt es nur über Vulkan, und offene Issues melden Zeichensalat auf einer Intel Arc B580 und 3.320 von 3.980 fehlgeschlagene GPU-Produkttests auf einer AMD Radeon. Das Streaming selbst besteht aus Lesezugriffen: Laut README schreibt die Engine nur nach ~/.cache/janas, also ist SSD-Verschleiß nicht das Problem; Bandbreite und Wärme der Platte sind es, und das Projekt veröffentlicht keine Angabe zur Haltbarkeit.
Das größte Risiko ist die Projektführung. Alle 90 Commits stammen vom Autor, und CONTRIBUTING.md sagt, dass kein fremder Code gemergt wird, bis eine gemeinnützige Stiftung existiert, die das Urheberrecht hält; Pull Requests für ARM64, macOS und AVX-512 bleiben deshalb offen. Neben llama.cpp mit seinen gut 132.000 Sternen und allen Hardware-Backends ist Janas ein schmales Werkzeug, das in einer Lage gewinnt: ein Mixture-of-Experts-Modell, zu groß für deinen RAM, auf x86-64.
Wo es sich lohnt
Eine Entwicklerin mit einem Linux- oder Windows-Laptop mit 32 GB und NVMe-Laufwerk
Qwen3-Next-80B oder Qwen3-Coder-Next lokal statt eines 30B-Modells ausführen
Release herunterladen, mit janas-get die fertig konvertierte Datei von 48,4 GB holen, dann janas-chat. Tester auf Rechnern mit etwa 31 GiB melden 9,5 bis 16,2 tok/s ohne Drafts; rechne mit langsameren ersten Antworten, solange sich der Experten-Cache füllt, und schließ den Browser, denn andere Programme belegen Speicher, den der Cache braucht.
Ein Forscher mit einer Workstation mit 64 GB
Ein Qwen3-235B-Modell mit 142 GB ausprobieren, ohne mehr RAM zu kaufen
Das Q4_K_M-GGUF mit gguf2jns konvertieren und den Experten-Cache den freien Speicher nehmen lassen. Ein Tester maß 3,0 tok/s beim Schreiben, etwa das Doppelte des mmap-Ergebnisses von llama.cpp auf demselben Rechner: brauchbar für Fragen im Stapel, zu langsam für interaktiven Chat.
Eine Engineering-Leiterin in einer kleinen Firma, die es für einen internen Assistenten prüft
Entscheiden, ob man sich auf einen lokalen OpenAI-kompatiblen Endpunkt mit Janas verlassen kann
janas-server bedient eine Anfrage nach der anderen auf 127.0.0.1:8080 mit optionalem API-Key, passt also für einen Nutzer, nicht für ein Team. GPL-3.0 erlaubt die interne Nutzung über HTTP ohne Weiteres, aber wer libjanas_llm in Software einbindet, die er weitergibt, macht diese Software zu GPL; bei einem Maintainer und wöchentlich wechselnden Schnittstellen solltest du bei jedem Upgrade neue Tests einplanen.
Bevor du dich festlegst
- Einrichtung
- Fertiges Tarball für Linux x86-64 (Ubuntu 22.04, Debian 12 und neuer) oder ein Zip für Windows 10 und 11; janas-get listet Modelle, lädt und prüft sie. Der Build aus dem Quellcode braucht nur GCC, für die GPU dazu Vulkan-Header und glslang 15.2 oder neuer. Die Zeit bis zur ersten Antwort ist vor allem der Modell-Download.
- Integrationen
- janas-server folgt der API von OpenAI (Chat, Completions, Responses, Embeddings, Batches) mit einer Testseite; janas-mcp bietet das Modell Claude Code und anderen MCP-Clients an; dazu eine C-Bibliothek mit Bindings für FreeBASIC und Node.js. GPU nur über Vulkan 1.3; Intels NPU nur unter Linux auf Meteor Lake.
- Daten und Datenschutz
- Läuft lokal und schreibt nur nach ~/.cache/janas und dorthin, wo du konvertierte Modelle ablegst; Telemetrie wird nicht beschrieben. Der Server bindet standardmäßig an 127.0.0.1 ohne API-Key. GPL-3.0 oder später für den Code; konvertierte Modelle behalten ihre eigenen Lizenzen (Apache 2.0 bei Qwen, die Qwen Community License bei Qwen3.8-Flash-Next, die nicht kommerzielle CC BY-NC-SA bei DeepNSM).
- Kosten im großen Maßstab
- Keine kostenpflichtige Edition, die Kosten sind also Hardware: Der Referenzrechner ist ein Laptop mit 32 GB und einer NVMe-SSD mit etwa 5,7 GB/s Lesegeschwindigkeit; langsamere Platten oder ein ausgelasteter Rechner senken das Tempo. Weil der Server nur eine Sequenz hält, heißt Skalieren auf viele Nutzer einen Rechner pro gleichzeitigem Nutzer.
- Grenzen
- Entwickelt und gemessen auf einem einzigen Laptop; rund 21 offene Issues und Pull Requests, darunter falsche GPU-Ausgaben auf Intel Arc B580 und AMD Radeon Vega und langsame Prompts unter Windows mit NVIDIA. Kein Backend für CUDA, Metal oder ROCm, kein Build für macOS oder ARM, GGUF-Typen IQ2 und IQ1 nicht unterstützt, und ein Prompt von 32.000 Tokens brauchte auf dem Referenz-Laptop 15 Minuten.
Was gut ist
- Führt Mixture-of-Experts-Modelle mit 48 GB auf Rechnern mit 32 GB aus, von externen Testern bestätigt
- Reines C ohne Abhängigkeiten; Release-Builds für Linux und Windows
- Misst selbst, wie Threads, GPU und NPU je Rechner aufgeteilt werden
- Server im OpenAI-Stil, MCP-Server und C-Bibliothek inklusive
Was nicht
- Die großen Vorsprünge vor llama.cpp sind Selbstauskunft auf einem Laptop
- Ein einziger Maintainer; fremder Code kann noch nicht gemergt werden
- Nur Vulkan, mit Fehlausgaben auf mehreren GPUs
- Kein macOS oder ARM; experimentell, Befehle ändern sich wöchentlich
Am besten für
Nutzer auf x86-64, die ein Mixture-of-Experts-Modell größer als ihren RAM wollen, etwa Qwen3-Next-80B auf einem Laptop mit 32 GB, und experimentelle Software in Kauf nehmen.
Alternativen zu Janas
Janas: häufige Fragen
- Lohnt sich Janas?
- Es führt tatsächlich ein 80B-Modell auf einem Laptop mit 32 GB aus, aber die großen Vorsprünge vor llama.cpp stammen vom Autor selbst, und das Ganze ist das Experiment einer einzelnen Person. Wir bewerten es mit 3.6 von 5.
- Was kostet Janas?
- Kostenlos und quelloffen unter GPL-3.0 oder später. Keine kostenpflichtige Edition.
- Welche Nachteile hat Janas?
- Die großen Vorsprünge vor llama.cpp sind Selbstauskunft auf einem Laptop; Ein einziger Maintainer; fremder Code kann noch nicht gemergt werden; Nur Vulkan, mit Fehlausgaben auf mehreren GPUs; Kein macOS oder ARM; experimentell, Befehle ändern sich wöchentlich.
- Für wen eignet sich Janas?
- Nutzer auf x86-64, die ein Mixture-of-Experts-Modell größer als ihren RAM wollen, etwa Qwen3-Next-80B auf einem Laptop mit 32 GB, und experimentelle Software in Kauf nehmen.
- Was kostet Janas für ein Team oder im Produktivbetrieb?
- Keine kostenpflichtige Edition, die Kosten sind also Hardware: Der Referenzrechner ist ein Laptop mit 32 GB und einer NVMe-SSD mit etwa 5,7 GB/s Lesegeschwindigkeit; langsamere Platten oder ein ausgelasteter Rechner senken das Tempo. Weil der Server nur eine Sequenz hält, heißt Skalieren auf viele Nutzer einen Rechner pro gleichzeitigem Nutzer.
- Ist Janas sicher für Firmendaten?
- Läuft lokal und schreibt nur nach ~/.cache/janas und dorthin, wo du konvertierte Modelle ablegst; Telemetrie wird nicht beschrieben. Der Server bindet standardmäßig an 127.0.0.1 ohne API-Key. GPL-3.0 oder später für den Code; konvertierte Modelle behalten ihre eigenen Lizenzen (Apache 2.0 bei Qwen, die Qwen Community License bei Qwen3.8-Flash-Next, die nicht kommerzielle CC BY-NC-SA bei DeepNSM).
- Was sind die besten Alternativen zu Janas?
- Die nächsten Alternativen, die wir getestet haben, sind llama.cpp, Ollama und llamafile.
Antworten geprüft am 31. Okt. 2026.