Skip to content
BotServBotServ
NextcloudOllamaIntegrationDokumenteKI

Nextcloud mit Ollama integrieren

Nextcloud mit Ollama integrieren. Dokumentenzusammenfassung, intelligente Suche, Tagging und Praxisbeispiele.

S

schutzgeist

5 min read
Nextcloud mit Ollama integrieren

Nextcloud mit Ollama integrieren

Was dieser Artikel über Nextcloud-Ollama-Integration behandelt

  • Wie Du Nextcloud mit Ollama verbindest.
  • Wie Dokumentenzusammenfassung, intelligente Suche und automatisches Tagging funktionieren.
  • Wie Du Nextcloud-Apps und Custom Scripts mit Ollama nutzt.
  • Praxisbeispiele für Dokumentenverarbeitung, Wissenssuche und Automatisierung.
  • Best Practices für Performance, Sicherheit und Datenschutz.

Einleitung: Nextcloud mit Ollama verständlich erklärt

Nextcloud ist eine Self-Hosted Cloud für Dateien, Kalender, Kontakte und mehr. Ollama ist ein lokaler KI-Modellserver. Wenn Du beide verbindest, kannst Du Dokumente in Nextcloud mit KI verarbeiten: automatisch zusammenfassen, intelligent durchsuchen, Tags vergeben, alles lokal, ohne Cloud.

Dieser Artikel richtet sich an Anwender, die Nextcloud mit lokaler KI erweitern wollen. Du solltest verstehen, wie Nextcloud funktioniert und wie Ollama läuft. Grundlagen der Python-Programmierung findest Du auf IRC-Coding.de.

Warum brauche ich Nextcloud mit Ollama?

Stell Dir vor, Du hast hunderte Dokumente in Nextcloud: Verträge, Berichte, Rechnungen. Du willst sie durchsuchen, zusammenfassen, klassifizieren. Ohne KI musst Du jedes Dokument manuell lesen. Mit Ollama in Nextcloud macht das die KI automatisch, lokal, ohne dass Dokumente in die Cloud gehen.

Nextcloud mit Ollama kurz erklärt

Nextcloud speichert Dokumente, Ollama verarbeitet sie mit KI. Integration über Nextcloud-Apps, Custom Scripts oder Webhooks. Alle Daten bleiben lokal.

Der Kerngedanke lautet: Nextcloud speichert, Ollama versteht.

Für wen ist dieser Artikel gedacht?

  • Nextcloud-Nutzer, die KI-Funktionen wollen.
  • Self-Hoster, die Nextcloud mit KI erweitern.
  • Unternehmen, die Dokumente automatisch verarbeiten.
  • Teams, die Wissensmanagement automatisieren.

Vorkenntnisse in Nextcloud und Ollama sind hilfreich.

Wichtige Begriffe

  • Nextcloud - Self-Hosted Cloud. Wann nützlich: für Dokumentenverwaltung.
  • Ollama - Lokaler Modellserver. Wann nützlich: das KI-Backend.
  • Nextcloud App - Erweiterung für Nextcloud. Wann nützlich: für native Integration.
  • Webhook - HTTP-Callback. Wann nützlich: für Event-getriebene Verarbeitung.
  • RAG - Retrieval-Augmented Generation. Wann nützlich: für intelligente Suche.
  • Embeddings - Vektor-Repräsentationen. Wann nützlich: für semantische Suche.
  • Docker - Container. Wann nützlich: für beide Dienste.

Integrationsmethoden

1. Nextcloud Apps

Es gibt Community-Apps, die Ollama in Nextcloud integrieren:

  • Nextcloud Assistant: KI-Assistent für Nextcloud.
  • Nextcloud Talk KI: KI in Nextcloud Talk.
  • Nextcloud Mail KI: KI für E-Mail-Verarbeitung.

2. Custom Scripts

Du schreibst eigene Skripte, die bei bestimmten Events aufgerufen werden:

# Bei neuem Dokument: Zusammenfassung erstellen
# nextcloud-occ files:scan --path="/user/files/dokumente" --post-process

3. Webhooks

Nextcloud kann Webhooks senden, wenn Events passieren:

# nextcloud Webhook-Konfiguration
webhook:
  - event: "file.created"
    url: "http://localhost:8000/process-document"

4. Flow-App

Nextcloud Flow ist ein Workflow-Tool innerhalb von Nextcloud:

# Flow: Neues Dokument → Ollama → Tags
trigger: file.created
actions:
  - ollama_summarize
  - add_tags

Setup: Docker Compose

version: "3.8"

services:
  nextcloud:
    image: nextcloud:latest
    container_name: nextcloud
    restart: unless-stopped
    ports:
      - "8080:80"
    volumes:
      - nextcloud_data:/var/www/html
      - ./apps:/var/www/html/custom_apps
    networks:
      - ai-network

  ollama:
    image: ollama/ollama:latest
    container_name: ollama
    restart: unless-stopped
    ports:
      - "11434:11434"
    volumes:
      - ollama_data:/root/.ollama
    networks:
      - ai-network

volumes:
  nextcloud_data:
  ollama_data:

networks:
  ai-network:
    driver: bridge

Praxisbeispiel 1: Dokumentenzusammenfassung

# Skript: Bei neuem Dokument Zusammenfassung erstellen
import requests

