1 puntos por GN⁺ 5 시간 전 | 1 comentarios | Compartir por WhatsApp
  • Core AI es un nuevo framework para ejecutar, optimizar y desplegar modelos de IA dentro de apps en Apple silicon
  • Aprovecha la CPU, la GPU y el Neural Engine, y permite integrar inferencia de .aimodel en apps con APIs de Swift
  • Incluye una cadena de herramientas para convertir modelos de PyTorch a modelos de Core AI, además de compresión, depuración y precompilación
  • Los modelos grandes requieren specialization antes de ejecutarse, por lo que es clave diseñar bien el flujo de descarga, caché y primera ejecución
  • También presenta flujos de optimización on-device para visión, lenguaje y caché de estado con ejemplos de SAM 3, Qwen y Transformer

El papel de Core AI

  • Core AI es un nuevo conjunto de tecnologías para la ejecución de IA on-device en todo el ecosistema de plataformas de Apple
    • Compatible con iOS 27.0+ Beta, iPadOS 27.0+ Beta, macOS 27.0+ Beta, tvOS 27.0+ Beta, visionOS 27.0+ Beta y watchOS 27.0+ Beta
    • Ofrece una arquitectura para ejecutar inferencia de IA de alto rendimiento dentro de la app sin enviar los datos del usuario fuera del dispositivo
  • Core AI no es solo una API de ejecución, sino que cubre desde la preparación del modelo hasta su integración en la app
    • Ofrece optimización de modelos, conversión desde PyTorch, generación de .aimodel, depuración, profiling en Xcode y precompilación
    • Para modelos que no son redes neuronales, como decision tree o tabular feature engineering, corresponde usar Core ML

Flujo de desarrollo: de PyTorch a una app en Swift

  • Core AI conecta el workflow de PyTorch existente con el flujo de despliegue en Apple silicon
    • Convierte un modelo de PyTorch en un exported program con torch.export
    • Genera un .aimodel con TorchConverter de Core AI PyTorch Extensions
    • Aplica compresión y optimización para Apple silicon con Core AI Optimization
  • En la app Swift, la nueva API de Core AI Framework permite cargar el modelo y ejecutar inferencia
    • AIModel carga archivos .aimodel e inspecciona sus funciones de inferencia
    • InferenceFunction es un único grafo computacional ejecutable
    • NDArray es el tipo que contiene datos multidimensionales de entrada y salida
    • La estructura consiste en pasar entradas NDArray con la llamada run y recibir el resultado de la inferencia
  • En Xcode se pueden inspeccionar directamente los archivos .aimodel
    • Se puede revisar tamaño del modelo, distribución de operaciones, metadata y firmas de funciones
    • Las dimensiones dynamic shape se muestran como ?

Optimización de rendimiento: state, cache y memory layout

  • En estructuras como los modelos Transformer, donde la secuencia de entrada se va alargando, el tiempo de inferencia puede crecer progresivamente
    • En el ejemplo de Snake, al ejecutar ambas serpientes como modelos de IA, el juego se vuelve más lento con el tiempo
    • En Core AI Instruments se observa que la sección de inferencia se va haciendo cada vez más larga
  • Core AI permite implementar estructuras como key/value cache usando state
    • El estado es entrada del modelo, se lee durante la inferencia y se actualiza in-place
    • Las key/value de pasos previos se guardan en caché sin necesidad de recalcularlas
    • Así, no es necesario volver a pasar todo el historial del juego como entrada cada vez
  • Del lado de Swift, se pasa una colección de vistas mutables al argumento states de InferenceFunction.run
    • El modelo actualizado mantiene una velocidad constante incluso con el paso del tiempo
    • En Instruments también aumenta mucho más lentamente la latencia de inferencia
  • Core AI también ofrece controles de memoria para reducir el overhead del loop de inferencia
    • Se puede revisar el memory layout óptimo de NDArray y asignar memoria con esa estructura
    • Se pueden preasignar salidas para evitar nuevas asignaciones durante la inferencia
    • Se pueden encadenar varias funciones de inferencia usando valores asíncronos

