Downloads · 30 days
21
4% of all-time downloads
sebelsn/lora-ministral-3b-vision-de
lora-ministral-3b-vision-de is a text generation model from sebelsn. Use it when you need the model to write or continue text. It is set up for peft. The card lists the license as mit.
Downloads · 30 days
21
4% of all-time downloads
All-time downloads
575
Public
Repo size
213 MB
Likes
0
Public
Click a slice to open those files.
.safetensors107 MB · 100%
From the Hugging Face model README
Ein LoRA-Adapter für Ministral-3-3B-Instruct-2512-BF16, trainiert auf deutschsprachigen Vision-Language Dialogen aus dem TAD66K Datensatz.
Das Modell empfängt strukturierte Bildbeschreibungen im Schema-Format und antwortet atmosphärisch auf Deutsch — ohne das Schema zu kommentieren.
Kassandra ist nicht als alleinstehendes Modell gedacht, sondern als Stimme einer modularen Pipeline. Die Pipeline übernimmt das Denken, Kassandra übernimmt die Sprache.
Kassandra funktioniert nicht allein. Das Konzept besteht aus einer mehrstufigen Pipeline in der jede Komponente genau eine Aufgabe hat:
Foto / Dokument / Frage
│
▼ Stufe 1: Ministral 3 3B (Base Vision, kein LoRA)
│ → Strukturierte Bildanalyse im kompakten Schema-Format (~80 Tokens)
│
▼ Stufe 2: Logik-Einheit (Ministral 3 3B Base, kein LoRA)
│ → Zerlegt die Anfrage in YAML: Thema, Einheiten, Typ, Hypothesen
│ → Basismodell verhindert Stil-Kontamination durch Kassandra LoRA
│
▼ Stufe 3: Router (deterministisch, kein LLM)
│ → Entscheidet anhand des YAML welche Stufen nötig sind
│ → typ: meinung/beschreibung → direkt zu Kassandra
│ → typ: berechnung/faktenfrage → Observer + Tools
│
▼ Stufe 4: Prefetch (parallel zur Logik, deterministisch)
│ → Schlagwort-Erkennung im User-Text
│ → Tools vorab aufrufen: astro, weather
│ → Läuft parallel zur Logik-Stufe — reduziert Latenz
│
▼ Stufe 5: Observer (Ministral 3 3B Base, kein LoRA)
│ → Tool-Calls: date_diff, date_info, calculate, convert_unit, astro, weather
│ → Gibt rohe Tool-Ergebnisse strukturiert weiter — formuliert nicht
│ → Validator: Plausibilitätsprüfung (confidence: high / medium / low)
│ → Wird übersprungen wenn keine Tools nötig sind
│
▼ Stufe 6: Kassandra (Kassandra LoRA)
│ → Atmosphärische Antwort auf Deutsch
│ → Formuliert aus Tool-Ergebnissen und YAML-Analyse
│ → Rechnet nicht, schätzt nicht
│
▼ Stufe 7: Memory (optional, --memory)
→ Graph-basiertes InMemory RAG
→ BGE-M3 Embeddings + SQLite :memory:
→ Automatische Cluster-Erkennung bei Themenwechsel
→ BGE-Reranker-v2-M3 filtert irrelevante Erinnerungen
→ Novelty-Filter: kein Memory bei Themenwechsel
Designprinzip: Die Intelligenz liegt in der Pipeline, nicht im Modell. Jede Stufe hat genau eine Aufgabe. Das SLM muss nur noch seinen engen Aufgabenbereich gut ausführen — formulieren, nicht denken.
Das Kassandra LoRA ist auf atmosphärische, poetische Sprache trainiert. Bei langen Gesprächen überwältigt dieser Stil den System-Prompt — die Logik-Stufe beginnt Poesie statt YAML zu produzieren.
Das Basismodell ist davon unberührt und liefert zuverlässig strukturiertes YAML und saubere Tool-Calls. Kassandra LoRA kommt nur dort zum Einsatz wo es trainiert wurde: atmosphärische Antworten auf Deutsch.
Das Eingabeformat für Bildanalyse ist ein kompaktes, maschinenlesbares Schema:
| Feld | Bedeutung | Beispiel |
|---|---|---|
F: | Fokus / Hauptmotiv | F:garden_landscape |
G: | Grid 3x3, Objekte mit Hex-Farbe und Tiefe | G:flower#ff69b4@fg |
P: | Farbpalette (Hex-Codes) | P:#ff69b4,#2d5a1b,#87ceeb |
L: | Lichtquelle und Qualität | L:<top_left_warm> |
D: | Tiefenwirkung | D:<d> (deep) oder D:<f> (flat) |
O: | Objekte | O:flower,stem,background |
Z: | Räumliche Relationen | Z:flower-front-of-stem |
Tiefenebenen in G:: @fg (Vordergrund), @mg (Mittelgrund), @bg (Hintergrund).
Die vollständige Pipeline ist als FastAPI-Service verfügbar. Kommunikation mit vLLM über Unix-Sockets für minimale Latenz.
scripts/
├── kassandra_api_main.py # Entry Point (--logging, --memory)
├── kassandra_api_config.py # Konstanten, Prompts, Socket-Pfade
├── kassandra_api_cache.py # LRU Schema-Cache + Wetter-Cache (TTL)
├── kassandra_api_tools.py # Tool-Definitionen + Formatter + Validator
├── kassandra_api_validator.py # Plausibilitätsprüfung (high/medium/low)
├── kassandra_api_pipeline.py # Router → Prefetch → Observer → Kassandra
├── kassandra_api_endpoints.py # FastAPI Routes (/v1/chat/completions)
└── kassandra_api_memory.py # Graph-basiertes InMemory RAG (optional)
Eine detaillierte Installationsanleitung findet sich in INFERENCE.md.
Das optionale Memory-System speichert Gesprächsinhalte als Graphen:
Das System erkennt Themenwechsel und verhindert dass alte Gesprächsinhalte neue Antworten färben.
Trainiert auf sebelsn/tad66k-vision-de:
| Tranche | Typ | Beispiele |
|---|---|---|
| T1 | Tiefe Dialoge (~10 Turns) | 14.997 |
| T2 | Kreativ + Analytisch (3 Turns) | 15.002 |
| T3 | Vergleichspaare (2 Turns) | 9.987 |
| T4 | Instruktions-Tasks (1 Turn) | 6.888 |
| T5 | Ästhetik + Bewertung (2 Turns) | 4.995 |
| T6 | Farbwissenschaft + Geometrie (2 Turns) | 4.558 |
| T7 | Korrekturen + Widerspruch | 1.238 |
Unter den empfohlenen Inferenz-Parametern (temperature=0.1, top_p=1.0):
Dieser Adapter wurde nicht darauf trainiert, mehr zu wissen, sondern natürlicher zu klingen.
Alles, was er sagt, war bereits im Basismodell enthalten — er findet nur einen anderen Weg dorthin.