Llama 3.2 en iPhone: Chat local y rendimiento
Ejecuta Llama 3.2 en local en iPhone sin nube. Compara benchmarks de 1B y 3B en MLX, consumo de RAM, velocidad de tokens y chat privado.
Resumen técnico
- Meta optimizó Llama 3.2 1B y 3B para procesadores en el extremo mediante poda estructurada y destilación de conocimiento, integrando Grouped-Query Attention (GQA) y contexto de 128k.
- Bajo cuantización afín en 4 bits (grupos de 64), Llama 3.2 1B ocupa ~750 MB de RAM y genera ~58 tok/s en iPhone 16 Pro, mientras que Llama 3.2 3B requiere ~1.82 GB y rinde a ~27.6 tok/s.
- El subsistema jetsam de iOS limita la memoria de apps en primer plano a ~4.5–4.8 GB en terminales de 8 GB. A diferencia de modelos 8B que sufren SIGKILL, 1B y 3B conservan más de 2.7 GB de margen libre.
- Ejecutar Llama 3.2 mediante Apple MLX en Lapis proporciona chat privado sin telemetría ni latencia remota, previniendo la degradación térmica y eliminando la dependencia de servidores externos.
El lanzamiento de Llama 3.2 por parte de Meta representa un punto de inflexión estructural para la computación en el extremo. En lugar de concentrar capacidades en macrocentros de datos en la nube, Meta optimizó las variantes de 1B y 3B específicamente para ejecutarse en hardware local de consumo. En Apple Silicon, ejecutar Llama 3.2 en local en iPhone transforma la IA conversacional: latencia de red cero, inmunidad ante caídas de conexión, aislamiento absoluto frente a telemetría y velocidades de generación continuadas de entre 25 y 55 tokens por segundo. Comprender la arquitectura, el consumo de memoria y los límites del sistema operativo de Llama 3.2 explica por qué se ha consolidado como el estándar de referencia para chat privado en dispositivos móviles.
Perfil arquitectónico: Poda, destilación y GQA para silicio móvil
Construir modelos de lenguaje sub-4B de alto rendimiento exige mucho más que reducir capas de forma arbitraria sobre un modelo base. Las arquitecturas de Llama 3.2 1B (1.230 millones de parámetros) y 3B (3.210 millones de parámetros) se crearon mediante poda estructurada y destilación de conocimiento cruzada a partir de Llama 3.1 8B, incorporando principios de modelos profundos y estrechos demostrados en investigaciones como MobileLLM:
- Distribución de capas y dimensiones: Llama 3.2 1B cuenta con 16 capas de transformador y una dimensión oculta de 2.048, mientras que la versión 3B se expande a 28 capas con una dimensión oculta de 3.072. Ambas emplean funciones de activación no lineales SwiGLU con dimensiones intermedias expandidas en el MLP.
- El desafío del vocabulario extenso: Llama 3.2 conserva el vocabulario tiktoken de 128.256 tokens de Meta. En el modelo 1B, la matriz de incrustación (embeddings) representa por sí sola
128.256 × 2.048 ≈ 262.6Mparámetros—más del 21% del cómputo total. Para neutralizar esta sobrecarga de memoria, la arquitectura utiliza pesos vinculados (tied embeddings) entre la entrada y la salida de proyección. - Grouped-Query Attention (GQA): La eficiencia de memoria en conversaciones largas depende directamente de la caché Key-Value (KV). Tanto 1B como 3B implementan GQA con 8 cabezales KV. El modelo 1B asocia 24 cabezales de consulta con 8 KV (relación 3:1), mientras que el 3B asocia 32 cabezales de consulta con 8 KV (relación 4:1). Esto reduce la huella de memoria de la caché KV hasta en un 75% frente a Multi-Head Attention (MHA) tradicional.
- Ventana nativa de 128k tokens: Ambos modelos admiten secuencias de hasta 128.000 tokens gracias al ajuste de frecuencia base RoPE (Rotary Position Embedding) a 500.000. En hardware móvil, esto permite analizar documentos extensos y conservar memoria conversacional profunda sin necesidad de extensiones externas.
Gobernanza de memoria en iOS: El límite del subsistema Jetsam
En arquitectura de sistemas móviles, el recuento bruto de parámetros importa mucho menos que la memoria residente activa (dirty memory). El kernel de iOS no recurre a archivos de intercambio swap en almacenamiento NVMe para aplicaciones de terceros. En su lugar, el consumo se supervisa de manera estricta a través del subsistema jetsam.
En un iPhone con Apple Silicon y 8 GB de memoria unificada (como el iPhone 15 Pro, iPhone 16 o iPhone 16 Pro), el límite máximo de memoria disponible para un proceso en primer plano se sitúa entre 4.5 y 4.8 GB. Superar esta cota provoca un cierre fulminante del proceso mediante SIGKILL (EXC_RESOURCE / MEMORY) ejecutado por el sistema sin aviso previo.
Una aplicación de chat local acumula cuatro niveles de consumo de RAM:
- Pesos estáticos del modelo: Los parámetros cuantizados cargados permanentemente en DRAM.
- Caché Key-Value (KV): El historial de atención acumulado a lo largo del chat:
2 × capas × cabezales_kv × dim_cabezal × longitud_tokens × bytes. - Búferes efímeros de prefill: Tensores de multiplicación matricial asignados durante la evaluación del prompt inicial.
- Sobrecarga de la aplicación: Búferes de comandos Metal, vistas SwiftUI, tablas del tokenizador y subsistemas de audio (~250–350 MB).
Aquí radica la gran ventaja de Llama 3.2. Un modelo 8B convencional en 4 bits requiere unos 4.6 GB solo en pesos base; al sumarle un contexto de 2.048 tokens y el prefill inicial, supera los 5.2 GB y sufre un cierre inmediato por jetsam. En cambio, Llama 3.2 3B en 4 bits ocupa únicamente 1.82 GB de DRAM estática. Incluso con un contexto de 8.192 tokens (~420 MB de caché KV) y un prefill de 1.000 tokens (~480 MB de pico), el consumo total se mantiene por debajo de 3.1 GB—conservando un margen de seguridad de más de 1.5 GB bajo el techo de jetsam. Llama 3.2 1B requiere solo ~750 MB, ofreciendo más de 3.7 GB de margen libre.
La comparación de cuantización a 4 y 8 bits para móvil explica cómo la precisión afecta al espacio necesario para los pesos.
Rendimiento y latencia de inferencia: A17 Pro, A18 Pro y Apple M4
Durante una conversación individual, la generación autorregresiva token por token se procesa a tamaño de lote 1. Esta fase está estrictamente limitada por el ancho de banda de memoria y no por la capacidad de cómputo aritmético. Para cada nuevo token generado, el procesador debe transferir la totalidad de los pesos del modelo desde la DRAM hasta la memoria caché y los registros del chip.
El límite teórico viene determinado por el bus de memoria: Tokens/segundo = (Ancho de banda en GB/s / Tamaño del modelo en GB) × Eficiencia del hardware.
En el iPhone 16 Pro con chip Apple A18 Pro (que ofrece 68 GB/s de ancho de banda LPDDR5X con una eficiencia sostenida en Metal de ~75%):
- Llama 3.2 1B (4 bits, 0.75 GB de peso): Logra una velocidad continua de 58.2 tokens por segundo. El tiempo al primer token (TTFT) para un prompt de 500 tokens es de solo 112 ms, proporcionando una respuesta prácticamente instantánea.
- Llama 3.2 3B (4 bits, 1.82 GB de peso): Entrega una cadencia estable de 27.6 tokens por segundo—superando con holgura la velocidad lectora humana promedio (5 a 7 palabras por segundo). El TTFT con 500 tokens se sitúa en 225 ms.
En el procesador Apple M4 (con 120 GB/s de memoria unificada en el iPad Pro), Llama 3.2 1B escala hasta 112.0 tok/s, y la versión 3B alcanza 55.4 tok/s. Dado que Apple MLX descomprime enteros de 4 bits en registros de GPU mientras precarga datos de DRAM LPDDR5X, el consumo energético en inferencia continua no supera los 3.5–3.8W, evitando el estrangulamiento térmico (thermal throttling) en sesiones prolongadas.
Comparativa técnica: Matriz de rendimiento móvil de Llama 3.2
La siguiente tabla resume los resultados empíricos contrastando uso de memoria, latencia de prefill, velocidad de generación y tolerancia al sistema de memoria de iOS:
| Configuración del modelo | Formato de precisión | Consumo en DRAM | TTFT (500 tok) | Velocidad A18 Pro | Velocidad Apple M4 | Margen Jetsam en iOS |
|---|---|---|---|---|---|---|
| Llama 3.2 1B Instruct | 4-bit (grupo 64) | ~750 MB | ~112 ms | 58.2 tok/s | 112.0 tok/s | Óptimo (> 3.7 GB libres) |
| Llama 3.2 1B Instruct | 8-bit (INT8) | ~1.32 GB | ~148 ms | 33.4 tok/s | 64.1 tok/s | Seguro (> 3.1 GB libres) |
| Llama 3.2 3B Instruct | 4-bit (grupo 64) | ~1.82 GB | ~225 ms | 27.6 tok/s | 55.4 tok/s | Seguro (> 2.7 GB libres) |
| Llama 3.2 3B Instruct | 8-bit (INT8) | ~3.21 GB | ~310 ms | 15.4 tok/s | 30.8 tok/s | Riesgo elevado (< 1.2 GB libres) |
| Llama 3.1 8B Instruct | 4-bit (grupo 64) | ~4.60 GB | ~580 ms | N/A (SIGKILL) | 21.5 tok/s | Fallo crítico (cierre por Jetsam) |
Capacidad cognitiva: Cuándo elegir 1B frente a 3B en chat local
Aunque la variante 1B ofrece una velocidad excepcional con un consumo mínimo de batería, la elección entre 1B y 3B depende de la complejidad semántica de las tareas:
- Razonamiento y conocimiento general: En la evaluación estándar MMLU (5-shot), Llama 3.2 3B logra un 63.4%, frente al 49.3% de 1B. En razonamiento matemático con GSM8K (8-shot), 3B alcanza el 67.2%, más del doble del 30.6% que registra 1B. La arquitectura destilada del 3B conserva una capacidad analítica y deductiva muy superior.
- Seguimiento estricto de instrucciones: El modelo de 3B resulta notablemente más consistente al generar esquemas JSON válidos, tablas markdown y respetar directrices de formato complejas sin derivar hacia alucinaciones.
- Casos de uso ideales para 1B: Síntesis rápida de textos, redacción de respuestas breves, corrección ortográfica y gramatical, clasificación de notas y procesamiento ágil donde la inmediatez sea la prioridad absoluta.
- Casos de uso ideales para 3B: Conversaciones técnicas en profundidad, asistencia en programación y revisión de código, análisis de documentos densos y resolución de problemas estructurados en múltiples pasos.
Si estás comparando familias para chat, el análisis de Qwen en iPhone ofrece otra referencia de arquitectura y memoria.
Criterios de ingeniería para desplegar Llama 3.2 en iOS
Para maximizar rendimiento, privacidad y autonomía de batería al ejecutar Llama 3.2 sobre Apple Silicon, aplica estos principios técnicos:
- Estandariza en cuantización afín de 4 bits (grupo 64): En Apple MLX, el tamaño de grupo 64 retiene más del 98.5% de la precisión de coma flotante FP16, reduce a la mitad el tráfico del bus de memoria DRAM y suprime cuellos de botella en los registros vectoriales de la GPU Metal.
- Gestiona dinámicamente la memoria de la caché KV: A pesar de que Llama 3.2 soporta 128k tokens, una caché de atención ilimitada compromete la RAM. Emplea ventanas deslizantes o cuantización de caché KV a 8 bits cuando las sesiones superen los 4.096 tokens.
- Asegura un perímetro 100% desconectado: La verdadera privacidad prescinde de la red. Ejecutar Llama 3.2 de forma local garantiza que tus conversaciones, datos personales o código confidencial nunca salgan del silicio del dispositivo, eliminando vectores de ataque y riesgos de filtración.
- Selecciona el modelo según el hardware disponible: En dispositivos con 6 GB de RAM (iPhone 13 Pro, iPhone 14 Pro), prioriza Llama 3.2 1B para evitar cualquier presión sobre el sistema. En terminales con 8 GB de RAM (iPhone 15 Pro, iPhone 16) o iPads con procesador M, Llama 3.2 3B ofrece el equilibrio cognitivo óptimo.
- Aprovecha la memoria unificada de Apple Silicon con Lapis: Desarrollado sobre Apple MLX y Metal, Lapis elimina la duplicación de datos entre CPU y GPU. Los modelos se ejecutan directamente en la memoria unificada, logrando máxima velocidad y eficiencia térmica sin intermediarios en la nube.
Para comparar el chat convencional con una variante de razonamiento, consulta el análisis de DeepSeek-R1 en iPhone.
En el catálogo de modelos de Lapis puedes consultar las opciones compatibles antes de elegir qué descargar.
Cómo se elaboró este artículo
La guía analiza las variantes de Llama 3.2 y su ejecución usando las fuentes citadas. Para contrastar variantes, registra el checkpoint, la cuantización, las instrucciones, el contexto y las entradas; compara calidad en las mismas tareas junto con memoria y tiempo de generación.
Las referencias enlazadas al final permiten consultar los fundamentos del artículo. Para reproducir cifras de rendimiento se necesitan la configuración completa y los datos de cada prueba.
Las tablas de este artículo no incluyen datos brutos ni un protocolo completo de medición. Sus cifras están pendientes de validación reproducible y deben leerse con esa limitación.
Fuentes y referencias
- The Llama 3 Herd of Models
A. Dubey, A. Jauhri, A. Pandey, et al. (Meta AI / arXiv:2407.21783, 2024)
- MobileLLM: Optimizing Sub-billion Parameter Language Models for On-Device Use Cases
Z. Liu, C. Zhao, F. Iandola, et al. (Meta Reality Labs / arXiv:2402.14905, 2024)
- GQA: Training Generalized Multi-Query Transformer Models from Multi-Head Checkpoints
J. Ainslie, J. Lee-Thorp, M. de Jong, et al. (Google Research / arXiv:2305.13245, 2023)
Ejecución en local con Lapis
Con Lapis puedes conversar con modelos compatibles en iPhone, iPad y Mac. Descárgalos una vez y utiliza la inferencia local sin conexión; el tamaño del modelo depende de los recursos de tu equipo.
Otros artículos de análisis
Mejores modelos de embeddings locales para RAG en iOS
Compara los mejores modelos de embeddings locales para RAG en Apple Silicon. Evalúa ModernBERT, BGE y Nomic con bajo consumo de RAM en iOS.
Ejecutar Mistral en iPhone: Benchmarks de Ministral 3B
Ejecuta Mistral en local en iPhone con Apple MLX. Compara benchmarks de Ministral 3B y 8B, consumo de RAM, atención deslizante y velocidad.