1 pontos por GN⁺ 5 시간 전 | 1 comentários | Compartilhar no WhatsApp
  • Core AI é um novo framework para executar, otimizar e implantar modelos de IA dentro de apps no Apple silicon
  • Usa CPU, GPU e o Neural Engine, e permite integrar inferência de .aimodel ao app com APIs em Swift
  • Converte modelos PyTorch em modelos Core AI e fornece uma cadeia de ferramentas para compressão, depuração e pré-compilação
  • Modelos grandes exigem specialization antes da execução, então é importante projetar bem o fluxo de download, cache e primeira execução
  • Também apresenta fluxos de otimização on-device para visão, linguagem e cache de estado com exemplos de SAM 3, Qwen e Transformer

Papel do Core AI

  • O Core AI é um novo conjunto de tecnologias para execução de IA on-device em toda a plataforma Apple
    • Suporta iOS 27.0+ Beta, iPadOS 27.0+ Beta, macOS 27.0+ Beta, tvOS 27.0+ Beta, visionOS 27.0+ Beta e watchOS 27.0+ Beta
    • Oferece uma arquitetura para executar inferência de IA de alto desempenho dentro do app sem enviar dados do usuário para fora do dispositivo
  • O Core AI não é apenas uma API de execução, mas cobre desde a preparação do modelo até a integração no app
    • Oferece otimização de modelos, conversão de PyTorch, geração de .aimodel, depuração, profiling no Xcode e pré-compilação
    • Para modelos que não são redes neurais, como decision tree ou modelos tabulares com feature engineering, o indicado é usar Core ML

Fluxo de desenvolvimento: de PyTorch até apps em Swift

  • O Core AI conecta o workflow do PyTorch existente ao fluxo de implantação no Apple silicon
    • Usa torch.export para converter o modelo PyTorch em um exported program
    • Usa TorchConverter das Core AI PyTorch Extensions para gerar um .aimodel
    • Aplica compressão e otimizações para Apple silicon com Core AI Optimization
  • Em apps Swift, a nova API do Core AI Framework é usada para carregar modelos e executar inferência
    • AIModel carrega arquivos .aimodel e inspeciona funções de inferência
    • InferenceFunction é um único grafo computacional executável
    • NDArray é o tipo que armazena dados multidimensionais de entrada e saída
    • A estrutura usa chamadas run para enviar entradas NDArray e receber os resultados da inferência
  • No Xcode, é possível inspecionar diretamente arquivos .aimodel
    • Dá para verificar tamanho do modelo, distribuição de operações, metadados e assinaturas de funções
    • Dimensões de shape dinâmico aparecem como ?

Otimização de desempenho: state, cache e layout de memória

  • Em estruturas como modelos Transformer, nas quais a sequência de entrada cresce, o tempo de inferência pode aumentar progressivamente
    • No exemplo do Snake, ao executar as duas cobras totalmente por modelos de IA, o jogo foi ficando mais lento com o tempo
    • No Core AI Instruments, foi possível ver que o trecho de inferência ficava cada vez mais longo
  • O Core AI permite implementar estruturas como key/value cache usando state
    • O estado é uma entrada do modelo, lida durante a inferência e atualizada in-place
    • Chaves e valores da etapa anterior são armazenados em cache sem precisar recalcular
    • Isso evita ter de reenviar todo o histórico do jogo como entrada a cada vez
  • No lado do Swift, passa-se uma coleção de mutable views no argumento states de InferenceFunction.run
    • O modelo atualizado mantém velocidade estável mesmo com o passar do tempo
    • No Instruments, o aumento da latência de inferência também fica muito mais lento
  • O Core AI também oferece controle de memória para reduzir o overhead do loop de inferência
    • É possível verificar o layout de memória ideal de NDArray e alocar nesse formato
    • Também é possível pré-alocar valores de saída para evitar novas alocações durante a inferência
    • Valores assíncronos podem ser usados para fazer pipeline entre várias funções de inferência

