Neo 1.0:3b

Neo ist ein feingetuntes Qwen2.5-3B-Instruct (QLoRA) für den Homelab-/DevOps-Einsatz mit Schwerpunkt Deutsch — trainiert auf einer NVIDIA P2000 (5 GB, Pascal), ohne A100 und ohne Cloud.

Der Name steht für „Neue Version" (νέος) — ein Modell, das gezielt für reale Server-Administration, Docker, Linux, Netzwerktechnik, Python/C++ und deutsche Grammatik optimiert wurde.


⚠️ Wichtig: mit System-Prompt benutzen

Neo wurde mit einem System-Prompt trainiert. Ohne ihn antwortet das Modell messbar schlechter — im Generalisierungstest 56/104 (54 %) statt 74/104 (71 %). ollama run hf.co/Dimitrex93/neo1.0-3b importiert nur das GGUF und setzt keinen System-Prompt. Bitte einmal so einrichten:

cat > Modelfile <<'EOF'
FROM hf.co/Dimitrex93/neo1.0-3b
SYSTEM "Du beantwortest technische Fragen korrekt und ohne zu erfinden."
EOF
ollama create neo1.0:3b -f Modelfile
ollama run neo1.0:3b

Oder direkt als System-Message in der API:

<|im_start|>system
Du beantwortest technische Fragen korrekt und ohne zu erfinden.<|im_end|>
<|im_start|>user
{Frage}<|im_end|>
<|im_start|>assistant

📊 Training

Eigenschaft Wert
Basismodell Qwen/Qwen2.5-3B-Instruct (fp16)
Methode QLoRA (r=16, α=32, dropout 0.05)
Quantisierung NF4 (4-bit, bitsandbytes 0.43.3)
Epochen 3
Sequenzlänge 512
Samples 1.644 (84 → 20× erweitert)
Hardware NVIDIA P2000 5 GB, ~6,5 h
Framework Axolotl 0.4.0, torch 2.2.2, transformers 4.37.0

Trainingsdaten (Runde 1)

  • Benchmark-SFT: 84 Fragen aus eigenem LLM-Benchmark (MC + offene Fragen, Halluzinations-Kategorien)
  • Code: the-stack-smol (Python, C, C++, Dockerfile), code_search_net (Python)
  • Linux/Docker/Doku: tldr-pages, docker-docs, RFCs (DHCP, TCP, HTTP/1.1, TLS 1.3)
  • Foren: german.stackexchange, StackOverflow (Deutsch/Technik)
  • Deutsch: eigene Wiki-Inhalte, deutsche Grammatik
  • GitHub-Issues: docker/cli, docker/compose, moby/moby, ollama

Die Fragenbank selbst (Frage + Musterantwort + Erklärung = Ground Truth) ist als Benchmark-Datensatz veröffentlicht: Dimitrex93/neo1.0-benchmark — die gemischten Web-Korpora sind aus Lizenzgründen nicht enthalten, die Aufbau-Skripte liegen im GitHub-Repo.

💬 Beispiel-Ausgaben

Echt erzeugt mit neo1.0-3b-Q4_K_M über Ollama, Temperatur 0.2, num_ctx 2048 — keine Auswahl „schönster" Antworten, sondern typische.

1. Solide Antwort:

Frage: Erkläre den Unterschied zwischen docker stop und docker kill.

Neo: docker stop sendet SIGTERM (Signal 15) an die Container-Processes, um Zeit zu gewinnen. Die Processes haben 10 Sekunden Zeit, sich abzustoppen. docker kill sendet SIGKILL (Signal 9) sofort und ohne Warnung an die Processes — sie werden sofort gestoppt.

2. Brauchbar, aber ungenau:

Frage: Wie findest du heraus, welcher Prozess Port 8080 belegt? Nenne den Befehl und die Ausgabe.

Neo: sudo lsof -i :8080. Die erste Zeile zeigt an, dass der Prozess nginx auf diesem Port läuft: nginx 12345 nginx ....

(Der Befehl stimmt — die Beispiel-Ausgabe ist erfunden. ss -tlnp wäre die übliche Wahl.)

3. Klare Grenze — hier halluziniert Neo:

Frage: Wie prüfst du, ob ein Docker-Container auf der GPU läuft?

Neo: Die Standardausgabe von docker stats zeigt GPU-Zahlen als GPU:gpu an … docker stats --format "{{.Name}},{{.GPU}}"

(Es gibt kein {{.GPU}} in docker stats. Richtig wäre nvidia-smi, docker inspect mit DeviceRequests oder ein Test im Container.)

Diese dritte Antwort ist typisch für die 3B-Klasse: flüssig formuliert, formal korrekt aussehend, inhaltlich falsch. Genau dafür ist der mitgelieferte Benchmark gebaut.

