Ollama für Automatisierung
Was dieser Artikel über Ollama-Automatisierung behandelt
- Wie man Ollama in Skripte und Workflows integriert.
- Praktische Automatisierungsideen.
- Beispiele in Bash und Python.
- Tipps für Zuverlässigkeit, Logging und Zeitplanung.
- Sicherheit und Fehlerbehandlung.
Einleitung: Ollama für Automatisierung
Ollama eignet sich nicht nur für interaktive Chats, sondern auch für automatisierte Aufgaben. Textklassifikation, Zusammenfassungen, Benachrichtigungen, Datenauswertung und Dokumentverarbeitung lassen sich vollständig automatisieren. Mit Skripten, Cronjobs oder Workflow-Tools werden wiederkehrende Aufgaben effizienter und bleiben datenschutzkonform lokal.
Dieser Artikel zeigt, wie man Ollama in Automatisierungen einbindet und welche Anwendungsfälle sinnvoll sind.
Wichtige Begriffe
- Automatisierung: Aufgaben werden ohne manuelle Eingriffe ausgeführt.
- Cronjob: Zeitgesteuertes Ausführen eines Skripts.
- Skript: Ausführbare Datei mit Befehlen.
- Workflow: Abfolge mehrerer Aufgaben.
- Pipeline: Kette von Verarbeitungsschritten.
- Batch: Verarbeitung mehrerer Elemente in einem Durchlauf.
- Log: Aufzeichnung der Ausführung.
- Trigger: Auslöser für die Automatisierung.
Grundidee
Ollama hat eine einfache API, die von Skripten genutzt werden kann:
curl http://localhost:11434/api/generate -d '{
"model": "llama3.1",
"prompt": "Fasse diesen Text zusammen: ...",
"stream": false
}'
Das Ergebnis kann weiterverarbeitet, gespeichert oder versendet werden.
Beispiel: E-Mails klassifizieren
#!/bin/bash
email_text=$(cat email.txt)
antwort=$(curl -s http://localhost:11434/api/generate -d "{
\"model\": \"llama3.1\",
\"prompt\": \"Klassifiziere diese E-Mail als SPAM, WICHTIG oder INFO: $email_text\",
\"stream\": false
}")
echo "$antwort" | jq -r '.response'
Beispiel: Datei zusammenfassen
#!/bin/bash
text=$(cat dokument.txt)
zusammenfassung=$(curl -s http://localhost:11434/api/generate -d "{
\"model\": \"llama3.1\",
\"prompt\": \"Fasse den folgenden Text in drei Sätzen zusammen: $text\",
\"stream\": false
}")
echo "$zusammenfassung" | jq -r '.response' > zusammenfassung.txt
Beispiel: Python-Skript
import requests
import json
def classify(text, model="llama3.1"):
url = "http://localhost:11434/api/generate"
payload = {
"model": model,
"prompt": f"Klassifiziere folgenden Text: {text}",
"stream": False
}
response = requests.post(url, json=payload)
return response.json()["response"]
with open("dokumente.txt") as f:
inhalt = f.read()
result = classify(inhalt)
print(result)
Cronjob für regelmässige Aufgaben
0 8 * * * /usr/local/bin/ollama-zusammenfassung.sh >> /var/log/ollama-cron.log 2>&1
Workflow-Tools nutzen
- n8n: Visuelle Workflows, Ollama per HTTP-Request.
- Home Assistant: Automatisierungen mit Sprachbefehlen.
- Node-RED: Datenfluss-basierte Automatisierung.
- GitHub Actions / GitLab CI: Automatisierte KI-Checks.
- Airflow: Komplexe Daten-Pipelines.
Sinnvolle Automatisierungsideen
- E-Mails oder Tickets klassifizieren.
- Dokumente zusammenfassen.
- Chat-Nachrichten beantworten.
- Dateien benennen oder verschieben.
- Logs auswerten.
- Benachrichtigungen erzeugen.
- Code kommentieren.
- Daten aus PDFs extrahieren.
- Social-Media-Texte generieren.
- Inhalte kategorisieren.
Logging und Fehlerbehandlung
if curl -f http://localhost:11434/api/tags; then
echo "Ollama erreichbar"
else
echo "Ollama nicht erreichbar" >&2
exit 1
fi
In Python:
try:
result = classify(text)
except requests.exceptions.RequestException as e:
print(f"Fehler: {e}")
exit(1)
Zeitplanung
- Täglich für wiederkehrende Reports.
- Wöchentlich für Zusammenfassungen.
- Bei Ereignis wie Dateiänderung.
- Nach bestimmten Intervallen.
Sicherheit
- API-Zugang lokal beschränken.
- Keine sensiblen Daten in Prompts ohne Schutz.
- Eingaben validieren, um Prompt-Injection zu vermeiden.
- Ausgaben prüfen, bevor sie automatisiert weiterverarbeitet werden.
- Logs auf sensible Inhalte prüfen.
Tipps
- Skripte idempotent machen.
- Fehler klar protokollieren.
- Ressourcennutzung begrenzen.
- Auf Modelle achten, die für die Aufgabe geeignet sind.
- Einfach anfangen und schrittweise erweitern.
Typische Stolpersteine
- Ollama läuft nicht: Skript schlägt fehl.
- Modell nicht verfügbar: Name falsch oder nicht gepullt.
- Zeichencodierung: Umlaute oder Sonderzeichen falsch kodiert.
- Zeitüberschreitung: Antwort dauert zu lange.
- Fehlende Validierung: Fehlerhafte Ausgaben werden verarbeitet.
- Keine Logs: Fehler sind nicht nachvollziehbar.
Weiterführende Links und Infos
- BotServ.de Ollama Befehle
- BotServ.de Ollama API-Bibliotheken
- BotServ.de Ollama REST API
- BotServ.de Ollama Integrationen
FAQ: Ollama für Automatisierung
Kann Ollama E-Mails klassifizieren? Ja, ein einfaches Prompt-Skript kann Text klassifizieren.
Wie oft kann ich Ollama aufrufen? So oft wie die Hardware und der Modell-Cache es zulassen.
Brauche ich Docker für Automatisierung? Nein, Ollama läuft nativ oder in Docker.
Wie verhindere ich Fehler bei fehlgeschlagener Verbindung? Verbindung vorher prüfen und Exit-Codes nutzen.
Kann ich Ollama in n8n einbinden? Ja, über HTTP-Request-Nodes.
Quellen und weiterführende Literatur
- Ollama API: https://github.com/ollama/ollama/blob/main/docs/api.md
- n8n: https://n8n.io/
- cron: https://linux.die.net/man/8/cron
Zusammenfassung: Ollama für Automatisierung
Ollama lässt sich mit einfachen Skripten, Cronjobs und Workflow-Tools automatisieren. Klassifikation, Zusammenfassungen und Datenverarbeitung können vollständig lokal laufen. Wichtig sind sauberes Error Handling, Logging und ein passendes Modell. Wer einfache, reproduzierbare Pipelines aufbaut, kann viele Routineaufgaben mit lokaler KI beschleunigen, ohne Daten an externe Dienste zu senden.


