← Todos os Posts

A Apple vai abrir o código do framework Foundation Models

A Apple se comprometeu a abrir o código do framework Foundation Models neste verão, então as mesmas APIs Swift que você chama de um app podem rodar no seu servidor também.1 No Platforms State of the Union, a Apple apresentou a mudança de forma direta: “Além disso, estamos fazendo algo grande. Mais tarde neste verão, o framework terá seu código aberto. Então as mesmas APIs Swift que você usa no seu app agora também podem rodar no seu servidor, dando a você um fluxo de trabalho de IA completo de ponta a ponta em qualquer lugar onde você implante Swift.”1 Junto a esse anúncio, um pacote Swift complementar chegou ao GitHub na mesma semana, trazendo uma API de Skills, ferramentas de gerenciamento de histórico e um adaptador de modelo que aponta o modelo de programação do Foundation Models para qualquer endpoint de chat-completions.2 O framework em si continua sendo uma promessa para o verão; o pacote de utilidades já está disponível agora.

Watch on Apple Developer ↗

O anúncio do código aberto aos 12:44.

TL;DR

  • A Apple vai abrir o código do framework Foundation Models “mais tarde neste verão”, então as mesmas APIs Swift rodam em um servidor e dão a você “um fluxo de trabalho de IA completo de ponta a ponta em qualquer lugar onde você implante Swift.”1 O framework não é de código aberto hoje.
  • Um pacote Swift de código aberto separado, FoundationModelsUtilities, já está no GitHub sob a licença Apache-2.0, com suporte às plataformas Apple e a algumas distribuições Linux, como o Ubuntu.2
  • O pacote traz uma API de Skills: um tipo Skills que está em conformidade com DynamicInstructions, construído com um result builder, que injeta instruções específicas da tarefa em uma transcrição de sessão no momento certo (just-in-time) para evitar a poluição de contexto e otimizar o time-to-first-token.2
  • Ele também traz modificadores de perfil para gerenciamento de histórico (descartar chamadas de ferramentas concluídas, janelas deslizantes, sumarização) e um ChatCompletionsLanguageModel que conversa com qualquer servidor que fale a API REST de chat completions.2
  • O pacote é a terceira entrega de skills desta WWDC, depois das skills da toolchain do Xcode e das skills do Game Porting Toolkit, e o repositório descreve seus próprios padrões como “emergentes e experimentais.”2

O framework terá seu código aberto neste verão

A manchete é uma data, não um download. Por volta dos 12:44 do State of the Union, a Apple definiu o cronograma e a consequência em duas frases: “Mais tarde neste verão, o framework terá seu código aberto. Então as mesmas APIs Swift que você usa no seu app agora também podem rodar no seu servidor, dando a você um fluxo de trabalho de IA completo de ponta a ponta em qualquer lugar onde você implante Swift.”1 O framework que você já chama de uma LanguageModelSession no dispositivo se torna algo que você também pode rodar em qualquer lugar onde o Swift rode, incluindo um servidor que você controla.

O que isso compra para você é simetria. A Apple passou este ano ampliando para onde o Foundation Models aponta: o modelo no dispositivo, o Private Cloud Compute e modelos de terceiros como Gemini e Claude, abordados em Foundation Models e Private Cloud Compute. Abrir o código do framework estende esse alcance na outra direção, completamente para fora do dispositivo. Como a sessão colocou: “Você viu como o framework Foundation Models se conecta a modelos de terceiros, ao Private Cloud Compute e ao modelo no dispositivo. Você tem a flexibilidade que precisa para obter o modelo certo para o trabalho.”1 O passo do código aberto significa que um único modelo de programação abrange cliente e servidor, em vez de dois.

Uma ressalva que vale guardar com precisão: o framework ainda não é de código aberto. A Apple disse “mais tarde neste verão”, e a leitura honesta é um compromisso com uma estação anexada, nada lançado hoje. O pacote descrito abaixo é um artefato separado, e confundir os dois exagera o que existe neste momento.

