· Abraham · Alyss AI  · 7 min read

Un pequeño genio

Pipeline de seis pasos fundamentales para transformar la potencia bruta de un modelo local en un sistema fiable

Pipeline de seis pasos fundamentales para transformar la potencia bruta de un modelo local en un sistema fiable

Llevo unas semanas sin escribir. No soy escritor ni me gusta especialmente, pero escribir me ayuda a seguir, a ordenar lo que tengo en la cabeza y a continuar. Estas semanas han sido de rasguños, arañazos, pisotones y moratones, que es lo que llevo acumulando desde que empecé con esto.

Estoy contento, porque he aprendido mucho por el camino. Pero lo que más me ha frustrado, lo que me ha hecho replantearme todo y hacer más ensayo y error del que me gustaría admitir, ha sido trabajar con modelos de lenguaje en local.

Aquí está la trampa: si chateas con un modelo local de tamaño mediano, todo pinta bien. Responde con coherencia, razona con fluidez, parece capaz de cualquier cosa. El problema llega cuando dejas de chatear y empiezas a construir. Cuando lo metes en un árbol de decisión, le pides que use herramientas externas, le exiges un formato de respuesta concreto, le das un rol dentro de un pipeline con más agentes. Ahí empieza a caerse en pedazos. Alucinaciones que parecen broma: “tienes 3 correos de mijefe@empresa.com”. Formatos incorrectos que rompen el paso siguiente. Un prompting cada vez más defensivo, más largo, más frágil, intentando atar en corto a un modelo que no termina de ser fiable cuando la tarea se complica.

Después de semanas de pruebas, tomé una decisión que va contra mis principios: cambié a Gemini Flash 2.5. Y todo empezó a funcionar. Las alucinaciones desaparecieron, el uso de herramientas se volvió predecible, los formatos se respetaron. La diferencia fue inmediata y difícil de ignorar.

Pero la soberanía del dato no es negociable para mí. Así que he vuelto al punto de partida con una decisión clara: voy a invertir en hardware y usar un modelo de 30B parámetros, algo que pueda ejecutar yo. Es el coste de la soberanía, y lo acepto sin dudarlo.

Otra vez.

He vuelto a empezar. Otra vez. No me importa, porque en cada vuelta aprendo cosas nuevas y tomo mejores decisiones. Por ejemplo, abandoné LangGraph y ahora uso PydanticAI. También descubrí, con cierta gracia, que el camino al que había llegado de forma intuitiva ya tiene nombre: se llama ReAct. Mis cinco pasos no son originales. Son una respuesta a la necesidad de domar a mi pequeño genio, y resulta que otros llegaron al mismo sitio antes que yo.

Y es que realmente lo veo así. Si tienes un niño que es un genio y le pides que haga algo complejo, no va a saber por dónde empezar. Pero si lo guías paso a paso, le haces reflexionar antes de actuar, le obligas a verificar lo que ha hecho y a resumir lo que sabe, la cosa mejora mucho. Eso es exactamente lo que hace un buen pipeline con un modelo de lenguaje: no confiar ciegamente en su capacidad, sino construir el andamiaje que le permite usarla bien.

Sigo en pruebas y seguiré en pruebas. Pero esto es lo que estoy construyendo ahora mismo.

Los seis pasos

El pipeline tiene 6 pasos, pero no siempre los recorre todos. Dependiendo de lo que le preguntes, Alyss AI puede tomar caminos distintos, saltarse verificaciones que no hacen falta o detenerse a pedir aclaraciones antes de continuar. En la mayoría de las conversaciones, sin embargo, la secuencia tiene esta forma.

Paso 1 - Evaluar. Antes de hacer nada, Alyss AI se detiene a entender qué le estás pidiendo realmente. No solo las palabras, sino la intención detrás. ¿Es una tarea concreta? ¿Una conversación personal? ¿Una rutina que ya tienes definida, como el resumen de tu mañana? ¿Hay algo ambiguo que impide responder bien sin preguntar antes? Este paso es el director de orquesta: si clasifica mal la intención, todo lo que viene después trabaja sobre premisas falsas.