Implantação do modelo: download, specialization e pré-compilação

  • Modelos Core AI são uma representação-fonte que pode rodar em todos os dispositivos Apple, mas precisam de specialization por dispositivo antes da execução real
    • Ao carregar o modelo, o sistema verifica se já existe no cache um resultado especializado
    • Se não existir, gera um artifact de execução adequado ao dispositivo e à versão do sistema operacional
  • Como a specialization de modelos grandes pode levar tempo, é importante não colocá-la no meio da interação do usuário
    • No exemplo do SAM 3, na primeira execução o spinner ficou visível por bastante tempo por causa do carregamento do modelo e de um grande evento de specialization
    • Foi proposto um fluxo em que o modelo é baixado com Background Assets apenas quando o usuário decide testar o recurso na tela de apresentação
  • Com o comando coreai-build, é possível realizar parte da compilação antecipadamente na máquina de desenvolvimento
    • Gera um compiled model para uma arquitetura de dispositivo específica
    • A specialization ainda é necessária no dispositivo do usuário, mas o trabalho restante diminui e o tempo de preparação fica menor
  • Com AIModelCache, é possível controlar o cache de modelos por código
    • Remover itens desnecessários
    • Controlar políticas de retenção
    • Compartilhar cache entre vários apps do mesmo app group

Otimização e depuração de modelos

  • O Core AI Optimization oferece compressão de modelos e quantização
    • Suporta compressão de pesos em INT4, INT8, FP4 e FP8
    • Fornece APIs de quantização com calibration data ou quantization aware training
  • No exemplo do SAM 3, o asset baseline em 32 bits tinha mais de 3 GB, e após compressão para 4 bits ficou em cerca de 430 MB
    • Ao aplicar compressão agressiva em todas as camadas, uma flor ocluída deixou de ser detectada
    • Só olhando a saída, era difícil descobrir qual camada causava o problema
  • O Core AI Debugger compara valores internos do modelo convertido com os do modelo PyTorch original
    • Visualiza a estrutura do modelo como um grafo
    • Permite inspecionar valores de tensores intermediários
    • Permite rastrear até linhas específicas do código-fonte em Python
    • Destaca operações com grandes diferenças com base em PSNR
  • Na comparação do SAM 3, a maior parte dos sync points com PSNR baixo apareceu no detector decoder
    • O bloco detector representa apenas 4% dos parâmetros totais, então o ganho de compressão ali é pequeno
    • Ao excluir o detector da quantização, todas as flores voltaram a ser detectadas e a qualidade baseline foi recuperada

Core AI Models e APIs de alto nível

  • O repositório Core AI Models fornece modelos populares e export recipes que podem ser convertidos e otimizados para o app
    • É possível encontrar modelos da família SAM 3 e Qwen e convertê-los para Core AI
    • Pacotes Swift abstraem o pré-processamento e o pós-processamento de cada modelo
  • Modelos de segmentação como o SAM 3 podem ser usados com CoreAIImageSegmenter
    • Segmenta objetos com prompts de texto
    • Permite extrair máscaras com APIs Swift sem lidar diretamente com raw tensor shapes
  • Modelos de linguagem como Qwen podem ser carregados com CoreAILanguageModel
    • Abstrai asset loading, engine creation e tokenizer setup
    • Pode ser usado em conjunto com LanguageModelSession de FoundationModels
    • Permite usar respostas em streaming e saída estruturada baseada em @Generable

Pontos que merecem atenção dos desenvolvedores

  • O Core AI é um sistema de implantação de IA on-device mais amplo do que uma simples “API para executar modelos no app”
    • Inclui o fluxo para converter modelos PyTorch em .aimodel para Apple silicon
    • Oferece APIs para executar modelos com segurança e eficiência em apps Swift
    • Permite diagnosticar desempenho e precisão com Xcode, Instruments e Debugger
  • No projeto do app, mais do que o modelo em si, o processo de preparação tem grande impacto na experiência do usuário
    • É preciso decidir se o modelo será empacotado no app ou baixado via Background Assets
    • Também é preciso projetar como mostrar download e specialization na primeira execução
    • Política de cache e estratégia de pré-compilação afetam diretamente a usabilidade de modelos grandes
  • O Core AI apresenta um fluxo de desenvolvimento para lidar on-device com modelos de visão, linguagem e modelos baseados em Transformer nas plataformas Apple
    • O exemplo do SAM 3 mostra o fluxo de compressão, separação e depuração de um modelo de segmentação
    • O exemplo do Qwen mostra a integração entre um modelo de linguagem customizado e a API Foundation Models
    • O exemplo do Snake Transformer mostra a otimização de key/value cache com state

Links de referência