O pacote de utilidades que já está disponível

A parte que você pode clonar hoje é o FoundationModelsUtilities, um pacote Swift de código aberto no GitHub sob a licença Apache-2.0.2 Ele tem suporte às plataformas Apple e a algumas distribuições Linux, como o Ubuntu, o que importa porque prenuncia a direção multiplataforma que o próprio framework toma neste verão.2 Se você quiser testar esse caminho de Swift-no-Ubuntu localmente, basta criar uma container machine: um ambiente Ubuntu persistente no Mac com o seu repositório montado dentro. O repositório descreve seu conteúdo como “padrões emergentes e experimentais”, então trate as APIs como uma prévia de para onde a Apple está se direcionando, e não como um contrato congelado.2

O State of the Union apresentou o pacote diretamente: “estamos introduzindo um novo pacote Swift de código aberto, carregado de ferramentas pré-construídas para ajudar você a começar com conceitos como skills e utilidades para gerenciamento de contexto.”1 A Apple ancorou o exemplo concreto em um app real: “um app de gerenciamento de tarefas como o Tiimo pode usar o pacote para puxar uma skill que adapta seu tom e suas recomendações aos dados do usuário, entregando um resumo personalizado para ajudá-lo a se manter por dentro do seu dia.”1 A mesma passagem nomeou a fundação por baixo: “essas utilidades do pacote de código aberto são criadas com novos blocos de construção fundamentais chamados Dynamic Profiles.”1

Três componentes carregam essa promessa, e cada um mapeia para um problema real em apps Swift agênticos.

Uma API de Skills construída sobre Dynamic Profiles

O primeiro componente é a API de Skills. O pacote define um tipo Skills que está em conformidade com DynamicInstructions e é construído com um result builder, com um tipo SkillActivations que rastreia quais skills estão atualmente ativas.2 Você inicializa uma Skill individual com um prompt ou instruções, e pode marcar uma skill com allowsDeactivation: true quando ela deve ser removível no meio da sessão.2

O propósito é a parte interessante. Uma skill adiciona instruções específicas da tarefa a uma transcrição de LanguageModelSession no momento certo (just-in-time), o que evita que a transcrição se encha de instruções de que um determinado turno não precisa.2 Dois retornos concretos se seguem: a sessão evita a poluição de contexto e otimiza o time-to-first-token, porque uma transcrição mais curta e mais relevante é mais rápida para o modelo processar antes de começar a responder.2 A API de Skills é o mecanismo de injeção just-in-time para instruções, delimitado ao momento em que elas importam.

Os Dynamic Profiles são o que tornam isso possível. Na recapitulação do terceiro dia, Lori Hylan-Cho, Senior Engineering Manager para Swift Intelligence Frameworks, colocou as skills diretamente em cima dessa primitiva: “Então também temos os Dynamic Profiles, que são uma espécie de tecnologia fundamental para coisas de ordem mais alta, como as skills, que também estamos lançando como um pacote, para que as pessoas possam usá-las ou construir suas próprias abstrações, como as skills.”3 A formulação é precisa. A Apple entrega as skills como um pacote, e espera que os desenvolvedores usem esse pacote ou construam suas próprias abstrações sobre a mesma fundação de Dynamic Profiles.

Gerenciamento de histórico como modificadores de perfil

O segundo componente gerencia a outra metade do problema de contexto: uma transcrição que cresce sem limites conforme um loop agêntico roda. O pacote traz modificadores de perfil para o gerenciamento de histórico, e o README nomeia três estratégias.2 Descartar chamadas de ferramentas concluídas remove o vai-e-vem de invocações de ferramentas finalizadas assim que seus resultados não são mais necessários. Estratégias de janela deslizante mantêm uma fatia limitada do histórico recente em vez da transcrição inteira. A sumarização comprime turnos mais antigos em uma forma mais curta sobre a qual o modelo ainda consegue raciocinar.2 Cada uma é um botão no mesmo dial: manter a transcrição informativa sem deixá-la inchar para além do que o modelo consegue processar de forma eficiente.

