Ollama para automatización
Qué cubre este artículo sobre automatización con Ollama
- Cómo integrar Ollama en scripts y flujos de trabajo.
- Ideas prácticas de automatización.
- Ejemplos en Bash y Python.
- Consejos para confiabilidad, logging y programación de tareas.
- Seguridad y manejo de errores.
Introducción: Ollama para automatización
Ollama no es solo para chats interactivos. También resulta útil para tareas automatizadas: clasificación de textos, resúmenes, notificaciones, análisis de datos y procesamiento de documentos pueden ejecutarse completamente de forma automática. Con scripts, cronjobs o herramientas de flujos de trabajo, las tareas repetitivas se vuelven más eficientes y permanecen bajo cumplimiento normativo local.
Este artículo muestra cómo integrar Ollama en automatizaciones y qué casos de uso tienen sentido.
Conceptos clave
- Automatización: Las tareas se ejecutan sin intervención manual.
- Cronjob: Ejecución programada de un script.
- Script: Archivo ejecutable que contiene comandos.
- Flujo de trabajo: Secuencia de múltiples tareas.
- Pipeline: Cadena de pasos de procesamiento.
- Batch: Procesamiento de varios elementos en una sola pasada.
- Log: Registro de la ejecución.
- Trigger: Evento que inicia la automatización.
Concepto fundamental
Ollama expone una API sencilla que los scripts pueden utilizar:
curl http://localhost:11434/api/generate -d '{
"model": "llama3.1",
"prompt": "Fasse diesen Text zusammen: ...",
"stream": false
}'
El resultado se puede procesar, almacenar o enviar.
Ejemplo: Clasificar correos electrónicos
#!/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'
Ejemplo: Resumir un documento
#!/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
Ejemplo: Script de Python
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 para tareas recurrentes
0 8 * * * /usr/local/bin/ollama-zusammenfassung.sh >> /var/log/ollama-cron.log 2>&1
Herramientas de flujos de trabajo
- n8n: Flujos de trabajo visuales, Ollama mediante HTTP-Request.
- Home Assistant: Automatizaciones con comandos de voz.
- Node-RED: Automatización basada en flujo de datos.
- GitHub Actions / GitLab CI: Verificaciones de IA automatizadas.
- Airflow: Pipelines de datos complejos.
Ideas útiles de automatización
- Clasificar correos electrónicos o tickets.
- Resumir documentos.
- Responder mensajes de chat.
- Renombrar o mover archivos.
- Analizar logs.
- Generar notificaciones.
- Comentar código.
- Extraer datos de PDFs.
- Generar textos para redes sociales.
- Categorizar contenidos.
Logging y manejo de errores
if curl -f http://localhost:11434/api/tags; then
echo "Ollama erreichbar"
else
echo "Ollama nicht erreichbar" >&2
exit 1
fi
En Python:
try:
result = classify(text)
except requests.exceptions.RequestException as e:
print(f"Fehler: {e}")
exit(1)
Programación de tareas
- Diariamente para reportes recurrentes.
- Semanalmente para resúmenes.
- Al detectar un evento, como cambios en archivos.
- En intervalos específicos.
Seguridad
- Limita el acceso a la API localmente.
- No incluyas datos sensibles en prompts sin protección.
- Valida entradas para evitar inyección de prompts.
- Verifica las salidas antes de procesarlas automáticamente.
- Inspecciona los logs para identificar contenido sensible.
Consejos
- Haz los scripts idempotentes.
- Registra errores con claridad.
- Limita el uso de recursos.
- Elige modelos adecuados para la tarea.
- Comienza simple y amplía paso a paso.
Problemas comunes
- Ollama no está ejecutándose: El script falla.
- Modelo no disponible: Nombre incorrecto o no descargado.
- Codificación de caracteres: Caracteres especiales codificados incorrectamente.
- Tiempo de espera agotado: La respuesta tarda demasiado.
- Falta de validación: Salidas defectuosas se procesan de todas formas.
- Sin logs: Los errores no se pueden rastrear.
Enlaces y recursos adicionales
- BotServ.de Ollama Befehle
- BotServ.de Ollama API-Bibliotheken
- BotServ.de Ollama REST API
- BotServ.de Ollama Integrationen
FAQ: Ollama para automatización
¿Puede Ollama clasificar correos electrónicos? Sí, un simple script de prompts puede clasificar texto.
¿Con qué frecuencia puedo llamar a Ollama? Tantas veces como lo permitan el hardware y el caché del modelo.
¿Necesito Docker para automatización? No, Ollama se ejecuta nativamente o en Docker.
¿Cómo evito errores cuando falla la conexión? Verifica la conexión con anticipación y utiliza códigos de salida.
¿Puedo integrar Ollama en n8n? Sí, mediante nodos de HTTP-Request.
Fuentes y lectura adicional
- Ollama API: https://github.com/ollama/ollama/blob/main/docs/api.md
- n8n: https://n8n.io/
- cron: https://linux.die.net/man/8/cron
Resumen: Ollama para automatización
Ollama se automatiza fácilmente con scripts simples, cronjobs y herramientas de flujos de trabajo. La clasificación, los resúmenes y el procesamiento de datos pueden ejecutarse completamente en local. Lo importante es un buen manejo de errores, logging y elegir el modelo correcto. Quienes construyan pipelines simples y reproducibles pueden acelerar muchas tareas rutinarias con IA local, sin enviar datos a servicios externos.