Despliegue de modelos: descarga, specialization y precompilación

  • Los modelos de Core AI son una representación fuente que puede ejecutarse en todos los dispositivos Apple, pero antes de correr requieren specialization para cada dispositivo
    • Al cargar el modelo, se revisa si ya existe un resultado specialized en caché
    • Si no existe, se genera un artifact de ejecución ajustado al dispositivo y a la versión del sistema operativo
  • En modelos grandes, la specialization puede tardar, así que es importante no colocarla en medio de la interacción del usuario
    • En el ejemplo de SAM 3, en la primera ejecución aparece un spinner durante bastante tiempo por la carga del modelo y un gran evento de specialization
    • Se propone un flujo donde el modelo se descarga con Background Assets solo cuando el usuario decide probar la función desde una pantalla de introducción
  • Con el comando coreai-build se puede adelantar parte de la compilación en la máquina de desarrollo
    • Genera un compiled model dirigido a una arquitectura específica de dispositivo
    • Aun así, el dispositivo del usuario necesita specialization, pero el trabajo restante se reduce y el tiempo de preparación es menor
  • AIModelCache permite controlar programáticamente la caché del modelo
    • Eliminar elementos innecesarios
    • Controlar políticas de retención
    • Compartir caché entre varias apps del mismo app group

Optimización y depuración de modelos

  • Core AI Optimization ofrece compresión de modelos y funciones de cuantización
    • Soporta compresión de pesos INT4, INT8, FP4 y FP8
    • Proporciona APIs de cuantización usando datos de calibration o quantization aware training
  • En el ejemplo de SAM 3, el asset base de 32 bits superaba los 3 GB y, tras compresión a 4 bits, quedó en unos 430 MB
    • Al aplicar compresión agresiva a todas las capas, una flor parcialmente oculta dejó de detectarse
    • Solo con la salida era difícil identificar qué capa estaba causando el problema
  • Core AI Debugger compara los valores internos del modelo convertido con los del modelo original en PyTorch
    • Visualiza la estructura del modelo como un grafo
    • Permite inspeccionar valores de tensores intermedios
    • Permite rastrear hasta líneas específicas del código fuente en Python
    • Marca operaciones con grandes diferencias según PSNR
  • En la comparación de SAM 3, la mayoría de los sync points con bajo PSNR aparecieron en el detector decoder
    • El bloque detector representa solo el 4% de los parámetros totales, por lo que la ganancia de compresión es pequeña
    • Al excluir el detector de la cuantización, se volvieron a detectar todas las flores y se recuperó la calidad baseline

Core AI Models y APIs de alto nivel

  • El repositorio Core AI Models ofrece modelos populares y recetas de exportación que pueden convertirse y optimizarse para apps
    • Permite encontrar modelos de la familia SAM 3 y Qwen, y convertirlos a modelos de Core AI
    • Los paquetes Swift abstraen el preprocesamiento y posprocesamiento específicos de cada modelo
  • Un modelo de segmentación como SAM 3 puede usarse con CoreAIImageSegmenter
    • Segmenta objetos mediante prompts de texto
    • Permite extraer masks con una API de Swift sin manipular directamente tensor shapes en crudo
  • Un modelo de lenguaje como Qwen puede cargarse con CoreAILanguageModel
    • Abstrae asset loading, engine creation y tokenizer setup
    • Puede usarse conectado a LanguageModelSession de FoundationModels
    • Permite respuestas en streaming y salida estructurada basada en @Generable

Puntos que los desarrolladores deberían observar

  • Core AI abarca más que una simple “API para ejecutar modelos en una app”: es un sistema de despliegue de IA on-device
    • Incluye el flujo para convertir modelos de PyTorch en .aimodel para Apple silicon
    • Incluye APIs para ejecutar modelos de forma segura y eficiente en apps Swift
    • Incluye diagnóstico de rendimiento y precisión con Xcode, Instruments y Debugger
  • En el diseño de la app, más que el modelo en sí, el proceso de preparación tiene un gran impacto en la experiencia de usuario
    • Hay que decidir si el modelo se incluye dentro de la app o si se descarga con Background Assets
    • Hay que diseñar cómo mostrar la descarga y la specialization en la primera ejecución
    • La política de caché y la estrategia de precompilación se conectan directamente con la usabilidad de modelos grandes
  • Core AI propone un flujo de desarrollo para manejar on-device en plataformas Apple modelos de visión, modelos de lenguaje y modelos basados en Transformer
    • Con el ejemplo de SAM 3 muestra el flujo de compresión, separación y depuración de un modelo de segmentación
    • Con el ejemplo de Qwen muestra cómo conectar un modelo de lenguaje personalizado con la API de Foundation Models
    • Con el ejemplo de Snake Transformer muestra la optimización de key/value cache basada en state

Enlaces de referencia