Um lab da WWDC 2026 detalhou como o modificador de sumarização se comporta. Parafraseado a partir de uma gravação transcrita localmente do WWDC 2026 Coding Intelligence, Machine Learning & AI Group Lab, o painel descreveu verificar o tamanho da transcrição no início de cada prompt e, uma vez que ele ultrapasse um limite definido pelo desenvolvedor, colapsar o histórico mais antigo em uma única entrada sumarizada e continuar a partir dali.6 O painel fez dois pontos que importam para a adoção. O modificador funciona com qualquer backend, não apenas os modelos da Apple, porque qualquer coisa em conformidade com o protocolo de modelo de linguagem herda as utilidades de graça.6 E o painel afirmou um princípio de design que governa todo o pacote: qualquer prompt embutido em uma utilidade, incluindo o prompt de sumarização, tem que ser sobrescrevível pelo desenvolvedor, então o padrão entregue é um ponto de partida que você ajusta, não um comportamento fixo que você aceita.6

Um adaptador de chat-completions, o coadjuvante decisivo

O terceiro componente é o que, de forma silenciosa, faz mais coisa. O ChatCompletionsLanguageModel se comunica com qualquer servidor que fale a API REST de chat completions, com geração guiada opcional.2 A implicação é grande: o modelo de programação do Foundation Models, a sessão, as ferramentas, as instruções, pode apontar para qualquer endpoint de chat-completions, e não apenas para os modelos da Apple.

A combinação natural é uma local. O MLX-LM Server roda no Mac como um servidor HTTP compatível com chat-completions, abordado em Rodando IA Agêntica no Mac com MLX. Conecte o ChatCompletionsLanguageModel a um servidor MLX local e você obtém a superfície da API Foundation Models conduzindo um modelo que roda inteiramente no seu próprio hardware. Aponte-o para um endpoint na nuvem e o mesmo código chama um modelo hospedado. O adaptador é o que transforma “Foundation Models” de um nome para os modelos da Apple em um modelo de programação que você mira para onde quiser.

A tese de qualquer-backend já tem um exemplo nomeado e em produção. A Anthropic publica o ClaudeForFoundationModels, um pacote Apache-2.0 descrito como “suporte do Claude para o Apple Foundation Models”, que coloca o Claude em conformidade com o protocolo de modelo de linguagem do framework para que uma LanguageModelSession o conduza da mesma forma que conduz o modelo no dispositivo da Apple.5 Esse é o padrão de adaptador tornado concreto por um terceiro: um backend ao vivo que você pode clonar hoje e que implementa o protocolo que o framework expõe. A Apple, por sua vez, nomeou integrações nativas para Anthropic, OpenAI e Google no Xcode, e o State of the Union anunciou a parceria com o Google diretamente. A conclusão para o protocolo é a mesma em todos os casos: o framework define a costura, e os backends, da Apple ou de qualquer outra pessoa, a preenchem.

Contagem de tokens e os orçamentos contra os quais você está gerenciando

O gerenciamento de histórico só importa porque os orçamentos são pequenos, e este ano o framework dá a você uma forma precisa de ver quanto de um deles você está gastando. O LanguageModelSession.Response agora carrega uma propriedade usage, nova no iOS 27 (beta), documentada como “Informações sobre quantos tokens foram usados por esta resposta.”4 Você a lê a partir da resposta que já obtém de volta, então a contabilidade de uso vem junto com o trabalho em vez de exigir uma passagem de medição separada.

Um lab da WWDC 2026 adicionou a textura que os docs deixam de fora. Parafraseado a partir de uma gravação transcrita localmente do WWDC 2026 Coding Intelligence, Machine Learning & AI Group Lab, o painel descreveu o response.usage reportando as contagens de tokens de entrada e de saída, quantos tokens foram cacheados e, para um modelo de raciocínio, quantos dos tokens de saída foram para o raciocínio versus a resposta final.6 O painel chamou a contagem de tokens de um recurso muito solicitado, e observou que os símbolos para contar tokens e ler o tamanho de contexto do modelo do sistema chegaram antes, no iOS 26.4, com o response.usage completando o quadro este ano.6

