El informe técnico de @Meituan_LongCat LongCat-Flash es increíblemente bueno y está lleno de novedades. El modelo es un MoE pasivo de 560B ~27B activo con un número adaptativo de parámetros activos dependiendo del contexto gracias al experto de Cero-Cómputo. 1) Nueva arquitectura > Las capas tienen 2 bloques de Atención y tanto FFN como MoE, de esa manera puedes superponer las 2 comunicaciones de todos a todos. (también son solo 28 capas, pero hay que tener en cuenta los 2 bloques de atención). > Añaden el experto de cero-cómputo que los tokens pueden elegir y no hacer nada, como un "sumidero" para tokens fáciles. > Para el balanceo de carga, tienen una pérdida auxiliar tipo dsv3 libre para establecer el promedio real/falso de expertos por token. Aplican un programa de decaimiento a esta actualización de sesgo. También realizan control de balance de pérdidas. 2) Escalado > Hicieron cambios en MLA/MoE para tener alineación de varianza en la inicialización. Las ganancias son bastante impresionantes en la Figura 5, pero no sé hasta qué punto esto tiene impacto más adelante. > La inicialización del crecimiento del modelo es bastante interesante, primero entrenan un modelo 2x más pequeño y luego "cuando está suficientemente entrenado" (un poco poco claro aquí cuántos B tokens) inicializan el modelo final simplemente apilando las capas del modelo más pequeño. > Usaron el trabajo de @_katieeverett @Locchiu y otros para tener transferencia de hiperparámetros con SP en lugar de muP para el modelo 2x más pequeño. 3) Estabilidad > Rastrean la Relación de Normas de Gradiente y la similitud coseno entre expertos para ajustar el peso de la pérdida de balanceo de carga (recomiendan que la Relación de Normas de Gradiente <0.1). > Para evitar activaciones grandes, aplican una pérdida z al estado oculto, con un coeficiente bastante pequeño (otra alternativa a qk-clip/norm). > Establecen el epsilon de Adam en 1e-16 y muestran que debe ser menor que el rango RMS del gradiente. 4) Otros > Entrenan con 20T tokens para la fase 1, "múltiples T de tokens" para el entrenamiento intermedio en datos STEM/código (70% de la mezcla), 100B para la extensión de contexto largo sin hilo (80B para 32k, 20B para 128k). Los documentos de contexto largo representan el 25% de la mezcla (no estoy seguro si es % de documentos o tokens, lo cual cambia mucho aquí). > La tubería de datos de pre-entrenamiento es extracción de contexto, filtrado de calidad, deduplicación. > Bonito apéndice donde muestran que comparan top_k necesarios para diferentes benchmarks (mayor MMLU con 8.32, menor GSM8K con 7.46). También comparan la asignación de tokens en capas profundas/superficiales. > Lanzan dos nuevos benchmarks Meeseeks (IF de múltiples turnos) y VitaBench (escenario de negocio del mundo real). > Muchos detalles en la infraestructura/inferencia con información sobre aceptación de decodificación especulativa, cuantización, despliegue, optimización de kernel, superposición de comunicaciones, etc. > Lista de los diferentes documentos relevantes en el hilo 🧵
59,85K