1 comentarios

 
GN⁺ 5 시간 전
Comentarios de Hacker News
  • Me entusiasma más la próxima actualización de Foundation Models en el dispositivo: https://developer.apple.com/documentation/updates/foundation...
    Aún no hay mucha información.
    Aunque como mantengo https://github.com/Arthur-Ficial/apfel, puede que esté sesgado.

    • Me pregunto si ya viste que agregaron la herramienta fm. La mencionaron en el Platforms State of the Union.
      Al ejecutarla, arroja algo así: https://gist.github.com/robgough/7893602895e7580117475076198...
    • De acuerdo. La idea de incorporar un modelo en el dispositivo utilizable en todo el sistema y en toda la plataforma como parte central de la API del sistema operativo resulta muy atractiva.
      Normalmente prefiero que el software esté más fragmentado, pero en el caso de Apple hay muchas funciones integradas que me gustan.
      Me atrae especialmente que el software pueda saber que “esta plataforma tiene este modelo” y usarlo para muchas tareas pequeñas, y cada vez más grandes, de IA generativa.
    • Apfel se ve útil. Llevo casi un año experimentando con Apple Foundation Models, y parece aprovechable para aplicaciones embebidas.
      También estoy profundizando más en herramientas locales de programación tipo agente, empezando con little-coder --model ollama/gemma4:12b-it-qat.
      Incluso hice un pequeño libro gratuito que puede ahorrar unos minutos de configuración: https://leanpub.com/read/local-coding-agents
      Me molesta bastante la exageración del crecimiento de la IA centrada en los hiperescaladores, sobre todo por el costo ambiental y social de los centros de datos, así que apoyo cualquier intento de impulsar la IA local y privada.
    • Me sorprende que Apple no haya adoptado la idea de poner en Core AI un endpoint compatible con OpenAPI, aunque fuera al menos como herramienta de prueba.
      Ahora que ofrecen compatibilidad con MCP, también quisiera saber más de la estrategia de contenerización/seatbelt.
      Todavía no he visto noticias sobre cómo se usa Darwin dentro del sistema de contenedores de Apple.
      Apfel es un proyecto genial, y fue la única razón por la que me dieron ganas de actualizar a Tahoe.
  • Videos de WWDC 2026 Core AI
    Meet Core AI - https://developer.apple.com/videos/play/wwdc2026/324/
    Dive into Core AI model authoring and optimization - https://developer.apple.com/videos/play/wwdc2026/325/
    Integrate on-device AI models into your app using Core AI - https://developer.apple.com/videos/play/wwdc2026/326/

  • Esto parece una nueva forma de convertir modelos de PyTorch a un formato que corre en CPU, GPU y Apple Neural Engine (ANE) [0].
    Me pregunto si reemplaza por completo a la API existente, Core ML [1].
    [0]: https://apple.github.io/coreai-optimization/
    [1]: https://developer.apple.com/documentation/coreml/

    • Sí. Según la documentación de Core AI, si una app usa tipos de modelo que no son redes neuronales, como árboles de decisión o ingeniería de características tabulares, entonces hay que ver Core ML.
    • Es bastante interesante, pero por ejemplo me pregunto cómo saldrá el rendimiento frente a la forma existente de cargar y usar modelos optimizados para Metal en algo como llama.cpp.
      unsloth es un buen ejemplo de hacer este tipo de trabajo en una modalidad “con todo incluido”.
    • Parece que quiere reemplazar a Core ML, pero por ahora me resulta más confusa la relación entre Core AI, Core ML, MLX y coremltools.
      Apple debería explicar mejor hasta dónde llegan las ventajas, desventajas y equivalencias funcionales de cada uno.
    • Como requiere OS 27 o superior, Core ML sigue siendo útil por la compatibilidad hacia atrás.
  • Dicen que darán acceso gratuito a modelos de nivel servidor a apps con menos de 2 millones de descargas, con las mismas garantías de privacidad.
    Ojalá con el tiempo se amplíe a todas las apps. Habrá limitaciones de hardware y costo, pero parece que las empresas desarrolladoras más grandes podrían pagar el costo.
    https://developer.apple.com/private-cloud-compute/

    • Por la mención de Apple Intelligence Extensions, parece que por ahora no lo van a ampliar mucho, y en cambio permitirán que los desarrolladores se integren con otros proveedores donde el usuario ya tenga una cuenta.
  • El futuro de la IA claramente es local, y últimamente lo describen como “tokens infinitos”
    Una MacBook Pro con M1 también puede hacerlo, y una RTX 3090 también
    No hace falta pagar cientos de dólares al mes, y a los demás les pasa lo mismo

    • En los años 80, también se pensaba que el futuro de la computación claramente era local. Eran las computadoras domésticas, las PC, las Mac y los servidores de oficina (Novell, y después Windows NT con compartición de disco)
      40 años después, volvimos a una infraestructura centralizada más parecida a una versión moderna de las terminales tontas
      El futuro de la IA probablemente también termine yendo por ahí. Lo más probable es que oscile entre lo local y lo centralizado
      Aun así, si la gente puede ganar dinero vendiendo cosas que corren en local, la centralización parece generar más poder y más dinero
    • Si son “tokens infinitos” limitados a 10 tokens por segundo, eso son 26 millones de tokens al mes
    • El dinero de verdad está en escribir código alrededor del modelo para hacerlo eficiente en tareas especializadas
      Los usuarios generales quieren modelos de propósito general, así que las apps de chat con IA van a seguir existiendo
      La mayoría de los programas pueden beneficiarse de una IA especializada que corra en local, y hay muchísimos más programas que usuarios
  • Parece que Apple también está trabajando del lado de las activaciones. Hasta donde sé, es w4a8, w4a16
    Si lo logran bien, y eso es un gran supuesto, considerando el alcance de mercado de Apple, podrían influir bastante en cómo se entrenan y distribuyen los modelos de menos de 100 mil millones de parámetros
    El uso principal será on-device, y en la mayoría de los casos probablemente más en macOS que en iOS

  • Todavía no he visto que se destaque mucho en ningún lado, pero la inferencia distribuida entre Macs es interesante. Incluye JACCL sobre Thunderbolt 5, mlx_lm.server compatible con OpenAI y ejecución tipo agente en Mac
    Apple mantiene MLX (importación directa de pesos) separado de Foundation Models / Core AI

  • Por esto las empresas de IA se están apresurando a salir a bolsa
    Para fines del próximo año, la mayor parte de la IA se va a ejecutar directamente en el dispositivo
    No tienen foso defensivo, llegaron al límite de la escalabilidad, gran parte de lo que parece magia puede destilarse a modelos más pequeños, y ellos lo saben

    • Los modelos de Qwen de la clase de 30 mil millones en realidad ya son suficientemente utilizables si tienes una máquina con suficiente ancho de banda de memoria como para correrlos a 30~90 tokens por segundo
      Que Qwen haya dejado de lanzar modelos de la clase de 120 mil millones es muy revelador
      Dentro de 10 años, o quizá dentro de 3, alguien va a sacar un modelo de 256 mil millones, nivel Opus 4.5, que se pueda correr en local
      Ahora mismo nuestros ingenieros están gastando unos 800 dólares al mes en tokens de Opus, y con esa proporción el periodo de recuperación de inversión para un LLM local es de unos 10 meses
    • No sé si de verdad ya llegamos al límite de la escalabilidad
      Por desgracia, los modelos más grandes todavía parecen seguir siendo mejores
    • En el área de programación, parece que van a vender modelos de 35 mil millones, 70 mil millones y 150 mil millones por un pago único de cientos o miles de dólares, y dar actualizaciones mensuales o bimestrales entrenadas con nueva documentación y repositorios de código durante un año
    • Viva, se acabó su control estrangulador. ¡Viva la revolución!
    • Solo quiero un modelo pequeñísimo corriendo en el dispositivo. Por ejemplo, algo que sepa que en el autocompletado quiero poner “I'll be right back” y no “I'll be right Brian”
      Ahora mismo esa es mi máxima prioridad en IA. Por favor, Apple
  • Me pregunto si Linux tiene algo así
    Por ejemplo, si eres desarrollador de aplicaciones, ¿podrías asumir que existe algo como GNU Core AI cuando el kernel está por encima de cierta versión?

    • En plataformas que no son Apple, normalmente tienes que preocuparte por tantos frameworks de IA como la cantidad de proveedores de silicio que debes soportar, más al menos dos
      Apple ahora también parece haber llegado a ese punto entre Core ML, MLX y Core AI
      No he visto señales de que el problema de fragmentación de frameworks vaya a desaparecer pronto
      NVIDIA quiere que todo el mundo haga entrenamiento e inferencia con CUDA y trata de negar que las NPU sean útiles
      Cada fabricante que hace NPUs tiene su propia arquitectura y su framework separado, adaptado a sus limitaciones heredadas de hardware diseñado antes de los LLM. La mayoría también tiene otro framework apuntado a GPU
      Los proveedores de sistemas operativos también suelen tener uno o dos frameworks que quieren que uses en vez de los frameworks específicos de hardware
    • En la práctica, llama.cpp cumple ese papel. Puedes enlazarlo o usar una API de red
    • No. Pero Red Hat e IBM están haciendo algo así para sus propias distribuciones
    • Están onnxruntime, llama.cpp y, más específicamente, ggml; iree.dev también lo está intentando
  • Me pregunto si esto significa que puedes ejecutar en el ANE cualquier cosa que quieras
    La última vez que lo intenté, parecía que solo se podía usar para funciones propias de Apple como Face ID

    • Si convertías el modelo a Core ML, eso ya se podía hacer
      Lo que no podía usar el ANE en absoluto era MLX
    • Llevan años haciéndolo así con Core ML