Acerca de

Hecho en Catania.

MAFDET lo desarrollan Simone Di Mauro y Simone Di Natale, dos amigos de Catania que programan juntos desde niños. Los dos estudian en la Universidad de Catania, Ciencias de la Computación e Ingeniería Informática. Entre ambos: back end, IA, seguridad, hardware, machine learning. Más o menos lo que hace falta para que un modelo de lenguaje empiece a trabajar antes de que pulses Enter.

Simone Di Mauro en GitHub

Simone Di Mauro

Ciencias de la Computación · Grado, Universidad de Catania

Ciencias de la Computación, con base en el desarrollo back end, la inteligencia artificial y la ciberseguridad: servicios y APIs, los modelos que hay detrás, y qué pasa cuando alguien intenta romperlos. Le importa el software que corre en local y es seguro por defecto: sin cuentas, sin datos que salgan de la máquina, descargas que confían en los certificados del sistema en lugar de desactivar las comprobaciones.

@MbareSimo99 ↗
Simone Di Natale en GitHub

Simone Di Natale

Ingeniería Informática · Grado, Universidad de Catania

Ingeniería Informática, cómodo entre el diseño de software y el hardware: cómo se estructura un programa y qué hace realmente la máquina con él. Sus intereses pasan por el machine learning, la automatización y el rendimiento: hacer caber un modelo en una tarjeta de 6 GB, medir lo que cuesta cada capa, y automatizar los benchmarks para que un resultado se pueda repetir en vez de creer.

@TheLastOxygen ↗

◆ En la práctica lo hacen todo juntos: el motor, la app, la investigación, las discusiones sobre las tres cosas. Las áreas de arriba son el punto de partida de cada uno, no un reparto del trabajo.

La historia

Dos carreras, un cuello de botella: la espera tras Enter.

Crecieron en Catania y empezaron a programar juntos de niños: primero juegos y scripts, después cualquier cosa que necesitara que un ordenador hiciera algo que no hacía de serie. La costumbre se quedó. La universidad le puso dos nombres, Ciencias de la Computación para uno e Ingeniería Informática para el otro, los dos en la Universidad de Catania.

Las dos carreras se solapan exactamente donde vive MAFDET. Por un lado la teoría de cómo un modelo de lenguaje lee (prefill, en paralelo y rápido) y escribe (decode, un token cada vez). Por otro el hardware que tiene que hacerlo lo bastante rápido como para parecer instantáneo, con una caché KV que cabe en seis gigabytes.

MAFDET nació de una medición, no de un eslogan. Un modelo local en una RTX 2060 responde a un problema de matemáticas unos doce segundos después de Enter, y la mayoría de esos segundos son razonamiento. Durante los veinte o treinta segundos que se tarda en escribir la pregunta, la GPU está parada. La pregunta vino sola: ¿se puede usar ese tiempo?

Leer por adelantado fue la mitad fácil: mantener la caché KV sincronizada con el texto, retener los últimos tokens, recortar al prefijo común en cada edición. Es exacto, y mafdet judge lo demuestra frente a un cálculo desde cero. Razonar por adelantado fue la mitad difícil: un modelo que razona sobre un mensaje que no está terminado, con sus notas conservadas entre ediciones. Eso no es exacto, así que se midió de la única manera honesta, con problemas de respuesta conocida, decenas de veces, en dos máquinas.

Se construyó a propósito para el hardware que tiene la mayoría de la gente: una tarjeta de seis gigabytes de 2019 como máquina de referencia, un M2 Pro como segunda, y una ruta por CPU para todo lo demás. Un hardware más rápido lo hace más rápido. No lo necesita.

Cómo trabajan

Tres hábitos, a la vista de todos.

Medirlo

Cada afirmación de este sitio tiene detrás un script y un archivo JSON en el repositorio. Cuando algo no funcionó, el gatherer, los borradores especulativos, queda escrito con los números, no borrado.

Decir lo que es

Un prototipo se llama prototipo. Linux no está probado y el sitio lo dice. La lectura anticipada es exacta y el razonamiento anticipado no, y la diferencia se explica en vez de disimularse.

Construir para máquinas reales

Sin PyTorch, sin nube, sin cuenta. La app se configura sola en la GPU que tienes, o en la CPU si es lo único que hay, y nunca envía un mensaje a ninguna parte.

Saluda.

El mejor sitio es GitHub: un issue, un benchmark desde tu máquina, un pull request. Si tienes una AMD Radeon, les gustaría especialmente saber de ti.