Fine-Tune LFM2.5 350M with Ertas

    LFM2.5-350M es el modelo edge diminuto de Liquid AI, entrenado con el presupuesto completo de 28 billones de tokens y con 44,11 en llamada a funciones BFCLv3. Exporta en 229MB cuantizado y funciona en 56MB en un iPhone 13 Mini, lo que lo convierte en la elección para llamada a herramientas y extracción estructurada donde cada petición se sostiene sola.

    350MLiquid AI

    LFM2.5 350M at a Glance

    Nombre completoLFM2.5-350M
    DesarrolladorLiquid AI
    Parámetros350M
    Capas16 (10 bloques de convolución con doble compuerta + 6 bloques GQA)
    Presupuesto de entrenamiento28 billones de tokens
    Longitud de contexto32.768 tokens
    Tamaño del vocabulario65.536
    Corte de conocimientoMediados de 2024
    IdiomasInglés, árabe, chino, francés, alemán, japonés, coreano, portugués, español
    Publicado31 de marzo de 2026
    LicenciaLFM Open License v1.0 (lfm1.0)
    Nivel de GPU para ajustar en ErtasT4
    Entrenable en el plan Free de Ertas
    Tamaño de exportación Q4_K_M229 MB
    Réplica en ErtasErtasAI/LFM2.5-350M

    Overview

    LFM2.5-350M es el tamaño intermedio de la familia LFM2.5 de Liquid AI, publicado el 31 de marzo de 2026. Comparte la estructura de capas exacta del 1.2B, 16 capas repartidas en 10 bloques de convolución de corto alcance con doble compuerta y 6 bloques de atención de consultas agrupadas, y el mismo presupuesto de preentrenamiento de 28 billones de tokens. El recuento de parámetros es en lo que difieren, y el 350M recibe la ejecución de entrenamiento completa en lugar de una reducida.

    Eso importa más de lo que parece. Los modelos pequeños suelen estar infraentrenados respecto a su capacidad porque el presupuesto de cómputo sigue al recuento de parámetros. Poner un presupuesto de 28T tokens detrás de 350M parámetros es lo que produce un modelo con 76,96 en IFEval, por delante de Gemma 3 1B con 63,49 y de Qwen3.5-0.8B con 59,94, ambos mayores.

    Las puntuaciones de llamada a funciones son lo más destacado. BFCLv3 con 44,11 y BFCLv4 con 21,86 sitúan al 350M por delante de Granite 4.0-H-350M con 43,07 y 13,28, por delante de Qwen3.5-0.8B con 35,08 y 18,70, y muy por delante de su propio predecesor LFM2-350M con 22,95 y 12,29. En CaseReportBench, un benchmark de extracción estructurada clínica, se lleva 32,45 frente al 13,83 de Qwen3.5-0.8B y el 2,28 de Gemma 3 1B.

    La ventana de contexto es de 32.768 tokens, igual que el resto de la familia, con un vocabulario de 65.536 tokens. Cuantizado a Q4_K_M el modelo exporta en 229MB. En un iPhone 13 Mini con el motor Cactus funciona en 56MB a 88 tokens por segundo de decodificación, una huella que puedes meter dentro de una app móvil sin abrir una conversación sobre el tamaño de descarga.

    Liquid lo recomienda para extracción de datos, salidas estructuradas y uso de herramientas, y lo aparta de tareas intensivas en conocimiento, programación, matemáticas y escritura creativa. El catálogo de Ertas lo lleva replicado en `ErtasAI/LFM2.5-350M`.

    Key Features

    La llamada a funciones con 350M parámetros es la razón para elegir este modelo. BFCLv3 con 44,11 está a menos de un punto de lo que obtiene el 230M y cerca de lo que consiguen muchos modelos de clase 1B, y el predecesor LFM2-350M obtenía 22,95 en el mismo benchmark una generación antes. El modelo escribe llamadas en Python entre los tokens `<|tool_call_start|>` y `<|tool_call_end|>` por defecto y puede cambiarse a JSON mediante el prompt de sistema.

    La extracción estructurada es la fortaleza emparejada. CaseReportBench con 32,45 mide la extracción de campos clínicos estructurados a partir de informes de casos sin estructurar, y el 350M más que duplica el 13,83 de Qwen3.5-0.8B. Combinado con IFBench en 40,69, esto describe un modelo que produce de forma fiable la forma que pediste.

    El abanico de despliegue es inusualmente amplio para un solo punto de control. Liquid publicó mediciones en cinco objetivos muy distintos: un Apple M5 Max con Mirai a 564 tokens por segundo de decodificación, un AMD Ryzen AI Max 395+ con llama.cpp a 313, un iPhone 13 Mini con Cactus a 88 y 56MB de memoria, una NPU Snapdragon 8 Elite con RunAnywhere en 169MB, y una Raspberry Pi 5 a 30 tokens por segundo en 300MB. En una sola H100 alcanza 40.400 tokens de salida por segundo con alta concurrencia, así que el mismo modelo que cabe en una Pi también sirve una carga por lotes.

    Cubre nueve idiomas: inglés, árabe, chino, francés, alemán, japonés, coreano, portugués y español. Multi-IF, el benchmark multilingüe de seguimiento de instrucciones, queda en 44,92, por delante del 37,70 del 230M y del 41,68 de Qwen3.5-0.8B.

    Dónde se nota el tamaño: MMLU-Pro con 20,01 y GPQA Diamond con 30,64. El conocimiento del mundo es escaso, que es el intercambio esperado con 350M parámetros. Dale los hechos en el prompt.

    Fine-Tuning with Ertas

    LFM2.5 350M se ajusta en el nivel T4 de Ertas Studio y queda muy por debajo del límite de 5B parámetros del plan Free. Los pesos son nativos en bf16, así que el entrenamiento corre en bf16 sin recurrir a fp32.

    La receta para esta clase de tamaño es una tasa de aprendizaje entre 3e-4 y 5e-4, tamaño de lote 4, acumulación de gradiente 2 y de 8 a 16 épocas. Con 350M parámetros una ejecución de entrenamiento termina lo bastante rápido como para iterar sobre el conjunto de datos varias veces en una tarde, que es donde vive el trabajo real.

    Las exportaciones salen como GGUF para llama.cpp, Ollama y LM Studio, o como adaptadores LoRA en safetensors. Una exportación Q4_K_M ronda los 229MB, frente a 490MB de un Qwen 2.5 0.5B y 810MB de un Gemma 3 1B. Si tu producto envía el modelo al usuario, esa diferencia es la diferencia entre una descarga que la gente acepta y una que se piensa.

    Un hallazgo de nuestro propio trabajo merece llevarse. Mientras construíamos [Chatty Valley](/blog/chatty-valley-on-device-ai-mod-stardew-valley) ajustamos tanto el 350M como el 1.2B con el mismo conjunto de datos de personaje y pasamos la misma batería de evaluación por ambos. El 350M mantuvo la voz y el formato del personaje de maravilla y produjo frases sueltas que se leían exactamente bien. Luego perdió el hilo de una conversación informal de varios turnos, respondiendo a una pregunta que no se había hecho y repitiendo la idea por si te la habías perdido.

    Lo que hizo caro encontrar eso es que todas las métricas automáticas salieron limpias en ambos tamaños. Tasa de ausencia de guiones, tasa de fuga ante jailbreak, distribución de longitud de frase, degeneración y fugas numéricas de edad: todas pasaron. El fallo solo era visible hablando con él. Si estás ajustando un 350M para algo conversacional, escribe una prueba guionizada de varios turnos y ejecútala antes de fiarte de las métricas. Para extracción de un solo turno y llamada a herramientas, que es para lo que está construido este modelo, ese riesgo no aplica.

    Use Cases

    La extracción de datos estructurados a volumen es el mejor encaje. Cada documento es una petición independiente, los hechos vienen del texto que el modelo tiene delante, y lo que importa es emitir la forma correcta cada vez. IFBench con 40,69 y CaseReportBench con 32,45 apuntan a esto, y con 40.400 tokens de salida por segundo en una sola H100 la economía de ejecutarlo sobre un corpus grande sale bien.

    La llamada a herramientas en un agente edge es el segundo. BFCLv3 con 44,11, formato nativo de llamadas en Python y una ventana de 32.768 tokens para definiciones de herramientas significan que un agente local puede llevar un conjunto de herramientas real en su prompt. Combínalo con recuperación y deja que el índice cargue con los hechos.

    Las funciones de apps móviles que se ejecutan sin conexión encajan con la huella. 56MB de memoria en un iPhone 13 Mini y 229MB de descarga es lo bastante pequeño para que clasificación, autocompletado, resumen de contenido en dispositivo y relleno de formularios funcionen como funciones en segundo plano en vez de como el titular de la app.

    El despliegue embebido y en IoT es realista aquí. 169MB en una NPU Snapdragon 8 Elite y 300MB en una Raspberry Pi 5 cubren un amplio abanico de hardware que no podría alojar cómodamente un modelo de 1B.

    Dónde mirar en otra parte: conversación de varios turnos, trabajo de personaje, cualquier cosa que necesite conocimiento del mundo, código o matemáticas. Para profundidad conversacional en la misma familia, sube a [LFM2.5 1.2B](/models/lfm2-5-1-2b). Para una huella aún menor en trabajo de un solo turno similar, [LFM2.5 230M](/models/lfm2-5-230m) cede sorprendentemente poco.

    Hardware Requirements

    Inferencia, según las mediciones de Liquid AI en cinco objetivos. Apple M5 Max con Mirai: 44.800 tokens por segundo de prellenado, 564 de decodificación, 1GB. AMD Ryzen AI Max 395+ con llama.cpp: 2.900 de prellenado, 313 de decodificación, 434MB. NPU Snapdragon 8 Elite con RunAnywhere: 2.800 de prellenado, 15 de decodificación, 169MB. iPhone 13 Mini con el motor Cactus: 496 de prellenado, 88 de decodificación, 56MB. Raspberry Pi 5 con Cactus: 200 de prellenado, 30 de decodificación, 300MB. En una sola H100 el modelo alcanza un pico de 40.400 tokens de salida por segundo con alta concurrencia.

    Tamaños de exportación de las compilaciones GGUF publicadas por Liquid: 219MB en Q4_0, 229MB en Q4_K_M, 260MB en Q5_K_M, 293MB en Q6_K, 379MB en Q8_0 y 712MB en BF16. Con este tamaño merece la pena probar Q5_K_M o Q6_K, porque el coste absoluto de la calidad extra son solo unas pocas decenas de megabytes.

    Para ajustar en Ertas, el nivel T4 maneja este modelo con holgura. Es el nivel de entrada y el que usa el plan Free.

    Para ajustar en local fuera de Ertas, QLoRA sobre un 350M cabe en una GPU de consumo de 6GB y corre lo bastante rápido como para que una pasada completa de entrenamiento sobre unos cientos de filas tarde minutos.

    Frequently Asked Questions

    ¿Qué es LFM2.5 350M?
    LFM2.5-350M es el modelo de lenguaje para dispositivo de 350 millones de parámetros de Liquid AI, publicado el 31 de marzo de 2026. Usa 16 capas repartidas entre 10 bloques de convolución con doble compuerta y 6 bloques de atención de consultas agrupadas, tiene una ventana de contexto de 32.768 tokens y fue preentrenado con 28 billones de tokens, el mismo presupuesto que el 1.2B de la misma familia.
    ¿Qué tal es LFM2.5 350M en llamada a funciones?
    Obtiene 44,11 en BFCLv3 y 21,86 en BFCLv4 en los resultados publicados por Liquid AI. Eso lo sitúa por delante de Granite 4.0-H-350M (43,07 y 13,28), Qwen3.5-0.8B (35,08 y 18,70), Gemma 3 1B IT (16,61 y 7,17), y aproximadamente al doble de su propio predecesor LFM2-350M (22,95 y 12,29). La llamada a funciones es una de las dos cosas que este modelo está construido para hacer bien.
    ¿Cuánto ocupa una exportación de LFM2.5 350M ajustado?
    Alrededor de 229MB en Q4_K_M, según la compilación GGUF publicada por Liquid AI. Q5_K_M son 260MB, Q6_K son 293MB y Q8_0 son 379MB. Para comparar, un Gemma 3 1B en Q4_K_M son 810MB y un Qwen 2.5 0.5B son 490MB.
    ¿Puede LFM2.5 350M mantener una conversación?
    El trabajo de un solo turno es donde encaja. En nuestras propias pruebas, un 350M ajustado mantuvo la voz y el formato de un personaje a la perfección y luego perdió el hilo a lo largo de una conversación informal de varios turnos, produciendo respuestas fluidas y en personaje a preguntas que no se habían hecho. Todas las métricas automáticas que ejecutamos pasaron tanto en el 350M como en el 1.2B, y solo una prueba conversacional guionizada sacó a la luz la diferencia. Para extracción, clasificación, salida estructurada y llamada a herramientas, donde cada petición se sostiene sola, el 350M es una excelente elección. Para conversación, sube a LFM2.5 1.2B.
    ¿Qué hardware puede ejecutar LFM2.5 350M?
    Liquid AI publicó mediciones en cinco objetivos: un iPhone 13 Mini con 56MB de memoria y 88 tokens por segundo de decodificación, una NPU Snapdragon 8 Elite con 169MB, una Raspberry Pi 5 con 300MB y 30 tokens por segundo, un AMD Ryzen AI Max 395+ con 434MB y 313 tokens por segundo, y un Apple M5 Max con 564 tokens por segundo. En una sola H100 alcanza 40.400 tokens de salida por segundo con alta concurrencia.
    ¿Es gratis ajustar LFM2.5 350M en Ertas?
    Sí. Se entrena en el nivel de GPU T4 y queda muy por debajo del límite de 5B parámetros del plan Free. Las exportaciones están disponibles como GGUF o como adaptadores LoRA en safetensors.

    Supported Quantizations

    Q4_0Q4_K_MQ5_K_MQ6_KQ8_0F16BF16

    Related Resources

    Ship AI that runs on your users' devices.

    Free plan with 30 credits/mo, no card required. Paid plans from $10/mo USD.