mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 17:41:09 +02:00
Some checks are pending
CD Mac Mini / Detect Changes (push) Waiting to run
CD Mac Mini / Deploy (push) Blocked by required conditions
CI / Detect Changes (push) Waiting to run
CI / Validate (push) Waiting to run
CI / Build mana-search (push) Blocked by required conditions
CI / Build mana-sync (push) Blocked by required conditions
CI / Build mana-api-gateway (push) Blocked by required conditions
CI / Build mana-crawler (push) Blocked by required conditions
Docker Validate / Validate Dockerfiles (push) Waiting to run
Docker Validate / Build calendar-web (push) Blocked by required conditions
Docker Validate / Build quotes-web (push) Blocked by required conditions
Docker Validate / Build todo-backend (push) Blocked by required conditions
Docker Validate / Build todo-web (push) Blocked by required conditions
Docker Validate / Build mana-auth (push) Blocked by required conditions
Docker Validate / Build mana-sync (push) Blocked by required conditions
Docker Validate / Build mana-media (push) Blocked by required conditions
Mirror to Forgejo / Push to Forgejo (push) Waiting to run
Phase-3-Rename des ehemaligen Multi-App-Monorepos zum eigenständigen Produkt-Repo. Verein heißt mana e.V., Plattform-Domain bleibt mana.how, apps/mana/ bleibt unverändert — nur der Repo-Container kriegt den neuen Namen "managarten" (Garten der mana-Apps). Geändert: - package.json#name + #description - README.md (Titel + erster Absatz) - TROUBLESHOOTING.md - alle Mac-Mini-Skripte (Pfade ~/projects/mana-monorepo → ~/projects/managarten) - COMPOSE_PROJECT_NAME-default in scripts/mac-mini/status.sh - .github/workflows/cd-macmini.yml + mirror-to-forgejo.yml - apps/docs (astro.config.mjs + content) - .claude/settings.local.json (Bash-Permission-Pfade) - alle docs/*.md Pfad-Referenzen - launchd plists, .env.macmini.example, infrastructure/ Forgejo-Repo + GitHub-Repo bereits via API umbenannt. Lokales Verzeichnis-Rename + Mac-Mini-Cutover folgen separat.
4 KiB
4 KiB
Ollama Models Management
Dokumentation zum Hinzufügen und Verwalten von Ollama-Modellen auf dem Mac Mini Server.
Aktuelle Modelle
| Modell | Größe | Typ | Performance | Beschreibung |
|---|---|---|---|---|
gemma3:4b |
3.3 GB | Text | ~53 t/s | Standard - schnell für einfache Aufgaben |
gemma3:12b |
8 GB | Text | ~30 t/s | Empfohlen - gute Balance |
gemma3:27b |
16 GB | Text | ~15 t/s | Beste Qualität, langsamer |
phi3.5:latest |
2.2 GB | Text | ~60 t/s | Microsoft - kompakt & effizient |
ministral-3:3b |
3 GB | Text | ~55 t/s | Mistral Mini - sehr schnell |
llava:7b |
4.7 GB | Vision | ~25 t/s | Bildverständnis |
qwen3-vl:4b |
3.3 GB | Vision | ~40 t/s | Qwen Vision-Language |
deepseek-ocr:latest |
6.7 GB | Vision | ~20 t/s | OCR & Dokumente |
qwen2.5-coder:7b |
4.7 GB | Code | ~35 t/s | Code-Generierung |
qwen2.5-coder:14b |
10 GB | Code | ~20 t/s | Erweiterte Code-Generierung |
Neues Modell hinzufügen
Schritt 1: Modell auf Server installieren
# Via SSH auf Mac Mini
ssh mana-server
# Modell herunterladen
/opt/homebrew/bin/ollama pull <model-name>
# Beispiel:
/opt/homebrew/bin/ollama pull gemma3:12b
Schritt 2: Modell im LLM Playground registrieren
Datei: services/llm-playground/src/lib/stores/models.svelte.ts
Füge das Modell in MODEL_METADATA hinzu:
export const MODEL_METADATA: Record<string, { description: string; modality: Modality }> = {
// ... bestehende Modelle ...
// Neues Modell hinzufügen:
'neues-modell:tag': {
description: 'Kurze Beschreibung des Modells',
modality: 'text', // oder 'vision' oder 'code'
},
};
Schritt 3: Optional - Als Standard setzen
Datei: services/llm-playground/src/lib/stores/settings.svelte.ts
const defaultSettings: Settings = {
model: 'ollama/neues-modell:tag', // Standard-Modell ändern
// ...
};
Schritt 4: Deployment
# Playground neu bauen und deployen
pnpm --filter @mana/llm-playground build
# Auf Mac Mini deployen
ssh mana-server "cd ~/projects/managarten && docker compose -f docker-compose.macmini.yml up -d --build llm-playground"
Modality-Typen
| Typ | Beschreibung | Pattern-Erkennung |
|---|---|---|
text |
Standard Text-Generierung | Default |
vision |
Bildverständnis (LLaVA, etc.) | llava, vision, -vl, ocr, moondream |
code |
Code-Generierung | coder, codellama, starcoder |
Die Modality wird automatisch erkannt, wenn das Modell nicht in MODEL_METADATA ist.
Server-Verwaltung
Modelle auflisten
ssh mana-server "/opt/homebrew/bin/ollama list"
Modell entfernen
ssh mana-server "/opt/homebrew/bin/ollama rm <model-name>"
Speicherort der Modelle
Die Modelle liegen auf der externen 4TB SSD:
- Pfad:
/Volumes/TillJakob-S04/ManaData/ollama/models - Symlink:
~/.ollama -> /Volumes/TillJakob-S04/ManaData/ollama
Ollama Service
# Status prüfen
ssh mana-server "pgrep -x ollama && echo 'Running' || echo 'Stopped'"
# Neustarten
ssh mana-server "/opt/homebrew/bin/brew services restart ollama"
# Logs
ssh mana-server "tail -f /opt/homebrew/var/log/ollama.log"
Performance-Empfehlungen
RAM-Nutzung
| Modell-Größe | Min. RAM | Empfohlen |
|---|---|---|
| 3-4B | 4 GB | 8 GB |
| 7-8B | 6 GB | 12 GB |
| 12-14B | 10 GB | 16 GB |
| 27B+ | 16 GB | 24+ GB |
Mac Mini M4 hat 16 GB RAM - daher maximal ein 27B Modell gleichzeitig laden.
Gleichzeitige Modelle
Ollama lädt Modelle bei Bedarf. Wenn ein neues Modell angefragt wird und nicht genug RAM frei ist, wird das vorherige entladen. Für beste Performance:
- Hauptsächlich ein Modell verwenden
- Zwischen ähnlichen Größen wechseln
- Nach großen Modellen (27B) kurz warten vor kleinen Anfragen
Changelog
| Datum | Änderung |
|---|---|
| 2026-02-01 | gemma3:12b, gemma3:27b, qwen2.5-coder:14b hinzugefügt |
| 2026-02-01 | MODEL_METADATA System eingeführt |
| 2026-02-01 | Standard-Modell auf gemma3:4b geändert |