Alucinaciones: por qué tu LLM local inventa y cómo limiter
Una alucinación de IA es una respuesta falsa expresada con la seguridad de una respuesta correcta: una fecha inventada, una cita que no existe, una función Python imaginaria. En un LLM local, el fenómeno es el mismo que en los grandes modelos en la nube, a veces más marcado con cuantizaciones de menor precisión. Esta guía explica de dónde vienen estas invenciones, sin jerga, y después enumera los ajustes, los prompts y las medidas de protección concretas para reducirlas, y sobre todo los casos en los que nunca se debe confiar en la máquina.
#¿Qué es una alucinación?
El término «alucinación» se refiere a cualquier afirmación producida por el modelo que sea falsa, inventada o imposible de verificar, pero presentada como un hecho. No es un error informático: el programa funciona perfectamente, genera texto plausible. El problema es que «plausible» y «verdadero» no son lo mismo.
Concretamente, una alucinación toma varias formas: un número preciso pero falso («la población de esta ciudad es de 47 312 habitantes»), una fuente que no existe («según el estudio de Dupont et al., 2019»), una API o un comando imaginario (`ollama sync --cloud`), o incluso una mezcla de elementos reales recombinados de forma errónea. El punto común: el tono siempre es seguro.
#Por qué el modelo inventa
Tu ChatGPT privado y gratuito en tu máquina en 1 hora — LM Studio, Ollama, Open WebUI, tus documentos, sin nube.
- Espacio en línea de por vida
- PDF + archivos
- Reembolsado 30 j
Un LLM se entrena para una sola tarea: completar texto de forma estadísticamente probable. Ha absorbido miles de millones de frases y ha extraído regularidades. Cuando planteas una pregunta, no «consulta» una base de conocimientos: genera, palabra por palabra, la secuencia más probable a partir de tu consulta y de su entrenamiento.
- Sin memoria factual confiable
- El conocimiento está difundido en los pesos de la red, no almacenado como en una base de datos. El modelo «recuerda» una tendencia, no un hecho exacto. Los detalles precisos (fechas, cifras, nombres propios raros) son los primeros en deformarse.
- Un entrenamiento fijo en el tiempo
- El modelo no conoce nada posterior a la fecha de corte de su entrenamiento. Cuando se le pregunta por un evento reciente, no dice «no sé»: extrapola a partir de lo que conoce, lo que produce invenciones.
- El sesgo hacia la respuesta
- Un LLM está optimizado para responder, no para callarse. Ante una pregunta cuya respuesta desconoce, la continuación más probable suele ser una respuesta formulada con seguridad en lugar de una admisión de ignorancia.
- El efecto de la cuantización
- Comprimir un modelo en Q4_K_M ahorra VRAM, pero reduce ligeramente la precisión. En tareas factuales muy especializadas, una cuantización agresiva puede aumentar la tasa de información inventada en comparación con Q8_0 o FP16.
- El azar del muestreo
- Con cada palabra, el modelo elige al azar entre los candidatos probables. Cuanto más «creativa» sea esta selección (temperatura alta), más puede desviarse hacia continuaciones improbables y, por tanto, falsas.
Dicho de otro modo, la alucinación no es un accidente: es el funcionamiento normal de un sistema que produce texto plausible sin acceso a la verdad. No se elimina, se reduce y se controla.
#Detectar una invención
Antes de corregir, hay que saber detectar. Algunas señales deben ponerte en alerta de inmediato.
- Una precisión sospechosa
- Cifras exactas hasta la unidad, fechas exactas, porcentajes precisos sobre un tema de nicho: cuanto mayor sea la precisión sin una fuente, más sospechoso resulta.
- Citas y enlaces
- Títulos de artículos, nombres de autores, URLs, números de página, referencias legales. Los LLM inventan fuentes que parecen totalmente creíbles. Ninguna referencia generada por un modelo debe considerarse real sin verificarla.
- Código que «debería» existir
- Nombres de funciones u opciones de línea de comandos que parecen lógicos, pero no existen. El modelo completa por analogía con API similares.
- Una respuesta que cambia
- Vuelve a hacer exactamente la misma pregunta en una nueva conversación. Si la respuesta factual varía de una vez a otra, el modelo está adivinando en lugar de saber.
#Los ajustes que limitan las invenciones
Los parámetros de generación controlan el equilibrio entre creatividad y fiabilidad. Para todo lo que concierne a hechos, código o extracción de información, se desea determinismo y precaución.
- temperature
- El ajuste principal. A 0, el modelo siempre elige la palabra más probable: respuestas estables y conservadoras. Sube a 0.7–1.0 para escritura creativa, pero baja a 0.1–0.3 para tareas factuales.
- top_p
- Limita el muestreo a los candidatos cuya probabilidad acumulada alcanza un valor dado. Un valor bajo (0.1–0.5) elimina la larga cola de palabras improbables, a menudo responsables de respuestas que se desvían.
- top_k
- Limita el número de candidatos considerados en cada paso. Un top_k bajo (10–20) reduce el margen para que el modelo se descontrole.
- seed
- Fijar una semilla hace que la generación sea reproducible: con ajustes idénticos, misma salida. Esencial para probar si una respuesta es estable o aleatoria.
- num_ctx
- El tamaño del contexto. Si es demasiado pequeño, el modelo «olvida» el comienzo y puede recombinar fragmentos de forma errónea. Asegúrate de que tus documentos de referencia quepan dentro de la ventana.
Con Ollama, estos ajustes se pueden pasar en cada llamada a la API o dejar fijados en un Modelfile. Aquí tienes un ejemplo de llamada al daemon local con una configuración prudente para respuestas factuales:
Para hacer que estos ajustes sean permanentes en un modelo, se añaden al Modelfile y se crea una variante dedicada a tareas factuales:
#Prompts de precaución
La forma en que formulas tu solicitud cambia mucho la frecuencia con la que el modelo inventa respuestas. La idea: permitir explícitamente que no sepa la respuesta y prohibir que la invente.
- Dar el derecho a no saber
- «Si no estás seguro, responde: No lo sé». Sin ese permiso, el modelo llenará el vacío con una invención.
- Exigir que las respuestas se basen en el contexto
- «Responde únicamente a partir del texto que aparece a continuación. No uses ningún conocimiento externo». Se obliga al modelo a limitarse al contexto proporcionado.
- Pedir las fuentes en el texto
- « Para cada afirmación, cita la frase exacta del documento que la justifique. » Si el modelo no encuentra justificación, la ausencia se vuelve visible.
- Separar hechos y hipótesis
- « Distingue lo que está establecido de lo que es una suposición tuya. » Esto hace que el modelo etiquete sus propias incertidumbres.
- Descomponer tareas complejas
- Una pregunta dividida en varios pasos explícitos deja menos margen para la improvisación que una pregunta abierta muy amplia.
#Anclar las respuestas en tus propios documentos
La técnica más eficaz para combatir las alucinaciones de la IA sigue siendo el RAG (Retrieval-Augmented Generation): en lugar de dejar que el modelo recurra a su memoria difusa, se le proporcionan los pasajes pertinentes de tus documentos y se le pide que responda basándose únicamente en ellos. El modelo pasa de desempeñar el papel de «fuente» al de «lector».
- 01Indexar tus documentosTus archivos (PDF, notas, documentos internos) se dividen en fragmentos, se convierten en vectores mediante un modelo de embeddings y se almacenan en una base vectorial.
- 02Encontrar los pasajes relevantesPara cada pregunta, el sistema busca los fragmentos más cercanos semánticamente a la consulta y los recupera.
- 03Inyectar en el contextoLos pasajes encontrados se pegan en el prompt, acompañados de una instrucción estricta: responder únicamente a partir de estos extractos.
- 04Generar con citasEl modelo redacta la respuesta basándose en los fragmentos proporcionados, idealmente citando cuáles ha utilizado. Si estos no contienen la respuesta, debe indicarlo.
Open WebUI, conectado al daemon Ollama (http://localhost:11434), ofrece un RAG integrado: subes documentos y los referencias con `#` durante la conversación. Para necesidades personalizadas, una base vectorial y un pipeline propio ofrecen más control.
#Verificar sistemáticamente
Ninguna técnica hace que un LLM sea fiable al 100 %. Por tanto, la verificación no es opcional, sino un paso del flujo de trabajo. Debe ser proporcional a lo que esté en juego.
- Contrastar con una fuente real
- Toda información factual destinada a ser utilizada (número, fecha, cita) se verifica en una fuente primaria. El modelo es un punto de partida, nunca una referencia.
- Probar el código antes de confiar en él
- Ejecuta lo que produce el modelo. Una función que no exista provocará un error inmediato. Nunca copies código crítico sin haberlo ejecutado.
- Comparar dos generaciones
- Pregunta nuevamente con una semilla diferente o en una nueva sesión. Los puntos estables son más fiables; los puntos que varían son sospechosos.
- Usar un segundo modelo
- Hacer que otro modelo (o una variante más grande) revise la respuesta de un modelo pone de manifiesto las incoherencias evidentes.
- Mantener la intervención humana
- Para cualquier decisión que tenga consecuencias (salud, derecho, dinero, seguridad), la validación final sigue siendo humana. Sin excepción.
#Casos en los que nunca se debe confiar
Algunos ámbitos concentran las alucinaciones más peligrosas. En ellos, trata toda salida del modelo como un borrador no verificado, que debes considerar falso por defecto hasta que se demuestre lo contrario.
- Salud y medicamentos
- Posologías, interacciones, diagnósticos. Una invención puede ser peligrosa. El modelo no es un profesional de la salud.
- Derecho y fiscalidad
- Artículos de ley, jurisprudencia, obligaciones de declaración. Los LLM inventan referencias jurídicas con un realismo engañoso.
- Números y estadísticas precisas
- Poblaciones, tasas, montantes, fechas exactas. Los detalles numéricos son el punto débil estructural de los modelos.
- Eventos recientes
- Todo lo que es posterior a la fecha de corte del entrenamiento. El modelo rellenará los huecos por extrapolación sin indicarlo.
- Citas y referencias
- Títulos, autores, URLs, números de página. Verificar sistemáticamente, sin excepción, antes de cualquier reutilización.
- Personas y hechos poco conocidos
- Biografías de personas poco conocidas, detalles poco conocidos: el modelo recombina fragmentos e inventa el resto.
#Para ir más allá
Reducir las alucinaciones consiste principalmente en combinar los ajustes adecuados y un buen anclaje. Estas guías complementan el enfoque:
- Temperatura, top-p, top-k: los parámetros
- Para dominar en detalle los parámetros de muestreo mencionados aquí y ajustar con precisión el equilibrio entre creatividad y fiabilidad.
- Elegir tu cuantización (Q4, Q5, Q8, FP16)
- Para entender el efecto de la compresión sobre la precisión factual y tomar decisiones cuando prima la fiabilidad.
- Dominar los system prompts
- Para profundizar en los prompts de cautela y establecer por defecto un comportamiento que evite inventar información.
¿Un comentario, un error, una precisión? Avísanos, eso mejora la guía para todos.