Gestión de modelos de idioma: descarga una vez, traduce en cualquier lugar
Cada modelo de idioma ML Kit ocupa aproximadamente 10–50 MB en disco y persiste a través de los reinicios de la aplicación. La página del gestor de modelos enumera los 19 idiomas compatibles con su estado de descarga y te permite descargar o eliminar cada uno. Esta publicación explica cuándo usar la página, qué significan los estados del modelo y qué almacenamiento esperar.\n\n## Cuándo visitar el gestor de modelos\n\nPara la mayoría de los usuarios, la página del gestor de modelos no es necesaria: elige un idioma en la página de cámara o en la página de traducción de texto, y la aplicación descarga el modelo correspondiente bajo demanda la primera vez que traduces. El modelo permanece en el dispositivo para cada traducción posterior.\n\nLa página del gestor de modelos es para usuarios que quieren:\n\n- Pre-descargar para viajes sin conexión. Antes de un viaje, descarga cada par de idiomas que necesitarás. La traducción funcionará en el avión, en el aeropuerto, en el hotel y en el tren.\n- Auditar el almacenamiento. Mira qué idiomas están descargados y cuánto espacio usa cada uno.\n- Eliminar idiomas no utilizados. Recupera almacenamiento eliminando los modelos que ya no necesitas.\n\n## Estados del modelo\n\nCada idioma está en uno de cuatro estados:\n\n- No descargado. Se muestra un botón Descargar. Toca para iniciar la descarga.\n- Descargando. Se muestra un spinner indeterminado. ML Kit no expone callbacks de progreso, solo finalización; el spinner se resuelve en Descargado o Fallido.\n- Descargado. Se muestra una insignia con un botón Eliminar. Toca para eliminar el modelo y recuperar almacenamiento.\n- Fallido. Un botón Reintentar reemplaza Descargar. Causas comunes: sin red, celular bloqueado, poco espacio en disco. Reintenta una vez resuelto el problema subyacente.\n\n## Descargas secuenciales\n\nMúltiples solicitudes de descarga en rápida sucesión se ponen en cola, no se paralelizan. El complemento iOS nativo no maneja llamadas manageModel simultáneas de forma limpia: la segunda solicitud cancela la primera. La aplicación serializa las descargas a través de un único Future encadenado, por lo que las solicitudes simultáneas se resuelven una tras otra. La interfaz de usuario solo muestra la descarga activa en estado indeterminado; las solicitudes en cola esperan su turno.\n\n## Costo de almacenamiento\n\n- Por modelo. 10–50 MB según el idioma.\n- Los 19 idiomas. Aproximadamente 300–600 MB.\n- Rol. Un modelo puede servir como fuente o destino; un modelo admite ambos roles para el idioma.\n\n## Eliminar un modelo\n\nLa eliminación es definitiva. El almacenamiento se recupera inmediatamente. Para traducir ese idioma de nuevo, la siguiente traducción desencadena una nueva descarga. No hay limpieza automática; el modelo permanece hasta que lo elimines o desinstales la aplicación, ambas eliminan todos los modelos descargados.\n\n## Privacidad\n\nLos modelos se descargan desde los servidores de distribución de ML Kit. La descarga es una operación única por idioma. Sin análisis sobre qué modelos descargas, sin telemetría más allá de los contadores agregados, sin seguimiento por usuario.\n\n## Un flujo de trabajo práctico\n\n1. Abre la página del gestor de modelos desde la página de ajustes.\n2. Toca Descargar junto a cada idioma que desees.\n3. Espera a que el spinner se resuelva en Descargado para cada fila.\n4. Traduce sin conexión: no se necesitan más descargas para estos idiomas.\n5. Al regresar, elimina los idiomas que ya no necesites para recuperar almacenamiento.\n\nPara viajes únicos, esto toma un minuto. Para uso multilingüe permanente, deja los idiomas que usas frecuentemente descargados y elimina el resto.