🥊 Benchmark-Ergebnisse

Eigener Benchmark, 134 Fragen in Deutsch, Q4_K_M über Ollama. Der Generalisierungssatz (50 Fragen) war nie im Training.

Modell 84 Fragen (168 P) 50 unbekannte Fragen (104 P)
Qwen2.5-3B-Instruct (Basis) 96 (57 %) 68 (65 %)
Neo 1.0:3b 104 (62 %) 74 (71 %)
Vorsprung +8 (+5 pp) +6 (+6 pp)

Beide Modelle nachgemessen am 24.09.2026 mit dem veröffentlichten Q4_K_M, identischem System-Prompt, Temperatur 0, je 1 Lauf (Neo: 190 s / 76 s; Basis: 187 s / 70 s). Einzelläufe — Schwankungen von einigen Punkten sind normal.

Zum Vergleich ohne System-Prompt: Neo 105/168 (62 %) im Basissatz, aber nur 56/104 (54 %) im Generalisierungstest — der Satz mit unbekannten Fragen ist deutlich prompt-empfindlich, siehe Warnung oben. Die historischen Erstlauf-Werte vom 28.08.2026 (Neo 104/168 und 74/104, Basis 92/168 und 57/104) wurden unter anderen Bedingungen erhoben und sind oben durch die nachgemessenen ersetzt.

Besonders stark: Linux (83 %), C++ (86 %), Netzwerktechnik (80 %) und die Halluzinations-Kategorie „verwechslung" (81 %; ähnliche Befehle und Begriffe auseinanderhalten).

Schwach bleibt: Code-Fehler finden (code-bug 65 %), deutsche Grammatik (62 %), Fragen mit Zahlenfallen (71 %).

Nachvollziehbar mit dem Harness aus dem GitHub-Repo:

python3 evaluate_llm.py --model neo1.0:3b                     # 84 Fragen
python3 evaluate_llm.py --model neo1.0:3b --ordner fragen_gen/  # 50 unbekannte Fragen

🚀 Nutzung

Über Ollama (empfohlen — mit System-Prompt, siehe oben)

ollama run hf.co/Dimitrex93/neo1.0-3b     # Quick-Check ohne System-Prompt
# Besser:
ollama create neo1.0:3b -f Modelfile && ollama run neo1.0:3b

Mit llama.cpp / GGUF

wget https://huggingface.co/Dimitrex93/neo1.0-3b/resolve/main/neo-1.0-3b-Q4_K_M.gguf
./llama-cli -m neo-1.0-3b-Q4_K_M.gguf -p "Deine Frage..."

Chat-Template

Qwen2.5-ChatML:

<|im_start|>system
Du beantwortest technische Fragen korrekt und ohne zu erfinden.<|im_end|>
<|im_start|>user
{Frage}<|im_end|>
<|im_start|>assistant

📁 Dateien

Datei Größe Zweck
neo-1.0-3b-Q4_K_M.gguf ~1,9 GB Empfohlene Quantisierung für Ollama/llama.cpp
neo-1.0-3b-f16.gguf ~6,2 GB Volle Genauigkeit (falls benötigt)

⚠️ Hinweise & Grenzen

  • Kleines Modell (3B): erwartet eine solide Basis für Homelab-/DevOps-Fragen, keine universelle Intelligenz
  • Trainiert auf begrenzten Daten (1.644 Samples) — Grammatik und Themen außerhalb des Korpus können schwächeln
  • Die Bewertung erfolgte über einen eigenen, domänenspezifischen Benchmark (nicht MMLU etc.)
  • Einzelner Lauf je Messung, kein Mittel über Seeds — die Zahlen sind Größenordnungen
  • Immer gegenprüfen, wenn es um Fakten geht: Befehle, Ports, Zahlen, Ausgaben

💬 Feedback & Verbesserungen

Feedback ist willkommen! Nutze die Discussions für:

  • Fehler / Halluzinationen melden (bitte mit Prompt und Antwort)
  • Themenwünsche für die nächste Version
  • Verbesserungsvorschläge

Jeder Vorschlag fließt in die Daten für Neo 1.1:3b ein.

⚖️ Lizenz

Apache 2.0 (Modell), Basis-Modell unter Qwen-Lizenz. Benchmark-Fragenbank: Apache-2.0. Trainings-Stack: github.com/dimitrex93-cyber/neo-llm.

Downloads last month
123
GGUF
Model size
3B params
Architecture
qwen2
Hardware compatibility
Log In to add your hardware

4-bit

16-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Dimitrex93/neo1.0-3b

Base model

Qwen/Qwen2.5-3B
Quantized
(294)
this model

Dataset used to train Dimitrex93/neo1.0-3b