Saber a contagem só ajuda se você souber o teto, e o lab afirmou esses números de forma clara. Parafraseado a partir da mesma gravação, o tamanho de contexto do modelo no dispositivo permanece inalterado em 4096 tokens, e é uma janela compartilhada de entrada-mais-saída: como o painel colocou, cerca de 4.000 tokens de entrada deixam por volta de 96 para a resposta.6 O Private Cloud Compute eleva o teto para 32K, também um orçamento compartilhado entre entrada e saída.6 Os números explicam por que os modificadores de gerenciamento de histórico merecem seu lugar. Em uma janela compartilhada de 4096 tokens, uma transcrição que cresce sem controle não apenas fica mais lenta; ela ocupa o espaço de que a resposta precisa, que é exatamente a falha que as estratégias de descarte, deslizamento e sumarização foram construídas para evitar.

A terceira entrega de skills de uma única WWDC

A Apple entregou skills de três formas distintas nesta WWDC, e o pacote de utilidades é a terceira. A toolchain do Xcode 27 inclui skills de agente para SwiftUI que você extrai com xcrun agent skills export, abordadas em O Xcode 27 traz Agent Skills que você pode exportar para qualquer lugar. O Game Porting Toolkit 4 distribui skills de portabilidade Metal e MetalFX como um plugin do Claude Code a partir de um marketplace do GitHub, abordado em Game Porting Toolkit 4: ports de jogos agênticos no Mac. O pacote de utilidades do Foundation Models adiciona uma terceira forma: uma API de Skill como código de runtime, um tipo Swift que você compõe no seu app em vez de um arquivo markdown que você exporta ou um plugin que você instala.

As três entregas respondem a perguntas diferentes. As skills do Xcode e o plugin do GPTK distribuem a expertise da Apple para qualquer agente que você rode. O pacote de utilidades dá a você os blocos de construção para criar e ativar skills dentro da sua própria sessão, contra os seus próprios dados, com a sua própria lógica de ativação. A Apple está entregando tanto o conhecimento curado quanto a maquinaria para construir o seu próprio, sobre a mesma fundação de Dynamic Profiles que Lori descreveu.3

Principais conclusões

Para desenvolvedores Swift construindo recursos de IA: - Planeje para um único modelo de programação entre cliente e servidor. O framework Foundation Models terá seu código aberto “mais tarde neste verão”, então as APIs Swift que você escreve hoje são as que rodarão no servidor então.1 Trate isso como um compromisso de roadmap, não como uma capacidade atual. - Clone o FoundationModelsUtilities agora para ver uma prévia da API de Skills e dos modificadores de gerenciamento de histórico, mas leia a descrição “emergentes e experimentais” do repositório como um sinal de que a superfície pode mudar.2

Para equipes gerenciando contexto e custo: - Recorra à API de Skills para injetar instruções específicas da tarefa no momento certo (just-in-time), o que reduz a poluição de contexto e melhora o time-to-first-token em vez de carregar antecipadamente cada instrução na transcrição.2 - Aplique os modificadores de gerenciamento de histórico (descartar chamadas de ferramentas concluídas, deslizar uma janela ou sumarizar) para impedir que loops agênticos longos cresçam além do contexto efetivo do modelo.2

Para desenvolvedores rodando modelos locais ou de terceiros: - Use o ChatCompletionsLanguageModel para apontar o modelo de programação do Foundation Models para qualquer endpoint de chat-completions, incluindo um MLX-LM Server local no Mac, para que uma única superfície de API conduza modelos no dispositivo, em servidor local ou na nuvem.2

FAQ

O framework Foundation Models é de código aberto hoje?

