Skip to content
BotServBotServ
OllamaDatenanalyseKlassifikationExtraktionBerichte

Datenanalyse mit Ollama

Ollama für Auswertung von Texten, Tabellen und Logs. Zusammenfassungen, Klassifikation, Extraktion und Berichte.

S

schutzgeist

3 min read
Datenanalyse mit Ollama

Datenanalyse mit Ollama

Was dieser Artikel über Datenanalyse mit Ollama behandelt

  • Welche Analyse-Aufgaben Ollama übernehmen kann.
  • Wie Texte, Tabellen und Logs ausgewertet werden.
  • Wie man strukturierte Ausgaben bekommt.
  • Beispiele für Klassifikation, Extraktion und Berichte.
  • Tipps für Qualität, Performance und Datenschutz.

Einleitung: Datenanalyse mit Ollama

Sprachmodelle können nicht nur Texte generieren, sondern auch analysieren. Ollama eignet sich dafür besonders, weil die Daten lokal bleiben und sensible Inhalte nicht an externe Dienste gesendet werden müssen. E-Mails, Support-Tickets, Logdateien, Verträge oder Produktbeschreibungen lassen sich automatisch klassifizieren, zusammenfassen oder in strukturierte Daten überführen.

Dieser Artikel zeigt, welche Datenanalyse-Aufgaben Ollama übernehmen kann und wie man sie praktisch umsetzt.

Wichtige Begriffe

  • Klassifikation: Zuordnung eines Textes zu einer Kategorie.
  • Extraktion: Herausfiltern bestimmter Informationen.
  • Zusammenfassung: Komprimierung eines Textes.
  • Sentiment-Analyse: Erkennung der Stimmung.
  • Structured Output: Ausgabe in einem definierten Format.
  • Prompt-Template: Wiederkehrende Eingabestruktur.
  • Named Entity Recognition: Erkennung von Namen, Orten oder Begriffen.
  • Batch: Verarbeitung mehrerer Elemente gleichzeitig.

Anwendungsfälle

  • E-Mails oder Tickets nach Kategorie sortieren.
  • Kundenfeedback nach Stimmung bewerten.
  • Verträge nach Schlagworten durchsuchen.
  • Logdateien auf Fehlermuster prüfen.
  • Produktbeschreibungen strukturieren.
  • Dokumente zusammenfassen.
  • Entitäten wie Personen oder Firmen extrahieren.
  • Tabellen aus Texten ableiten.

Klassifikation

Ein einfaches Prompt für Kategorisierung:

import requests

def classify(text, model="llama3.1"):
    url = "http://localhost:11434/api/generate"
    prompt = f"""Klassifiziere den folgenden Text als eine der Kategorien:
    - Technisch
    - Finanziell
    - Persönlich
    - Spam

    Text: {text}

    Antwort nur mit der Kategorie."""

    response = requests.post(url, json={
        "model": model,
        "prompt": prompt,
        "stream": False
    })
    return response.json()["response"].strip()

print(classify("Meine Rechnung ist falsch."))

Zusammenfassung

def summarize(text, model="llama3.1"):
    prompt = f"Fasse den folgenden Text in drei Sätzen zusammen:\n\n{text}"
    response = requests.post(
        "http://localhost:11434/api/generate",
        json={"model": model, "prompt": prompt, "stream": False}
    )
    return response.json()["response"]

Extraktion

def extract_entities(text, model="llama3.1"):
    prompt = f"""Extrahiere aus dem folgenden Text die Personennamen, Orte und Organisationen.
    Gib die Antwort als JSON zurück:

    {{"persons": [], "locations": [], "organizations": []}}

    Text: {text}"""

    response = requests.post(
        "http://localhost:11434/api/generate",
        json={"model": model, "prompt": prompt, "stream": False}
    )
    return response.json()["response"]

Tabellenanalyse

Ollama kann auch CSV- oder Markdown-Tabellen auswerten:

def analyze_table(table_text, model="llama3.1"):
    prompt = f"""Analysiere die folgende Tabelle und nenne die drei wichtigsten Erkenntnisse:

    {table_text}"""

    response = requests.post(
        "http://localhost:11434/api/generate",
        json={"model": model, "prompt": prompt, "stream": False}
    )
    return response.json()["response"]

Logdateien auswerten

def analyze_log(log_text, model="llama3.1"):
    prompt = f"""Analysiere die folgenden Logeinträge und nenne die häufigsten Fehlertypen:

    {log_text}"""

    response = requests.post(
        "http://localhost:11434/api/generate",
        json={"model": model, "prompt": prompt, "stream": False}
    )
    return response.json()["response"]

Strukturierte Ausgaben

Für strukturierte Ergebnisse ist ein klares Format nötig:

Gib die Antwort ausschliesslich als JSON zurück:

{
  "category": "Technisch",
  "confidence": 0.9,
  "keywords": ["Netzwerk", "Fehler"]
}

Modelle geben aber nicht immer korrektes JSON. Deshalb sollten Ausgaben validiert werden.

Batch-Verarbeitung

import json

texts = ["Text eins", "Text zwei", "Text drei"]

results = []
for text in texts:
    result = classify(text)
    results.append({"text": text, "category": result})

with open("ergebnisse.json", "w") as f:
    json.dump(results, f, indent=2, ensure_ascii=False)

Tipps

  • Kategorien klar und disjunkt definieren.
  • Beispiele im Prompt geben, wenn nötig.
  • Temperatur niedrig halten für konsistente Klassifikation.
  • Ausgaben parsen und validieren.
  • Modelle mit gutem Textverständnis nutzen.
  • Bei langen Dokumenten zuerst chunken.
  • Sensitive Daten lokal halten, nicht in externe Dienste senden.

Typische Stolpersteine

  • Inkonsistente Ausgaben: Modell gibt mal JSON, mal freien Text.
  • Zu viele Kategorien: Modell verwirft falsche Kategorien.
  • Lange Dokumente: Kontextfenster reicht nicht.
  • Falsches Format: Parsing schlägt fehl.
  • Modell halluziniert: Extrahiert nicht vorhandene Daten.
  • Zu hohe Temperatur: Unbeständige Ergebnisse.
  • Prompt zu allgemein: Klassifikation wird unpräzise.

FAQ: Datenanalyse mit Ollama

Kann Ollama Tabellen verstehen? Ja, besonders wenn sie als Markdown oder CSV vorliegen.

Ist die Klassifikation zuverlässig? Für einfache Kategorien meist ja, bei komplexen Domänen besser testen.

Wie viele Texte kann ich analysieren? So viele, wie Hardware und Zeit erlauben. Batch-Verarbeitung ist möglich.

Brauche ich JSON-Output? Nicht zwingend, aber es macht die Weiterverarbeitung einfacher.

Welches Modell ist am besten für Analyse? llama3.1, qwen2.5 oder mistral sind gute Allrounder.

Quellen und weiterführende Literatur

Zusammenfassung: Datenanalyse mit Ollama

Ollama eignet sich gut für lokale Datenanalyse. Texte lassen sich klassifizieren, zusammenfassen, auswerten und strukturieren. Mit klaren Prompts, einfachen Skripten und Batch-Verarbeitung lassen sich wiederkehrende Analyse-Aufgaben automatisieren. Wichtig sind definierte Kategorien, validierte Ausgaben und ein passendes Modell. Wer Daten lokal analysiert, bleibt datenschutzkonform und kann sensible Inhalte gefahrlos auswerten.

Zurück zum KI Blog
Share:

Ähnliche Beiträge