a34d406375
- Add user contribution system (memories, timeline entries) - Add AI content moderation with Ollama (bad word detection + qwen3:4b) - Add family photo/video upload with admin approval - Add candle lighting feature - Add timeline and recipe sections - Add QR code page and OG image - Add site authentication (password-protected access) - Add proxy middleware for auth routing - Add admin dashboard for content management - Remove email fields, make name optional (default: Anonym) - Add CI/CD pipeline for Gitea Actions - Add Docker deployment configuration - Optimize Ollama RAM usage (42GB → 2.9GB) - Fix API routes accessibility through proxy middleware Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2.9 KiB
2.9 KiB
🤖 Ollama Content-Moderation Setup
Automatische KI-Prüfung von Beiträgen
Die Website kann Beiträge automatisch mit einer lokalen KI (Ollama) prüfen und verdächtige Inhalte flaggen.
📥 Installation
1. Ollama installieren (einmalig)
Mac:
brew install ollama
Linux:
curl -fsSL https://ollama.com/install.sh | sh
Windows: Download von https://ollama.com/download
2. Modell herunterladen (einmalig)
ollama pull llama3.2:1b
Info: Das Modell ist ~700MB groß und läuft sehr schnell auf deinem Mac.
3. Ollama starten
Option A: Automatisch (macOS Service)
brew services start ollama
Option B: Manuell (im Terminal lassen)
ollama serve
🚀 Wie es funktioniert
Automatische Prüfung:
- Wenn jemand einen Beitrag einreicht (Erinnerung, Zeitstrahl, etc.)
- Wird automatisch die KI gefragt: "Ist das angemessen?"
- Falls unangemessen: Status wird auf
flagged🚩 gesetzt - Falls angemessen: Status bleibt auf
pending✅
Im Admin-Panel:
- Geflaggte Beiträge erscheinen mit rotem Hintergrund 🔴
- KI-Warnung wird angezeigt (z.B. "Spam erkannt")
- Du kannst dann entscheiden:
- ✅ Freigeben (trotzdem ok)
- ❌ Ablehnen (KI hatte recht)
🎯 Was wird erkannt?
Die KI prüft auf:
- ✅ Spam & Werbung
- ✅ Beleidigungen
- ✅ Off-Topic (völlig irrelevant)
- ✅ Unseriöse Inhalte
- ❌ Grammatik/Rechtschreibung wird NICHT bemängelt!
🔧 Troubleshooting
"Ollama not available"
- Prüfe ob Ollama läuft:
ollama list - Falls nicht:
ollama serveim Terminal
Moderation funktioniert nicht
- Prüfe:
curl http://localhost:11434/api/version - Sollte JSON zurückgeben
KI flaggt zu viel / zu wenig
- Prompt anpassen in:
src/app/api/moderate/route.ts - Zeilen 20-40: Die KI-Instruktionen
⚙️ Deaktivieren
Falls du die Auto-Moderation nicht willst:
Option 1: Ollama einfach nicht starten
- Dann werden alle Beiträge als
pendingmarkiert - Keine KI-Prüfung, aber auch keine Fehler
Option 2: Code entfernen
- Lösche die Auto-Moderation in
src/app/api/contributions/route.ts(Zeilen 35-48)
📊 Performance
- Ollama läuft lokal → keine API-Kosten!
- llama3.2:1b → sehr schnell (~1-3 Sekunden)
- RAM-Nutzung: ~1GB wenn aktiv
- CPU: Minimal (außer während Moderation)
🎨 Anpassungen
Andere Modelle verwenden:
# Kleineres Modell (schneller, weniger genau)
ollama pull llama3.2:1b
# Größeres Modell (langsamer, genauer)
ollama pull llama3.2:3b
Dann in src/app/api/moderate/route.ts ändern:
model: 'llama3.2:3b' // statt :1b
✨ Fazit
- ✅ Kostenlos & privat
- ✅ Automatisch & optional
- ✅ Du behältst Kontrolle (finale Entscheidung)
- ✅ Kein Setup nötig in Production (läuft nur lokal)