Una tarjeta de título generada encabezada por «Ming-3.0-asr-tiny vs Moonshine 250M», con un panel izquierdo que muestra un micrófono en vivo alimentando un pequeño codificador de streaming etiquetado «frontend de 50 Hz, anticipación de 80 ms» y un panel derecho que muestra un archivo de audio completo cargándose en una gran pila de expertos etiquetada «8.87B parámetros, clip completo, salida en texto plano», y un pie de página que dice «cifras de Moonshine según su ficha del modelo; cifras de Ming según su configuración y gráficos del proveedor».
Guides & Insights

Ming-3.0-asr-tiny vs Moonshine 250M: un modelo nunca deja de escuchar, el otro no empieza hasta que terminas

Autor

Elias Hawthorne

Fecha de publicación

Últimos modelos · 20Ver todos los modelos →
Benchmarks: Artificial Analysis · actualizado a diario
Volver a todas las publicaciones

Hay un problema de nomenclatura que aclarar antes que nada, porque cambia en qué consiste esta comparación. Moonshine publica tres checkpoints —Tiny con 34M, Small con 123M y Medium con 245M— y Moonshine 250M es la forma abreviada que usa la comunidad para el modelo superior de esa línea, el checkpoint cuyo nombre de repositorio es moonshine-streaming-medium y cuyo índice de safetensors suma en realidad 265.898.112 parámetros. Ningún archivo de la organización Moonshine se llama 250M. Ese modelo es un reconocedor de inglés en streaming con un codificador de ventana deslizante y un decodificador autorregresivo, pensado para un portátil o un teléfono, publicado en enero de 2026 bajo licencia MIT. Ming-3.0-asr-tiny es un reconocedor de chino e inglés de 8,87 mil millones de parámetros cuyos pesos aparecieron en Hugging Face el 14 de octubre de 2026 sin anuncio, construido en torno a un codificador con forma de Whisper y un decodificador de mezcla de expertos con 128 expertos, y diseñado para leer un clip entero de una sola vez. No son rivales en el mismo mercado. Son dos respuestas distintas a la pregunta de cuándo se le permite hablar a un reconocedor. El checkpoint al que este artículo llama Moonshine 250M está documentado en la ficha del modelo Moonshine Streaming Medium, donde el índice de safetensors registra 265.898.112 parámetros frente a la etiqueta de 245M de la ficha. Los fallos de IA y los incidentes de agentes documentados detrás de lanzamientos como este se recopilan en el OrcaRouter AI Incident Archive donde cada entrada incluye sus propias fuentes, gravedad, grado de confianza e indicador de disputa.

Esa pregunta es el marco útil, y produce una decisión más limpia que la que daría una tabla de precisión. Moonshine 250M emite palabras mientras el audio aún está llegando, con aproximadamente 0,1 a 1 TOPS. Ming-3.0-asr-tiny no emite nada hasta que le entregas un archivo completo, y entonces emite una transcripción sin marcas de tiempo en absoluto.

Lo que cada uno está realmente diseñado para hacer

La arquitectura de Moonshine es una inversión deliberada del compromiso habitual en streaming. El codificador es un transformer de ventana deslizante con atención local acotada y sin embeddings posicionales en absoluto —la tarjeta lo denomina ergódico—, con ventanas de (16, 4) en las dos primeras y las dos últimas capas y de (16, 0) en las intermedias, lo que proporciona unos 80 milisegundos de anticipación. La información posicional la inyecta un adaptador después del codificador, que alimenta a un decodificador causal estándar con RoPE. El frontend de audio funciona a 50 Hz usando operaciones simples en el dominio del tiempo en lugar de un espectrograma mel.

El decodificador es autorregresivo, y Moonshine dice cuánto cuesta eso: la latencia de salida completa crece con la longitud de la transcripción incluso cuando el tiempo hasta el primer token es bajo. Esa es la limitación honesta del diseño, y es la frase que hay que tener en cuenta al comparar afirmaciones sobre streaming. Streaming significa que las primeras palabras aparecen rápido; no significa que la última palabra aparezca proporcionalmente rápido.

Ming no ofrece streaming, y su ficha lo indica: el ejemplo incluido no acepta entrada por streaming. El audio largo se puede dividir en fragmentos mediante un argumento frente a un contexto de 8.192 posiciones, pero dividir un archivo no es lo mismo que consumir una transmisión en vivo, y el campo de formato de salida de la configuración está ajustado a plain. Lo que Ming hace en su lugar es conservar el contexto. Acepta palabras clave o el turno de diálogo anterior como parte del prompt de transcripción, y se evalúa en quince conjuntos de pruebas de dialectos chinos: Hunan, Minnan, cantonés, chuanyu, shanghainés, Anhui, del noreste, Henan, Hubei, Jiangsu, hakka, Shaanxi, Shandong, Tianjin y Yunnan. Moonshine solo funciona en inglés y no tiene nada de esto.

