Yeda AI Tips · #002

English

El detector de alucinaciones de la IA en 5 segundos

El código generado por IA tiene un modo de falla muy particular: puede verse completamente correcto — nombres limpios, estructura sensata, comentarios plausibles — mientras llama a una función que nunca existió en ninguna versión de la biblioteca. No lo vas a detectar leyéndolo. Tu verificador de tipos lo detecta en segundos.

Por qué el código de la IA miente de forma convincente

Un modelo de lenguaje genera código de la misma manera que genera prosa: produciendo lo que es estadísticamente plausible. Si una biblioteca debería tener un método client.batchUpdate() — porque bibliotecas similares lo tienen, porque el patrón de nombres encaja — el modelo lo llamará con gusto, exista o no. Mezcla APIs de distintas versiones de una biblioteca, inventa argumentos con nombre que nunca fueron aceptados e importa símbolos del módulo equivocado.

Lo peligroso es que el código alucinado pasa la prueba de la vista. Está formateado como código real, nombrado como código real y rodeado de código que es real. La revisión humana está afinada para atrapar lógica defectuosa, no símbolos inexistentes — nadie memoriza toda la superficie de API de una dependencia. Así que la llamada falsa navega sin problemas por la revisión y falla en tiempo de ejecución o, peor aún, en producción.

La comprobación de 5 segundos

Un verificador de tipos resuelve cada símbolo contra lo que realmente existe — tu código, tus dependencias instaladas, sus definiciones de tipos. Un método alucinado es, para un verificador de tipos, apenas una referencia sin resolver. Se marca al instante, con archivo y número de línea.

# TypeScript — solo verifica tipos, no compila nada
npx tsc --noEmit

# Python — verificación estática, no ejecuta nada
npx pyright

La clave es que esto es una comprobación pura. Sin compilación, sin empaquetado, sin correr pruebas, nada se ejecuta. tsc --noEmit verifica los tipos de todo el proyecto y no escribe ningún archivo de salida; pyright analiza Python estáticamente de la misma forma. En un proyecto típico cualquiera de las dos termina en segundos — por eso pertenece justo después de cada generación de IA, no solo en la etapa de CI.

Conviértelo en hábito

El ciclo es: la IA escribe → los tipos verifican → tú revisas. El verificador de tipos va en el medio a propósito — es barato y mecánico, así que déjalo eliminar los errores mecánicos antes de que empiece tu costosa atención humana. Tu tiempo de revisión va entonces donde de verdad hace falta: lógica, casos límite, diseño.

Para que el hábito perdure, quítatelo de las manos: agrega la comprobación como un hook de pre-commit. Así ningún código — escrito por IA o no — llega a un commit con símbolos sin resolver, sin importar si alguien se acordó de correr la comprobación.

Trucos avanzados

Recursos

¿Estás construyendo una función con IA? Yeda AI diseña, audita y lanza sistemas LLM en producción.

Hablemos · Lee el blog