def on_document_created(file_path, file_id):
    """Wird bei neuem Dokument aufgerufen"""
    # 1. Dokument aus Nextcloud lesen
    response = requests.get(
        f"http://nextcloud/remote.php/dav/files/user/{file_path}",
        auth=("user", "password")
    )
    content = response.text

    # 2. Ollama zusammenfassen
    summary = call_ollama([
        {"role": "system", "content": "Fasse in 3 Sätzen zusammen."},
        {"role": "user", "content": content[:4000]}
    ])

    # 3. Zusammenfassung als Kommentar speichern
    add_comment(file_id, summary["message"]["content"])

Praxisbeispiel 2: Intelligente Suche mit RAG

def semantic_search(query):
    """Semantische Suche in Nextcloud-Dokumenten"""
    # 1. Query-Embedding erstellen
    query_embedding = get_embedding(query)

    # 2. Ähnliche Dokumente suchen
    results = vector_db.search(query_embedding, limit=5)

    # 3. Kontext aufbauen
    context = "\n".join(r.content for r in results)

    # 4. Antwort generieren
    response = call_ollama([
        {"role": "system", "content": "Beantworte basierend auf den Dokumenten."},
        {"role": "user", "content": f"Dokumente:\n{context}\n\nFrage: {query}"}
    ])
    return response["message"]["content"]

Praxisbeispiel 3: Automatisches Tagging

def auto_tag_document(file_id, content):
    """Dokument automatisch taggen"""
    # Tags generieren
    response = call_ollama([
        {"role": "system", "content": "Vergib 3-5 Tags. Antworte als JSON-Array."},
        {"role": "user", "content": content[:3000]}
    ], format="json")

    tags = json.loads(response["message"]["content"])

    # Tags in Nextcloud setzen
    for tag in tags:
        add_tag(file_id, tag)

Praxisbeispiel 4: Dokumentenklassifikation

def classify_document(file_id, content):
    """Dokument klassifizieren"""
    response = call_ollama([
        {"role": "system", "content": """Klassifiziere in:
- rechnung
- vertrag
- bericht
- angebot
- sonstiges

Antworte nur mit der Kategorie."""},
        {"role": "user", "content": content[:3000]}
    ])

    category = response["message"]["content"].strip().lower()

    # In entsprechenden Ordner verschieben
    move_to_folder(file_id, f"dokumente/{category}")

Sicherheitshinweise

Typische Stolpersteine

  • Docker-Netzwerk: Nextcloud und Ollama müssen im selben Netzwerk sein.
  • Performance: Große Dokumente brauchen Zeit. Nutze asynchrone Verarbeitung.
  • Kontextlänge: Große Dokumente müssen chunked werden.
  • OCR: Gescannte Dokumente brauchen OCR vor der KI-Verarbeitung.
  • Fehlerbehandlung: Wenn Ollama nicht erreichbar ist, sollte Nextcloud nicht abstürzen.

Key Takeaways:

  • Nextcloud + Ollama: Dokumente speichern, KI verarbeitet.
  • Integrationen: Apps, Custom Scripts, Webhooks, Flow.
  • Anwendungen: Zusammenfassung, Suche, Tagging, Klassifikation.
  • Alles lokal, keine Cloud, keine API-Kosten.
  • Sicherheit: HTTPS, Authentifizierung, Netzwerk-Isolation.

FAQ

Wie verbinde ich Nextcloud mit Ollama?

Über Nextcloud-Apps, Custom Scripts, Webhooks oder die Flow-App. Beide Dienste sollten im selben Docker-Netzwerk laufen.

Welche Nextcloud-Apps gibt es?

Nextcloud Assistant für KI-Unterstützung, Nextcloud Talk KI für Chat, Nextcloud Mail KI für E-Mail. Die Verfügbarkeit hängt von der Nextcloud-Version ab.

Wie erstelle ich automatische Zusammenfassungen?

Mit einem Custom Script oder Webhook: Bei neuem Dokument Text extrahieren, an Ollama senden, Zusammenfassung als Kommentar oder Custom Field speichern.

Wie baue ich intelligente Suche?

Mit RAG: Dokumente in Vektordatenbank, bei Suchanfrage ähnliche Dokumente suchen, Antwort mit Kontext generieren.

Wie funktioniert automatisches Tagging?

Ollama analysiert den Dokumenteninhalt und generiert Tags. Diese werden in Nextcloud als Tags oder Kategorien gespeichert.

Ist das sicher?

Ja, wenn beide lokal laufen. Nextcloud speichert Dokumente lokal, Ollama verarbeitet lokal. Keine Daten verlassen Deinen Server.

Was kostet das?

Nextcloud und Ollama sind Open Source. Du zahlst nur Hardware-Kosten. Keine API-Kosten, keine Abos.

Wie performant ist das?

Abhängig vom Modell und der Dokumentengröße. Kleine Dokumente: Sekunden. Große Dokumente: Minuten. Für viele Dokumente asynchrone Verarbeitung nutzen.

Kann ich gescannte Dokumente verarbeiten?

Ja, aber Du brauchst OCR vor der KI-Verarbeitung. Nutze Tesseract oder ähnliche OCR-Tools, um Text aus Scans zu extrahieren.

Welches Modell soll ich nutzen?

Für Zusammenfassung: llama3.1:8b. Für komplexe Analyse: qwen2.5:32b. Für Embeddings: nomic-embed-text. Für Übersetzung: qwen2.5.

Quellen und weiterführende Literatur

Zurück zum KI Blog
Share:

Ähnliche Beiträge