ADR-017: Inferencia de IA local con Ollama + Qdrant¶
Estado: aceptado Fecha: 2026-05-17
Contexto¶
SmallCountry utiliza IA para transcripción de voz, análisis de logs, asistencia a la documentación y RAG sobre literatura técnica. Los datos procesados incluyen grabaciones de pacientes (consulta de psicología), inspecciones de campo e información privada familiar. Enviar estos datos a APIs externas (OpenAI, Anthropic, Google) viola el principio de soberanía y las normativas de protección de datos (RGPD, datos de salud). Se necesita inferencia de IA completamente local.
Decisión¶
Ollama como motor de inferencia local para modelos de lenguaje, con Qdrant como base de datos vectorial para RAG. El hardware dedicado es Horus (servidor con GPU). La inferencia funciona completamente offline, sin dependencia de APIs externas.
Alternativas consideradas¶
| Opción | Por qué se descartó |
|---|---|
| OpenAI API | Datos enviados a terceros. Viola RGPD para datos de salud. Coste por consulta. Dependencia externa. Sin operación offline |
| Anthropic API | Mismos problemas de privacidad y dependencia externa |
| Google Gemini API | Igual. Además, jurisdicción estadounidense |
| llama.cpp (sin Ollama) | Más complejo de operar. Ollama proporciona API REST, gestión de modelos y actualizaciones simplificadas |
| vLLM | Orientado a servidores multi-GPU de alto rendimiento. Overkill para single-user |
| Modelos en el propio ESP32/edge | Hardware insuficiente. Los LLMs requieren GPU con >8 GB VRAM |
Consecuencias¶
- ✅ Soberanía absoluta: ninguna consulta sale de la finca
- ✅ Cumplimiento RGPD: datos de salud nunca abandonan el perímetro
- ✅ Operación offline: la IA funciona sin internet
- ✅ RAG con documentación local: el asistente responde basándose en la documentación de SmallCountry
- ✅ Integración con Hermes Agent para transcripción y síntesis de voz
- ❌ Hardware dedicado necesario (GPU). Mayor coste energético
- ❌ Modelos menos potentes que GPT-4 o Claude en tareas complejas
- ❌ Velocidad de inferencia limitada por la GPU local