Não. Na WWDC 2026, a Apple disse que o framework terá seu código aberto “mais tarde neste verão”, para que as mesmas APIs Swift rodem em um servidor e deem “um fluxo de trabalho de IA completo de ponta a ponta em qualquer lugar onde você implante Swift.”1 Na data do anúncio, isso é um compromisso com um cronograma, não um lançamento publicado. O pacote de utilidades separado no GitHub é o que você pode usar agora.2

O que é o pacote FoundationModelsUtilities?

O FoundationModelsUtilities é um pacote Swift de código aberto no GitHub, licenciado sob Apache-2.0, que tem suporte às plataformas Apple e a algumas distribuições Linux, como o Ubuntu.2 Ele traz uma API de Skills, modificadores de perfil para gerenciamento de histórico e um adaptador ChatCompletionsLanguageModel. O repositório descreve seu conteúdo como “padrões emergentes e experimentais.”2 O pacote é distinto do framework; ele não é o framework tendo seu código aberto.

Como a API de Skills funciona?

O pacote define um tipo Skills em conformidade com DynamicInstructions, construído com um result builder, além de um tipo SkillActivations que rastreia as skills ativas.2 Você inicializa uma Skill com um prompt ou instruções e pode definir allowsDeactivation: true. Uma skill injeta instruções específicas da tarefa em uma transcrição de LanguageModelSession no momento certo (just-in-time), o que evita a poluição de contexto e otimiza o time-to-first-token.2 As skills são construídas sobre os Dynamic Profiles, que a Apple descreve como “uma tecnologia fundamental” para coisas de ordem mais alta, como as skills.3

Posso usar o Foundation Models com um modelo que não seja da Apple?

Sim, por meio do ChatCompletionsLanguageModel do pacote, que se comunica com qualquer servidor que fale a API REST de chat completions, com geração guiada opcional.2 Você pode apontá-lo para um MLX-LM Server local no Mac ou um endpoint na nuvem, para que o modelo de programação do Foundation Models conduza modelos além dos da própria Apple.

Como este pacote se relaciona com as outras skills da Apple na WWDC 2026?

O pacote é a terceira entrega de skills da WWDC. O Xcode 27 inclui skills de SwiftUI que você exporta com xcrun agent skills export (abordado em o post sobre a exportação de agent skills), e o Game Porting Toolkit 4 entrega skills de portabilidade como um plugin do Claude Code (o post sobre o GPTK 4). O pacote de utilidades se diferencia por fornecer uma API de Skill como código Swift de runtime que você compõe no seu próprio app, construído sobre os Dynamic Profiles, para que você possa criar e ativar suas próprias skills.2


O passo do código aberto estende o mesmo alcance que a Apple construiu em direção ao dispositivo este ano: Foundation Models e Private Cloud Compute aborda os caminhos no dispositivo, do Private Cloud Compute e de modelos de terceiros que o framework já abrange. A mesma direção de “Foundation Models para além de um app Swift” aparece em Foundation Models a partir do Python: a CLI fm, onde o mesmo modelo responde a um comando de shell ou a uma LanguageModelSession em Python fora do Xcode. A estratégia de skills percorre toda a WWDC, da toolchain do Xcode em O Xcode 27 traz Agent Skills que você pode exportar para qualquer lugar até a combinação com modelo local em Rodando IA Agêntica no Mac com MLX, onde o MLX-LM Server dá ao ChatCompletionsLanguageModel um endpoint de chat-completions para chamar. O hub completo da série é a Série Apple Ecosystem.