A screenshot of the Moonshine Streaming Medium model card on Hugging Face, showing the moonshine-ai organisation, the automatic-speech-recognition pipeline tag, an MIT licence, English as the only language, and the card's opening description of a lightweight 50 Hz audio frontend paired with a sliding-window transformer encoder for low-latency on-device streaming ASR.

Los dos recuentos de parámetros, y por qué difieren

Un detalle que merece la pena detenerse a analizar, porque es el tipo de cosa que rompe silenciosamente una tabla comparativa: la propia ficha de Moonshine indica que Medium tiene 245 M de parámetros, 14 capas de codificador y 14 de decodificador, un codificador de 768 dimensiones y un decodificador de 640 dimensiones. El índice de safetensors en el mismo repositorio informa de 265.898.112. La diferencia es de unos 21 millones, aproximadamente un ocho y medio por ciento, y no es un error de redondeo: es la diferencia entre contar un backbone y contar todo lo que se distribuye con él.

Ming tiene el mismo problema en un tamaño mayor. Su índice reporta 8.865.800.992 parámetros; sus gráficos etiquetan el modelo 8.6B-A2B, una forma abreviada de 8,6 mil millones en total con aproximadamente 2 mil millones activos por token. La etiqueta está unos 270 millones por debajo del índice.

• Parámetros totales — Ming-3.0-asr-tiny 8.87B (índice) frente a Moonshine 250M 266M (índice); las etiquetas del proveedor indican 8.6B y 245M.

• Activos por token — alrededor de 2B para Ming, ya que 8 de cada 128 expertos se enrutan en cada paso. Los 266M completos para Moonshine, que es un modelo denso.

• Codificador — 32 capas, 1.280 dimensiones, 20 cabezas, 128 bandas mel, con forma de Whisper, frente a un transformer ergódico de ventana deslizante de 14 capas y 768 dimensiones sobre un frontend de 50 Hz.

• Decodificador — 24 capas, 128 expertos, autorregresivo; frente a 14 capas, denso, autorregresivo.

• Modelo de latencia — entra el clip completo y sale la transcripción, sin streaming; frente a ~80 ms de anticipación y un primer token mientras el audio aún sigue llegando.

• Salida — texto de transcripción simple, sin marcas de tiempo, sin diarización; frente al texto de transcripción de un decodificador autorregresivo que tampoco tiene una ruta de marcas de tiempo en la tarjeta.

• Idiomas — chino e inglés más 15 conjuntos de pruebas de dialectos chinos; frente a solo inglés.

• Licencia — MIT para ambos, con los encabezados Apache-2.0 incluidos conservados en el repositorio de Ming.

A generated comparison scoreboard titled 'Ming-3.0-asr-tiny vs Moonshine 250M — the scoreboard', with six matching rows: Parameters 8.87B total, 2B active versus 266M dense, Streaming no versus yes, 80 ms lookahead, Languages Chinese, English and 15 dialects versus English, Context input hotwords and dialogue versus none, Hardware CUDA GPU, 17.7 GB BF16 versus sub-1 GB, on-device, Licence MIT versus MIT; the footer reads 'Moonshine figures per its model card; Ming figures from its config and vendor charts, unreproduced.'

Precisión, con la salvedad de que nunca se probaron con el mismo audio

La tarjeta de Moonshine reporta un WER promedio de 6,65 en ocho conjuntos en inglés para Medium: 10,68 en AMI, 11,90 en Earnings-22, 9,46 en GigaSpeech, 2,08 en LibriSpeech test-clean, 5,00 en test-other, 2,58 en SPGISpeech, 2,99 en TED-LIUM y 8,54 en VoxPopuli. Entrenado con aproximadamente 300.000 horas de habla.

Ming reporta un WER promedio de 3.99 en sus conjuntos públicos en inglés —LibriSpeech clean y other, Multilingual LibriSpeech, FLEURS English, Common Voice 15 English y VoxPopuli— y un CER promedio de 3.55 en sus conjuntos en chino. Entrenado con una cantidad no revelada de datos.

La tentación es poner 3,99 junto a 6,65 y declarar que Ming es más preciso en inglés. No lo haga. Dos de los cinco conjuntos en inglés difieren, la agregación difiere, la ficha de Moonshine no publica un desglose por conjunto que se corresponda limpiamente con los cinco de Ming, y ninguno de los dos proveedores ejecutó el modelo del otro. En el único conjunto que ambos reportan —VoxPopuli—, Ming no publica en absoluto una cifra por conjunto para inglés en su texto, solo el promedio, así que ni siquiera esa única coincidencia puede compararse a partir de las fichas. Todos los números aquí son reportados por el proveedor y no han sido reproducidos.