Paso 2 - Anticipar. Mientras se pone a trabajar, Alyss AI te dice inmediatamente que ha entendido lo que necesitas y qué va a hacer. No te deja mirando una pantalla en blanco durante segundos. “Revisando tu correo y el parte del día…” ya es una respuesta, aunque la información real todavía no haya llegado. Es un detalle pequeño, pero hace que la interacción se sienta viva.

Paso 3 - Actuar. Aquí es donde Alyss AI lanza todas las herramientas que necesita, en paralelo y con un tiempo límite cada una. Si necesita el tiempo, tus correos y las noticias del día, las tres consultas ocurren a la vez, no una detrás de otra. Cada herramienta además evalúa ella misma si lo que ha obtenido tiene sentido, antes de entregar el resultado. Las herramientas son adaptadores MCP: interfaces estandarizadas hacia servicios externos. No contienen lógica de dominio; solo traducen peticiones del pipeline a datos estructurados. La lógica de dominio vive en los services, que son deterministas y testeables unitariamente.

Paso 4 - Consolidar. Los resultados de todos los agentes llegan y un proceso puramente determinista, sin modelo, los agrega. Calcula una confianza global como media ponderada de las confianzas individuales. Detecta si hay conflictos entre agentes: si el del tiempo dice “sol” y el de noticias dice “alerta meteorológica”, algo no cuadra.

Paso 4B - Verificar (condicional). Este es el paso que más me ha costado entender y que más me ha cambiado la forma de pensar sobre los modelos. Si la confianza global cae por debajo de 0.7, entra un modelo verificador a hacer una evaluación más profunda: ¿los datos respaldan realmente lo que se va a decir? ¿Hay alguna contradicción con las premisas implícitas del usuario? ¿Hay suficiente información para responder bien, o es mejor admitir que no la hay?

El verificador usa un modelo distinto al intérprete (Gemma 4 para verificar, Qwen3 para interpretar) para evitar el sesgo de confirmación: un modelo que se verifica a sí mismo tiende a darse la razón.

Paso 4C - Reflexionar (condicional). Si el verificador decide que los datos son recuperables pero insuficientes, el sistema se critica a sí mismo y relanza únicamente los agentes que fallaron, con instrucciones mejoradas. Hasta dos reintentos. Si después de eso sigue sin haber datos suficientes, admite su ignorancia con utilidad: explica qué sabe y qué no puede saber.

Paso 5 - Interpretar y responder. Con todo verificado, Alyss AI genera la respuesta. Pero no genera una sola versión: dependiendo del canal desde el que estés hablando, la respuesta se adapta automáticamente. No es lo mismo escucharla por voz que leerla en Telegram o trabajar con ella en una pantalla. Alyss AI lo sabe, y cada canal recibe exactamente lo que necesita.

Lo que une estos seis pasos no es solo la arquitectura técnica. Es una filosofía: no confíes en que el modelo sabe lo que hace, construye el andamiaje que le permite hacerlo bien. Eso es lo que llevo meses intentando aprender a hacer.

Paso 6 - Post-procesar el estilo. Dependiendo del canal, la respuesta pasa por un filtro de estilo. Para voz, es una transformación rule-based sin LLM: ajustar ritmo, eliminar construcciones no audibles, asegurar que ninguna frase supera las veinte palabras. Para canales ricos, un modelo ligero aplica la personalidad de Alyss AI según su fichero de estilo. La clave es que este paso solo colorea lo que ya existe: no decide qué decir, solo cómo decirlo.

Por hoy lo dejo aquí. Me voy a jugar con mi pequeño genio. El de verdad. El de cuatro años. Ese no alucina, pero tampoco acepta prompts.

Volver a la Bitácora

Posts Relacionados

Ver Todos los Posts »
Arquitectura de Alyss AI

Arquitectura de Alyss AI

Explorando la evolución hacia una arquitectura modular, los retos de la latencia y la integración de LangGraph, MCP y SGLang.

El XMP de la Memoria

El XMP de la Memoria

¿Cómo asegurar que tus pensamientos sobrevivan a la tecnología? Del carrete analógico al Markdown.