Referências


  1. Apple, WWDC 2026 sessão 102, Platforms State of the Union. Fonte para o compromisso de código aberto (“Later this summer, the framework will be open source. So the same Swift APIs you use in your app can now run on your server too, giving you a complete end-to-end AI workflow anywhere you deploy Swift”), a introdução do pacote (“we’re introducing a new open source Swift package, loaded with pre-built tools to help you get started with concepts like skills and utilities for context management”), o exemplo do Tiimo, a colocação sobre flexibilidade (“You’ve seen how the Foundation Models framework connects to third-party models, Private Cloud Compute, and the on-device model”) e a afirmação de que “these utilities from the open source package are created with new fundamental building blocks called Dynamic Profiles.” 

  2. Apple, foundation-models-utilities. Fonte para o nome do pacote FoundationModelsUtilities, a licença Apache-2.0, o suporte às plataformas Apple e a algumas distribuições Linux, como o Ubuntu, a descrição “emerging and experimental patterns”, a API de Skills (o tipo Skills em conformidade com DynamicInstructions construído com um result builder, o SkillActivations rastreando as skills ativas, objetos Skill individuais inicializados com um prompt ou instruções, o opcional allowsDeactivation: true e a injeção de transcrição just-in-time que evita a poluição de contexto e otimiza o time-to-first-token), os modificadores de perfil para gerenciamento de histórico (descartar chamadas de ferramentas concluídas, estratégias de janela deslizante e sumarização) e o ChatCompletionsLanguageModel que se comunica com qualquer servidor usando a API REST de chat completions com geração guiada opcional. 

  3. Apple, WWDC 2026 sessão 398, Dub Dub Daily: Day 3. Fonte para a entrevista de Lori Hylan-Cho, na qual a Senior Engineering Manager para Swift Intelligence Frameworks descreve os Dynamic Profiles como “kind of a foundational technology for sort of higher order things like skills, which we’re also releasing as a package, so that people can use those or build their own abstractions like skills.” 

  4. Documentação para Desenvolvedores da Apple: LanguageModelSession.Response.usage (iOS 27.0 beta). “Information about how many tokens were used by this response.” Uma propriedade em LanguageModelSession.Response, nova no iOS 27 (beta). 

  5. Anthropic, ClaudeForFoundationModels. Apache-2.0, descrito como “Claude support for Apple Foundation Models.” O pacote coloca o Claude em conformidade com o protocolo de modelo de linguagem do framework Foundation Models, para que uma LanguageModelSession o conduza da mesma forma que conduz o modelo no dispositivo da Apple. Um backend de terceiros ao vivo implementando o protocolo de modelo de linguagem do framework. 

  6. Apple, WWDC 2026 lab 8121, Coding Intelligence, Machine Learning & AI Group Lab. Parafraseado a partir de uma gravação transcrita localmente do WWDC 2026 Coding Intelligence, Machine Learning & AI Group Lab; a Apple não publicou legendas para os labs, então a redação aqui é uma paráfrase, não uma citação. Fonte para a descrição do painel sobre o response.usage reportando tokens de entrada e saída, tokens cacheados e a divisão entre raciocínio e resposta para modelos de raciocínio; a caracterização da contagem de tokens como um recurso muito solicitado; a observação de que os símbolos de contagem de tokens e de tamanho de contexto chegaram no iOS 26.4; a janela compartilhada de entrada-mais-saída inalterada de 4096 tokens do modelo no dispositivo (cerca de 4.000 tokens de entrada deixando por volta de 96 para a resposta) e o orçamento compartilhado de 32K no Private Cloud Compute; o modificador de sumarização colapsando o histórico mais antigo em uma única entrada após um limite definido pelo desenvolvedor e funcionando com qualquer backend; e o princípio de design de que qualquer prompt embutido no pacote deve ser sobrescrevível pelo desenvolvedor. 

Artigos relacionados

Foundation Models no Private Cloud Compute

O iOS 27 adiciona um Foundation Model em escala de servidor no Private Cloud Compute com privacidade no dispositivo, alé…

19 min de leitura

IA no dispositivo em todo o iOS 27: Spotlight e mídia

O iOS 27 costura o modelo no dispositivo por todo o sistema: o SpotlightSearchTool ancora o Core Spotlight no LLM, e o A…

16 min de leitura

Skills de agentes de IA precisam de auditorias comportamentais, não de taxas de aprovação

Skills de agentes de IA podem mudar comportamentos enquanto as taxas de aprovação ficam estáveis. Auditorias comportamen…

13 min de leitura