Lo que puede decirse sin un conjunto de pruebas compartido es estructural. Moonshine es un modelo denso de 266 millones de parámetros entrenado con 300.000 horas de inglés. Ming es un modelo de mezcla de expertos de 8,87 mil millones de parámetros con aproximadamente 2000 millones activos, entrenado con datos que no describe, evaluado en chino e inglés con un componente dialectal importante. Un modelo con diecisiete veces los parámetros activos y un prior de modelo de lenguaje debería ser más preciso con audio difícil en inglés, y sería sorprendente que no lo fuera. Eso es una expectativa basada en la arquitectura, no una medición.

Donde divergen las realidades del despliegue

Ming necesita una máquina Linux con una GPU CUDA, Python 3.12, PyTorch 2.11.0, torchaudio 2.11.0, Transformers 5.12.1, fla-core 0.5.2 y trust_remote_code=True para cargar su propio código de modelado. Los pesos ocupan unos 17,7 GB en BF16 repartidos en dos fragmentos. Hay una ruta de servicio SGLang, fijada a un commit específico del adaptador, lo que indica que el proveedor espera que esto se ejecute detrás de una API en lugar de en un escritorio.

Moonshine 250M apunta a menos de 1 GB de memoria y aproximadamente de 0,1 a 1 TOPS. Se ejecuta mediante el framework Moonshine Voice para dispositivos de borde y mediante Transformers, y la ficha indica claramente que la vía de Transformers todavía no implementa streaming totalmente eficiente: se apoya en el soporte de ventana deslizante de flash-attention. Si quieres el comportamiento de streaming que promete la arquitectura, la vía del framework es la que lo ofrece.

A screenshot of the moonshine-ai/moonshine repository page on GitHub, showing fourteen branches, twenty-four tags, ten open issues and two pull requests, alongside a commit feed listing work on the Moonshine Voice framework and a Docker-based release.

El repositorio es donde la línea de checkpoints se ve realmente: veinticuatro etiquetas repartidas en una familia Tiny, Small y Medium, además del framework que la tarjeta te dice que uses si quieres streaming de verdad. Esa es una historia de mantenimiento que Ming todavía no tiene, y es la mitad práctica de la elección.

Esa es toda la comparación en dos frases: un modelo está diseñado para que se olvide de él dentro de un dispositivo, y el otro está diseñado para servirse desde una GPU con una lista de palabras de activación adjunta.

Lo que un equipo centrado primero en China debería hacer realmente

Si tu producto es un subtítulo en vivo o un comando de voz en inglés, Moonshine 250M hace el trabajo que Ming no puede hacer en absoluto, y es poco probable que la brecha de precisión —sea cual sea— importe más que el hecho de que Ming no puede consumir una transmisión en vivo. El streaming no es una función que se añada después a una arquitectura que lee clips completos; es una propiedad del codificador.

Si tu producto es voz en chino, o un dialecto regional, o una canalización por lotes en la que las transcripciones se producen a posteriori y los nombres importan, Ming es el único de los dos que aborda el problema, y tiene cinco días de vida y decenas de descargas. La recomendación honesta es hacer una prueba comparativa con tu propio audio, puntuada según la exhaustividad de entidades nombradas en lugar de la tasa de error de caracteres, porque ese es el eje para el que se creó Ming.

Para los equipos que hacen esa comparativa, el problema operativo no es el modelo, sino la infraestructura: dos stacks, dos conjuntos de dependencias, dos conjuntos de credenciales y ninguna forma de compararlos con el mismo tráfico sin construir un arnés de pruebas. OrcaRouter no aloja ninguno de los dos modelos —Ming-3.0-asr-tiny y Moonshine 250M son pesos abiertos autoalojados—, pero coloca más de 200 modelos alojados detrás de una sola clave de API con conmutación por error automática, de modo que la línea base alojada contra la que puntúas puede convivir con tu candidato autoalojado sin un segundo contrato. Los precios de lista de los proveedores se repercuten con un 0 % de margen, que es la cifra que importa cuando comparas el coste por hora de audio en lugar del coste por token.

La pregunta abierta que vale la pena seguir de cerca

La ficha de Ming dice que las hotwords son sugerencias, no garantías, y que la salida es texto sin marcas de tiempo a nivel de palabra ni diarización de hablantes. La ficha de Moonshine dice que su decodificador puede alucinar palabras y repetir frases en segmentos cortos o ruidosos. Ambas son honestas sobre los modos de fallo, lo que es más de lo que logran la mayoría de las fichas, y ambas describen el mismo compromiso subyacente desde extremos opuestos: un decodificador autorregresivo que produce texto fluido a veces producirá texto fluido que no se dijo.

Lo que zanjaría esta comparación no es un benchmark, sino un caso de uso. Ejecuta ambos modelos con los mismos veinte minutos de tu propio audio —mitad en vivo, mitad por lotes, mitad en inglés, mitad en otro idioma— y la decisión deja de girar por completo en torno al número de parámetros. Hasta entonces, la descripción correcta del enfrentamiento es que un modelo está diseñado para escuchar de forma continua y el otro para leer con atención, y el nombre del más pequeño es una abreviatura comercial de un checkpoint que, de hecho, tiene 266 millones de parámetros.