1 comentários

 
GN⁺ 5 시간 전
Opiniões do Hacker News
  • Estou mais animado com a atualização de Foundation Models on-device que deve sair em breve: https://developer.apple.com/documentation/updates/foundation...
    Ainda não há muita informação
    Mas talvez eu seja tendencioso, já que mantenho https://github.com/Arthur-Ficial/apfel

    • Fico curioso se vocês viram que adicionaram a ferramenta fm. Ela foi mencionada no Platforms State of the Union
      Ao executar, o resultado é algo assim: https://gist.github.com/robgough/7893602895e7580117475076198...
    • Concordo. A ideia de ter um modelo on-device utilizável em todo o sistema e em toda a plataforma como parte central da API do sistema operacional é muito atraente
      Normalmente prefiro software mais fragmentado, mas no caso da Apple há muitos recursos nativos de que gosto
      O que mais me atrai é que o software poderá saber que “esta plataforma tem este modelo” e usá-lo em várias tarefas de IA generativa pequenas, e cada vez maiores
    • O Apfel parece útil. Venho experimentando os Apple Foundation Models há quase um ano, e parecem viáveis para aplicações embarcadas
      Também estou me aprofundando mais em ferramentas locais de programação em estilo agente, começando com little-coder --model ollama/gemma4:12b-it-qat
      Até fiz um pequeno livro gratuito que pode economizar alguns minutos de configuração: https://leanpub.com/read/local-coding-agents
      Fico bastante irritado com o exagero em torno do crescimento da IA centrado em hyperscalers, especialmente com os custos ambientais e sociais dos datacenters, então apoio totalmente qualquer iniciativa que promova IA local e privada
    • Me surpreende que a Apple aparentemente não tenha adotado a ideia de colocar um endpoint compatível com OpenAPI no Core AI, nem que fosse ao menos como ferramenta de teste
      Agora que oferecem suporte a MCP, também queria ouvir mais sobre a estratégia de conteinerização/seatbelt
      Ainda não vi nada sobre como o Darwin está sendo usado dentro do sistema de contêineres da Apple
      Apfel é um projeto muito legal, e foi o único motivo que me fez querer atualizar para Tahoe
  • Vídeos do 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/

  • Isso parece ser uma nova forma de converter modelos PyTorch para um formato que roda em CPU, GPU e Apple Neural Engine (ANE) [0]
    Fico me perguntando se isso substitui totalmente a API existente, Core ML [1]
    [0]: https://apple.github.io/coreai-optimization/
    [1]: https://developer.apple.com/documentation/coreml/

    • Sim. Segundo a documentação do Core AI, se o app usa tipos de modelo que não sejam redes neurais, como árvores de decisão ou engenharia de atributos tabulares, ele deve usar Core ML
    • É bem interessante, mas eu gostaria de saber como fica o desempenho em comparação com a abordagem atual, por exemplo carregar e usar um modelo otimizado para Metal em algo como o llama.cpp
      O unsloth é um bom exemplo de algo que faz esse tipo de trabalho em um formato “batteries included”
    • Parece que querem substituir o Core ML, mas no momento a relação entre Core AI, Core ML, MLX e coremltools está ainda mais confusa
      A Apple precisa explicar melhor até onde vão os prós e contras e a equivalência funcional de cada um
    • Como exige OS 27 ou superior, o Core ML continua útil por causa da compatibilidade retroativa
  • Dizem que apps com menos de 2 milhões de downloads terão acesso gratuito a modelos de nível servidor, com as mesmas garantias de privacidade
    Seria bom se isso se expandisse para todos os apps com o tempo. Deve haver limitações de hardware/custo, mas desenvolvedores maiores provavelmente poderiam pagar pelo custo
    https://developer.apple.com/private-cloud-compute/

    • Pela menção a Apple Intelligence Extensions, parece que por enquanto eles não vão ampliar muito isso, e em vez disso permitirão que desenvolvedores integrem com outros provedores nos quais o usuário já tenha uma conta
  • O futuro da IA é claramente local, e recentemente isso tem sido descrito como “tokens infinitos”
    Um MacBook Pro com M1 consegue fazer isso, e uma RTX 3090 também
    Não há necessidade de pagar centenas de dólares por mês, e o mesmo vale para outras pessoas

    • Nos anos 1980, o futuro da computação também era claramente local. Eram coisas como computadores domésticos, PCs, Macs e servidores de escritório (Novell, depois Windows NT com compartilhamento de disco)
      Depois de 40 anos, voltamos a uma infraestrutura centralizada mais próxima de terminais inteligentes modernos
      O futuro da IA também vai acabar seguindo esse caminho. Provavelmente vai oscilar entre local e centralizado
      Ainda assim, se for possível ganhar dinheiro vendendo coisas que as pessoas executam localmente, a centralização parece gerar mais poder e mais dinheiro
    • Se “tokens infinitos” significam um limite de 10 tokens por segundo, isso dá 26 milhões de tokens por mês
    • O dinheiro de verdade está em escrever código ao redor do modelo para torná-lo eficiente em tarefas especializadas
      Usuários comuns querem modelos de uso geral, então apps de chat com IA vão continuar existindo
      A maioria dos programas pode se beneficiar de uma IA especializada que rode localmente, e há muito mais programas do que usuários
  • A Apple também parece estar trabalhando no lado das ativações. Pelo que sei, é w4a8, w4a16
    Se conseguirem fazer isso direito, e essa é uma grande suposição, considerando o alcance de mercado da Apple, isso pode influenciar bastante a forma como modelos com menos de 100 bilhões de parâmetros serão treinados e distribuídos
    O principal caso de uso será on-device, e provavelmente mais no macOS do que no iOS

  • Ainda não vi isso ser muito destacado em lugar nenhum, mas a inferência distribuída entre Macs é interessante. Inclui JACCL sobre Thunderbolt 5, mlx_lm.server compatível com OpenAI e execução no estilo agente em Macs
    A Apple está mantendo o MLX (importação direta de pesos) separado de Foundation Models / Core AI

  • É por isso que as empresas de IA estão correndo para abrir capital
    Até o fim do ano que vem, a maior parte da IA será executada diretamente nos dispositivos
    Elas não têm fosso defensável, chegaram ao limite de escala, e a maior parte do que parece mágico pode ser destilada em modelos menores, e elas sabem disso

    • Um modelo da faixa de 30 bilhões do Qwen já é realmente utilizável, desde que você tenha uma máquina com largura de banda de memória suficiente para rodá-lo a 30~90 tokens por segundo
      O fato de o Qwen ter parado de lançar modelos na faixa de 120 bilhões é muito revelador
      Dentro de 10 anos, talvez em 3, alguém vai lançar localmente um modelo de 256 bilhões no nível do Opus 4.5
      Hoje nossos engenheiros gastam algo como 800 dólares por mês em tokens do Opus, e nessa proporção o prazo de retorno do investimento em um LLM local é de cerca de 10 meses
    • Não sei se realmente chegamos ao limite de escala
      Infelizmente, modelos maiores ainda parecem continuar sendo melhores
    • No campo de código, parece possível vender modelos de 35 bilhões, 70 bilhões e 150 bilhões por algumas centenas a alguns milhares de dólares pagos adiantado, e fornecer por um ano atualizações mensais ou bimestrais treinadas com nova documentação e novos repositórios de código
    • Viva, o domínio por estrangulamento deles acabou. Viva a revolução!
    • Eu só quero um modelo bem pequeno rodando no dispositivo. Por exemplo, algo que saiba que no autocompletar eu quero escrever “I'll be right back”, e não “I'll be right Brian”
      Esse é o meu pedido número um para IA agora. Por favor, Apple
  • Fico me perguntando se existe algo assim no Linux também
    Por exemplo, um desenvolvedor de aplicações poderia assumir que, acima de uma certa versão do kernel, existe algo como um GNU Core AI?

    • Em plataformas que não são da Apple, normalmente é preciso se preocupar com tantos frameworks de IA quanto o número de fabricantes de silício suportados, mais uns dois
      A Apple agora também parece ter chegado a esse ponto, entre Core ML, MLX e Core AI
      Não vi nenhum sinal de que o problema da fragmentação de frameworks vá desaparecer tão cedo
      A NVIDIA quer que todo mundo faça treinamento e inferência em CUDA, e tenta negar que NPUs sejam úteis
      Cada fabricante que faz NPU tem sua própria arquitetura e um framework separado adaptado às limitações herdadas de hardware projetado antes dos LLMs. A maioria também tem outro framework voltado para GPU
      Fabricantes de sistemas operacionais também costumam ter um ou dois frameworks que gostariam que fossem usados no lugar dos frameworks específicos de hardware
    • Na prática, llama.cpp cumpre esse papel. Dá para linkar e usar, ou então usar uma API de rede
    • Não. Mas a Red Hat e a IBM estão fazendo algo assim para suas próprias distribuições
    • Existe onnxruntime, llama.cpp, mais especificamente ggml, e o iree.dev também está tentando
  • Fico me perguntando se isso significa poder executar qualquer coisa que se queira na ANE
    Da última vez que tentei, parecia que isso só podia ser usado em recursos primários da Apple, como o Face ID

    • Se você converter o modelo para Core ML, isso já era possível
      O que não dava para usar a ANE de jeito nenhum era o MLX
    • Isso já vem sendo feito com Core ML há anos